Introduction
Préambule
Le projet Alonso est une base de données qui a été créée dans le but de pouvoir extraire et traiter des données issues de l'AS400 de Niort. La quantité de données étant assez importante, il a été décidé de créer cette base tampon qui évitera de requêter en direct l'AS400 de PROD et ainsi éviter d'occasionner des ralentissements.
Technologie :
- Base de données : SQL SERVER
- Script : PYTHON
Synchronisation
La base de données est synchronisée via des tâches planifiées. Il en existe pour chaque projet :
- CARL : Quotidiennement
- Modula :
- Article : Toutes les 6h
- Picking : Toutes les 2 min
- Contrôle Facture : Quotidiennement
Algorithme général
Lorsque le script s'exécute, il vide de prime abord les tables concernées par le type d'exécution (cad par projet). Il va ensuite exécuter des requêtes coté AS400 pour insérer chaque ligne dans la base SQL Server.
⚡ Le modèle de base étant relationnel, le script doit supprimer les clés avant de pouvoir s'exécuter. Cela peut occasionner des soucis lorsque le script part en erreur car il n'aura pas le temps d'accéder à la section de recréation des clés. Un fix a été mis en place mais il faudra garder un œil attentif.
Accès
Pour accéder à l'environnement, il faut se connecter à la machine N0SRVAP04 via TeamViewer. Les sources se situent dans le répertoire C:/Script.
CARL
Le projet CARL concerne l'extraction de données clients et contacts. Lors de l'extraction, un script PHP va s'exécuter pour créer les fichiers. Dans un second temps, les fichiers sont déposés sur un dépôt FTP. Ces fichiers sont traités de façon quotidienne par CARL.
MODULA
Les modulas sont des grandes armoires avec tiroirs électriques. Ils permettent de scanner des codes barres de produits pour descendre automatiquement le tiroir correspondant. Pour ce projet, il a été demandé de pouvoir extraire les données d'articles afin de pouvoir les déclarer dans les MODULA mais aussi les données de picking (cad les retraits de marchandise lors d'une vente). Les modula ont une gestion du stock.
Il y a deux extractions distinctes pour ce projet. Une extraction qui concerne les données articles. Une autre pour les données de picking. Ces données de picking sont régulièrement mises à jour afin de tenir informé les modulas des mouvements de stock.