Skip to main content

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.

Attention

⚡ 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.