Principe Chaine Numérique
Envoi d’une commande à Diapason depuis le configurateur Web Elcia
Suite à la saisie d’une commande sur le configurateur web ELCIA, un fichier d’interface de type XML sera envoyé au fournisseur afin de créer sous son Diapason la commande correspondante.
Le scrutateur EIA Diapason identifiera que le fichier Xml concerne une commande d’origine Configurateur Web Elcia (présence de la balise <orderReference> sous la balise <order>).
➡️ Le type de Réception à paramétrer dans l’adb est la référence ICWRecInt : Réception Commande Configurateur Web Elcia
Gestion des Erreurs d’intégration
L’interface de traitement du fichier xml vérifie dans un premier temps que la commande en cours de traitement n’a pas déjà été intégrée dans Diapason.
Elle vérifie de plus que le client demandeur est bien référencé dans la base Diapason.
Lorsqu’une erreur Diapason est rencontrée lors de la création de l’entête ou des lignes, la commande en cours de création est automatiquement supprimée et le fichier xml déplacé vers un répertoire paramétrable (voir paragraphe Paramètres Interface Configurateur Web P7).
La liste de erreurs d’intégration de commande est consultable via la LPA IP7ErrInt : Erreur Intégration Cfg Web P7
![](../__attachments/89595214/att_1_for_360284269.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Cette liste permet de consulter et gérer les différents traitements tombés en erreur. L’action traitée permet de flaquer le fait que l’erreur a été traitée. L’action suppression permet de faire disparaitre l’enregistrement de la liste.
Remarque : lorsqu’une erreur liée au déroulement du configurateur Diapason est rencontrée, le configurateur est automatiquement relancé en mode warning afin de pouvoir intégrer la ligne, celle-ci sera automatiquement enregistrée en mode sauvegarde.
Lorsque que la création de la commande s’est effectuée correctement la LPA IP7LieCde : Lien Cde Diap / Cfg Web P7, permet de consulter toutes les commandes ayant été intégrées correctement.
![](../__attachments/89595214/att_2_for_360284269.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Création Entête de Commande
L’outil d’interface Cfg Web Elcia / Diapason scrute automatiquement le fichier xml réceptionné et met à disposition les différentes informations d’entête de commande contenues dans le fichier, sous forme de variable BDE.xxx.
Un arbre de condition lancé automatiquement pour la création de l’entête de commande permettra de réaliser une correspondance entre les SDE et VDE attendue pour la création de l’entête de commande Diapason et les BDE issues du xml. Certaines SDE ou VDE indispensable à la création de la commande n’auront pas de correspondance en tant que BDE, celles-ci devront être alimentées sous forme de constante.
Remarque : Pour des raisons telle que l’organisation de production, une commande issue du configurateur web Elcia peut être éclatée en plusieurs commandes Diapason.
Pour se faire une phase dite de rupture, réalisée en début de traitement permet de parcourir toutes les lignes de commandes afin que l’utilisateur puisse déposer sur chacune de ces lignes, 5 clés de tri qui seront utilisées comme clé de rupture.
Un arbre de condition paramétrable dans l’outil décrit ci-dessous (niveau d’init RUPCDE), permet d’initialiser pour chacune des lignes de la commande 5 variables de type RUP : Cle1, Cle2, Cle3, Cle4 et Cle5.
Les différentes lignes du fichier xml sont ensuite triées selon Cle1, Cle2, Cle3, Cle4 et Cle5. A chaque changement de valeur de clé, une nouvelle entête de commande Diapason est créée.
Ce même arbre de conditions permet aussi d’affecter chaque produit du fichier XML à une entête de commande déjà existante. L’affectation doit s’effectuer en alimentant la variable CLECDE de type GRP. Pour chacune des lignes affectées via cette mécanique, le numéro de ligne de commande sera automatiquement déterminé en fonction du dernier numéro de ligne de la commande et en l’incrémentant de + 1. Cette mécanique ne marche que pour les fichiers issus de P7. La VBP.IScCompCde exploitable dans les requetés GCL et GCC permet de savoir si elle est à Yes que la ligne en cours de création un complément sur une commande déjà existante.
Le TDY IP7IniCdeT : Initialisation Cde / BAL permet de définir l’arbre de condition à exécuter pour la création l’entête de commande et celui pour les lignes.
![](../__attachments/89595214/att_3_for_360284269.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Reference Message : référence du message XML (Configurateur Web ou Prodevis p7)
Niveau Initialisation : Entête de commande, Ligne de commande ou Rupture.
Nature : nature liée à la condition. Seul le premier élément valide d’un même nature sera traité.
N° ordre : Numéro d’ordre de classement des conditions au sein d’une même nature.
Condition : Condition de validité
Liste des Maj : Arbre de condition à exécuter si la condition est valide.
Liste des Maj si Condition fausse : Arbre de condition à exécuter si la condition est non valide.
Remarque : les arbres de conditions paramétrés dans l’outil ci-dessus sont obligatoirement des arbres dont le cadre d’utilisation est EIACde afin de pouvoir disposer des types de variables SDL, VDL, SDE, VDE, BDL, BDE et BDC.
Exemple d’arbre de condition d’initialisation d’entête de commande : les SDE et VDE sont initialisées à partir des BDE issues du fichier Xml.
![](../__attachments/89595214/att_4_for_360284269.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
![](../__attachments/89595214/att_8_for_360284269.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Les BDE disponibles sont accessibles depuis les listes d’aide des outils de paramétrage.
Création Lignes de Commande
Chacune des lignes rattachées à l’entête de commande (après phase de rupture) devra être initialisée par un arbre de condition à l’image de l’entête de commande.
Cet arbre sera lancé automatiquement pour les différentes lignes et permettra de réaliser une correspondance entre les SDL et VDL attendues pour la création de la ligne et les BDL issues du fichier xml.
Le TDY IP7IniCdeT : Initialisation Cde / BAL permet de définir l’arbre de condition à exécuter pour la création des lignes de commande.
![](../__attachments/89595214/att_5_for_360284269.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Pour les lignes de commandes configurées, la référence du scénario devra être initialisée dans la SDL.CdeLigRefArt.
L’alimentation des données du configurateur se fera via un outil de paramétrage appelé modèle de correspondance dont la référence devra être initialisée dans l’arbre de condition des lignes de commande via l’alimentation de la VBP.IP7RefMod.
Modèle de correspondance
Un modèle de correspondance est un outil de paramétrage permettant de décrire la structure de contextes et les valeurs à initialiser sur chacun d’entre eux pour une configuration type.
Il est conseiller de créer autant de modèle de correspondance de que configuration type : OF, OF2, PF1 PF2, PF3….
Le Modèle de correspondance se bâti comme un arbre de condition, chacune des branches correspond à un niveau de contexte. Les différents modèles de correspondances sont accessibles à partir de la LPA IP7ModCor : Définition Modèle Correspondance.
![](../__attachments/89595214/att_6_for_360284269.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Détail d’un modèle
![](../__attachments/89595214/att_9_for_360284269.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Chaque branche du modèle correspondant à la définition d’un contexte du scenario. L’arborescence doit être construit en fonction de la typologie du produit à paramétrer OF, OF2, PF3…
L’existence d’une branche et donc d’un contexte ou QOP peut être conditionnée dynamiquement pendant la génération.
Paramétrage d’une branche
![](../__attachments/89595214/att_10_for_360284269.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Ordre : numéro d’ordre de la branche au sein du niveau
Libellé : Libellé de la branche dans l’arbre
Icone : Icone associée à la branche
Condition d’existence : Condition d’existence de la branche lors de la génération, la condition peut s’appuyer sur les BDE, BDL et BDC disponibles au moment de l’initialisation de la configuration
Modèle de contexte : modèle de contexte devant être utilisé. Lors de l’initialisation du configurateur à partir des données du modèle de correspondance, l’arborescence de contextes du scenario sera initialisée à partir de l’arborescence des branches valides du modèle de correspondances et selon le modèle de contexte de chacune de ces branches.
Lien / Zone Commerciale : la branche du modèle de correspondance doit elle être rattachée par défaut aux données d’une zone commerciale (Allège, Imposte, latéral Droit, latéral gauche, Zone Principale ou VR) décrite dans le fichier xml.
Une même caractéristique, vitrage par exemple peut être définie pour plusieurs zones « commerciale », vitrage 4/12/4 pour l’imposte et 4/16/4 pour la zone principale. Lors de l’initialisation des valeurs du modèle de correspondance l’utilisateur pourra pour chacune des branches, imposer la zone de recherche commerciale défaut ZP par exemple, et pouvoir ainsi utiliser le mot clé BDC.Vitrage sans repréciser la zone commercial liée ou bien s’il ne le fait pas il pourra utiliser la syntaxe BDC.Vitrage[ZP] pour forcer la recherche de la BDC.Vitrage sur la définition de la zone commerciale principale ZP.
Référence Contexte de MAJ : référence du contexte qui sera initialisé dans l’arborescence de contexte sur le scenario. Si cette valeur est vide, la référence du contexte sera déterminée automatiquement à partir de l’arborescence des modèles de contextes et d’un indice de contexte déterminé à partir du nombre de contexte de même modèle déjà créé.
Initialisation des VBA d’un contexte
L’initialisation des VBA d’un contexte devra être effectuée branche par branche, à partir des BDC (variable de configuration issue du fichier xml, voir documentation Elcia).
![](../__attachments/89595214/att_7_for_360284269.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Les différentes initialisations peuvent être effectuées par Maj direct VBA.xxx = BDC.yyy ou à partir de matrice de cadre d’utilisation EIACde.
Le champ Type de règle de Maj présent dans le tableur du couplage ci-dessus permet de définir la portée de la règle d’initialisation :
ModCorr : Règle à appliquer uniquement au modèle de correspondance courant
ModCtxObj : Règle à appliquer au modèle de contexte de l'objet courant
ModCtxSce : Règle à appliquer au modèle de contexte lié au scénario courant