Le datahub : principe, fonctionnement et superviseurs

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. Ce paramétrage est fourni avec des scénarios préconçus

  • 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 : l’application tierce dépose dans le dossier ou par service web les fichiers

  • Supervision et suivi : utilisation des superviseurs dédiés à chaque type de dataset, journaux et fichiers de trace, widgets

 

Superviseur de dataset

Fonctionnalités

Le superviseur DataSet permet de gérer les différents DataSet provenant de l'automate. Il permet notamment : 

  • La visualisation des datasets en erreur

  • La création manuelle de DataSet

  • La modification de DataSet

  • L'appel des différentes actions correspondant au type et à l'état courant

  • La réinjection du DataSet dans l'automate après actions.

  • La visualisation des documents associés.

 

Tous les types de datasets ont un superviseur associé, avec des fonctionnalités communes

 

Le superviseur de dataset permet des actions en selection multiple, comme par exemple la re-injection dans l'automate, la mise en attente, la péremption.

La ré-injection dans l’automate consiste à modifier l'état courant pour repartir en début de scénario, afin de re-passer tous les états précédents et tenter de trouver une nouvelle voie. Par exemple après une modification de dataset pour modifier une donnée, la ré-injection permettra d’aller plus loin dans les étapes.

 

Viewer Pivot

Le viewer de pivot est un programme qui permet de visualiser le fichier pivot correspondant au Dataset.
Il est accessible à partir du superviseur, bouton Pivot
Selon le type de dataset, il affichera les valeurs de toutes les balises présentes dans le fichier pivot

 

Widgets

Plusieurs widgets sont disponibles pour la remontée d’informations directement dans l’interface d’accueil

Les widgets fournis avec la version standard sont les suivants :

  • Dataset en erreur

  • Dataset en attente

  • Etat dataset

  • Factures avec escompte

  • Factures fournisseurs fiables

  • Factures à traiter (utilisateur)

  • Factures à traiter (groupe d'utilisateurs)

  • Factures à traiter (état @ETATREF paramétrable)

  • Contrôles factures en attente

  • Factures bloquées

  • Liste des pièces en attente

  • Liste des prévisionnels de ventes en attente

  • Liste des Import-Export xml en attent

  • Liste des temps collaborateurs en attente