Objectif du DataHub
L’objectif est de pouvoir piloter des flux de données externes déposés dans un point d'entrée unique et dont les étapes d'intégrations font référence à plusieurs domaines fonctionnels de Divalto Infinity.
Dans la version standard, les données intégrables sont par exemple :
Des factures fournisseurs reçues par mail ou déposées, sous forme de fichiers structurés, avec un processus de contrôles de factures,
Des générations d'écritures comptables,
Des prévisions de ventes,
Des temps passés sur affaires industrielles.
Des pièce commerciales demandées par un outil externe
Pour être traités, par le Datahub, l'automate doit être démarré par l'option de menu : Commerce & logistique / Data hub / Automate.
C'est l'automate qui détermine le traitement à réaliser en fonction du type de Dataset qu'il a trouvé. Si le Dataset n'a pas pu être déterminé, il y à création d'un Dataset en "erreur". C'est également l'automate qui attribue un numéro unique au Dataset.
Les différents flux font l'objet d'une supervision accessible par le menu : Commerce & logistique / Data hub / Superviseurs
Principe
On dépose un fichier dit ‘pivot' et des fichiers compagnons (pdf, xml). dans un dossier qui est le point d’entrée dans le datahub.
Le fichier ‘pivot’ contient les méta-données, c'est à dire des données extraites du contenu.
Par exemple pour une facture fournisseur on utilisera un fichier PDF qui sera le scan de la facture, et le pivot contiendra les données extraites de ce scan comme le montant, la date, la taxe.
Par exemple pour une création de commande client on utilisera un fichier XML qui sera la description de la commande à créer avec des données comme le type de pièce, la date, les articles.
Il faut lancer l'automate par le Menu : Commerce & logistique / Data hub / Automate. L’automate est le coeur du fonctionnement du datahub.
L'automate détecte la dépose de fichiers, et traite la lecture. Il est donc indispensable que, lorsqu'il y a plusieurs fichiers (par exemple le pivot et un PDF), le fichier pivot soit écrit sur le disque dur EN DERNIER. Sa présence garantit la bonne écriture préalable des fichiers compagnons (comme le PDF).
L’automate lit le contenu du pivot. Si la structure est lisible, le pivot ainsi que les fichiers compagnons sont déplacés du point d'entrée vers un emplacement dédié, et une entrée dans le datahub est faite : c’est le dataset. Les cas de rejets sont donc à ce stade uniquement des fichiers dont la structure est incorrecte.
Le déposant (=la source des pivots) s'assure d'une règle de nommage sans doublons. Il est possible de placer les fichiers compagnons dans un sous-répertoire du fichier pivot, mais c'est la présence du pivot à la racine du point d'entrée qui le rend 'détectable'.
Une fois le type de dataset déterminé, l’automate va suivre une succession de règles paramétrées à l’avance selon le type de dataset. Ces étapes sont appelée les états de l’automate et correspondent à un numéro ainsi qu’un libellé.
Exemple : état du type de dataset Facture fournisseur
Tous les états sont décrits à l’avance, en association à un traitement métier ou technique qui détermine l'état suivant. Par exemple : l'état “230 Dataset OK” fait appel a un traitement de test présence d’escompte pour déterminer si la facture fournisseur mentionne ou pas la possibilité d’escompte. Le prochain état est donc déterminé par le retour VRAI ou FAUX de l'état courant.
L’automate va donc suivre l’ordre de succession des états selon leur numéros et liens vers le suivant.
Fonctionnement
La mise en oeuvre du datahub passe par plusieurs étapes
Paramétrage général du Datahub :
chemin pour le répertoire scruté en entrée
chemins pour le stockage et la gestion des fichiers PIVOT
chemins pour le stockage et la gestion des fichiers COMPAGNONS
Paramétrage des états de l’automate : les étapes du workflow pour chaque type de dataset
Lancement de l’automate : manuel ou par service, l’automate doit tourner pour traiter les flux
Dépose du fichier structuré pivot au format XML, et ses compagnons PDF ou XML ou texte
Supervision et suivi : utilisation des superviseurs dédiés à chaque type de dataset, journaux et fichiers de trace