Interface Nomenclature issue de Ramasoft
Suite à la création de la ligne de commande commerciale, un évènement de génération nomenclature de type DT est posté par Diapason afin de générer la nomenclature.
Le principe général de l’interface nomenclature Ramasoft est de faire générer de manière automatique, la nomenclature de pointeur Diapason a partir des données XML de définition du produit envoyé par Ramasoft, tout en ayant la possibilité de compléter via des règles spécifiques certains pointeurs.
Paramètre Projet de l’interface Nomenclature
![image-20240430-135543.png](../__attachments/89595182/image-20240430-135543.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
1 - Répertoire Unix génération fichier Nomenclature/ Ramasoft : ce répertoire de type point de montage Samba permet spécifier ou récupérer le fichier XML de définition Nomenclature exporté par Ramasoft. Ce répertoire doit correspondre au répertoire windows d’export des fichiers d’interface lignes de commande ( Export Project to Diapason).
2 - Répertoire Archivage des Nomenclatures intégrées : Répertoire d’archivage des fichiers xml ayant permis de créer la nomenclature. Ce répertoire peut être donné de deux façons :
Racine du répertoire d’archivage à la suite de laquelle sera automatiquement rajouté les répertoires / AAAA/MM/
VBP.XXXX : référence de la VBP dans laquelle est contenu le répertoire d’archivage du fichier xml
3 - Requête REB à exécuter sur IRsCorArt
Voir chapitre ci-dessous “Correspondance Article Ramasoft <-> Code Diapason”.
Nomenclature générique
Un modèle de nomenclature générique Standard est livrée sur votre environnement : IRsEnsemble.
Vous devez dupliquer sous votre propre codification cette nomenclature et les vari articles liés et paramétrer votre vari article de plus haut niveau en tant que vari article de définition commerciale, lié à votre article scénario.
![](../__attachments/89595182/att_7_for_360022264.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
La nomenclature IRsEnsemble est structurée de la façon suivante :
![](../__attachments/89595182/att_9_for_360022264.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
La structure d’échange de la définition technique du produit défini et calculé par Ramasoft se base sur la trame de cette nomenclature.
Diapason va donc dérouler votre nomenclature générique et vérifier pour chacun des liens qu’il déroule si ce lien peut être rattaché a un lien de la nomenclature standard Ramasoft et dans ce cas vérifier si des données relatives à ce lien sont définies dans le fichier XML de définition de la nomenclature Ramasoft.
La correspondance des liens de votre nomenclature avec les liens de la nomenclature standard Ramasoft s’effectue via les données du TDY IRsCorLieT.
Vous devez modifier pour chaque ligne du tableur les données des 4 premières colonnes afin de les adapter aux références des vari articles de votre nomenclature.
Le principe de correspondance de ce tableur est le suivant : chaque ligne de ce tableur doit permettre d’identifier via les 4 premières colonnes, le lien de la nomenclature Diapason, et mettre en correspondance via les champs Composé Ramasoft, Vari Article origine et Composant Ramasoft le lien de la nomenclature standard Ramasoft lié.
![](../__attachments/89595182/att_8_for_360022264.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Le schéma ci-dessous résume comment est effectué cette recherche :
Chaque lien de la nomenclature générique va donc être par défaut dupliqué et initialisé en fonction des données du fichier XML nomenclature Ramasoft.
Lien notions Ramasoft / VBAs Diapason
Correspondance valeurs de variable
Cette structure de paramétrage permet de faire une correspondance entre la valeur d’une VBA issue de Ramasoft et la valeur attendue dans Diapason. Exemple le code couleur issu de Ramasoft pour le blanc est BL alors que cette même couleur est définie avec le code BLC dans l’existant Diapason.
Le TDY de correspondance IRSCorVBAT ( Corresp Val VBA Ramasoft => Diapason ) permet de spécifier cette transcodification avant récupération de ces données dans le moteur DT.
![](../__attachments/89595182/att_5_for_360022264.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Remarque : le mot clé ValRamasoft peut être spécifié dans la colonne Valeur donnée Ramasoft, dans le but de faire une correspondance des valeurs sous forme d’une matrice. Les VBP.IRSrefVBA ( référence variable) et VBP.IRSValVBA ( =valeur de la variable) sont alors alimentées avec les données de la balise du fichier XML et peuvent être utilisées pour faire une correspondance de masse via une matrice de valeur.
![](../__attachments/89595182/att_6_for_360022264.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Variables utiles
Voici un focus sur quelques notions clés disponibles sur les pointeurs de la nomenclature générée.
Variable | Balise fichier XML | Libellé | Origine de l’information / Utilisation |
---|---|---|---|
IRSCsaRMS | LieCarDef/ge-ref-gene | Code article fournisseur Ramasoft | Contient la référence article “fournisseur” Ramasoft. Stockée sur la ligne de prix dans la colonne “Référence”. Cette référence est complétée par les préfixes et suffixes des couleurs/finitions. C’est souvent le cas des profilés. Mais tout ceci dépend des scripts qui disent comment sont effectuées les concaténations. C’est cette référence que le plug-in va rechercher dans la base article pour vérifier s’il s’agit d’un article standard. |
IRSItem | LisCarVar/VBA/IRSItem | Code article Ramasoft | Correspond au champ “Code” ou “Numéro” de Ramasoft. C’est le code article Ramasoft. Comme on le voit dans l’exemple ci-dessus, il peut être associé à plusieurs couleurs donc à plusieurs articles dans Diapason. Il correspond à la notion de “géométrie” dans Diapason. C’est cette référence (avec les couleurs) qui sert à faire la recherche dans la table IRsCorArt. |
IRSOuvTyp | LisCarVar/VBA/IRSOuvTyp | Type Ouverture | Alimentée sur le lien IRSZONE contient la combinaison d’ouvrant (vocabulaire Ramasoft). Egalement alimentée sur le lien IRSVANTAIL où elle contient le type d’ouverture du vantail. Exemple pour un OB2 droite tirant :
|
IRSFormGeo | LisCarVar/VBA/IRSFormGeo | Forme géométrique | Cette information donne la forme de chaque lien principal de la nomenclature (ensemble, châssis, cadre dormant, zone, vantail, remplissage, vitrage/panneau). Utile en particulier sur les cadres et sur les remplissages. |
Modification de l’article du lien issu de Ramasoft avant de le transmettre sur le lien Diapason
Le TDY IRsSpeArtT ( Init Spécificité Corres .Article) permet de modifier certaines VBA issues du lien Ramasoft avant de les injecter sur le lien. Cette phase que l’on pourrait apparenter à la phase Ini avant EXI permet par exemple de récupérer le code composant issu de Ramasoft, de vérifier si il commence par un caractère particulier ( $ ;£ ;#...) signifiant par exemple que ce composant doit être expédier séparément, de supprimer ce caractère afin de retrouver le bon code Composant Diapason et forcer une VBA supplémentaire sur ce lien permettant de cibler que cette article doit être expédié séparément.
Sans cette phase le code article issu de Ramasoft ne trouverait aucune correspondance avec un code Diapason.
![](../__attachments/89595182/att_3_for_360022264.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Correspondance Article Ramasoft <-> Code Diapason
Cette phase de traitement permet de faire une transcodification entre la géométrie (VBA.IRsItem) envoyée par Ramasoft avec ses couleurs intérieure et extérieure et le code article Diapason.
Le TDY IRsCorArtT ( Corresp Defaut Article /Ramasoft ) permet de spécifier cette transcodification :
![image-20240429-143649.png](../__attachments/89595182/image-20240429-143649.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
On passe dans cette table de correspondance uniquement si le code Ramasoft à l’issu de la table IRsSpeArt n’est pas un article Diapason (ou vari-article).
Les couleurs en entrée de la table sont préalablement passées dans l’outil de correspondance du paragraphe précédent.
Cette table bénéficie du même mécanisme que les matrices d’existence “classique”.
Si aucune correspondance n’est trouvée dans la table, Diapason lance la requête REB mentionnée dans le paramètre ci-dessous (Nomenclature/Interface/Ramasoft)
![image-20240429-144230.png](../__attachments/89595182/image-20240429-144230.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Cette REB à pour vocation de créer l’article manquant ainsi que les données liées (LAF,…) à partir du contexte qu’elle reçoit.
La création de l’article doit être placée au niveau de la ligne noire.
![image-20240429-144550.png](../__attachments/89595182/image-20240429-144550.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Il faut ensuite appeller la procédure REB/IRsCorArtC qui viendra ajouter l’article créé à la table IRsCorArt.
L’article créé sera donc placé sur le lien courant de nomenclature.
Au final, si une correspondance article est trouvée, la VBP. IRSLieSsCorArt est alimentée a YES, dans le cas contraire est reste à NO. Cette VBP peut être exploitée dans les règles de paramétrage spécifique EXI, INI, IT pouvant être définies sur le lien.
Récapitulatif phases de traitement
Comme évoqué en introduction, la remonté de la BOM se fait sur un vrai événement DT Diapason. On a une nomenclature générique qui exécute le plug-in de configuration.
Sur chaque lien de la nomenclature on charge les infos issue du fichier xml BOM Ramasoft et on exécute les règles du plug-in classique EXI/INI/IT.
Il est donc possible dans Diapason d’ajouter ou supprimer des liens et de calculer des informations supplémentaires (VBA et IT).
Le schéma ci-dessous montre l’enchainement des différentes phases de traitement :
Vérification correspondance article Ramasoft / Diapason
Objectif
Le tableur “IRSCtlArt” permet de vérifier s’il y a une correspondance entre les codes articles Ramasoft et ceux de Diapason dans le but de fiabiliser l’interface nomenclature.
Il s’agit d’une mécanique indépendante de l’interface nomenclature de manière à détecter les problèmes au plus tôt sans attendre qu’une ligne de commande tombe sur des articles à problème.
Fonctionnement
A l’ouverture le tableur contient une seule ligne.
Il doit être chargé par copier-coller depuis les résultats de la requête SQL sur les tables Ramasoft.
Seule les colonnes ayant un fond blanc sont à alimenter.
![image-20240429-140009.png](../__attachments/89595182/image-20240429-140009.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Une fois chargé, on lance l’action “Lancement contrôle correspondance article (F12)”, pour que Diapason fasse la vérification.
Sur chaque référence Ramasoft, l’action exécute les règles de la TV IRsSpeArt (celles qui portent sur la VBA.IRSCsaRMS) puis fait les contrôles suivants :
longueur maximal
caractères autorisés
doublons
existence parmi les articles ou vari-article Diapason
![image-20240429-135914.png](../__attachments/89595182/image-20240429-135914.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
L’action alimente les colonnes en vert :
Article recherché dans Diap : correspond à la colonne “Référence Ramasoft” sur laquelle on a exécuté les règles de la TV IRsSpeArt. C’est sur ce code là que les contrôles ont lieu.
Résultat contrôle : OK ou PB
Libellé problème : liste des problèmes trouvés sur la ligne courante
Quand le contrôle est terminé, une synthèse est affichée dans un warning.