Scénarios configurateur
Cette fonction permet de définir les scénarios exécutables lors de l'accès à la fonction Configurateur, soit de façon autonome, soit depuis la saisie des devis ou des commandes.
Un scénario permet, à partir de données de base de référence, de créer un nouvel article, ainsi que ses données techniques. Les données de base sont construites à partir des réponses aux questions que le scénario pose à l'utilisateur, à partir de l'utilisation de fenêtres de sélection, d'options / variantes…
Plus simplement, un scénario peut aussi être utilisé pour paramétrer une sélection (avec ou sans options et variantes ) un peu complexe d'articles déjà existants.
Pré-requis
Reportez-vous à la documentation de Mise en oeuvre
Gestion de l'écran
La saisie d'un scénario se décompose en sept phases caractérisées par autant d'onglets.
En-tête
Scénario (champ SCENUM) |
Composer ou sélectionner le numéro du scénario de configuration (maximum 5 caractères et libellé sur 30 caractères). |
champ SCEAXX |
Actif (champ ENAFLG) |
Cet indicateur permet d'activer ou de désactiver le scénario. |
Code accès (champ ACSCOD) |
Ce code d'accès permet de restreindre l'accès aux données par utilisateur ou groupes d'utilisateurs. |
Site exclusif (champ FCY) |
Site d'utilisation du scénario. Par défaut, il s'agit du site associé à l'utilisateur dans son profil fonction. |
Onglet Paramètres
Paramètres
Création composé (champ ITMFLG) |
Cocher si le scénario autorise la création de
nouveaux composés. |
Création composants (champ CMPFLG) |
Cocher si le scénario autorise la création de
nomenclatures. |
Création gammes (champ ROUFLG) |
Cocher si le scénario autorise la gréation de
gammes opératoires. |
Création multisite (champ FCYFLG) |
Cocher pour que les enregistrements article - site soient crées à l'identique dans chaque site de stock. |
Recherche historique (champ HISFLG) |
Cocher pour que le système affiche pour information les produits déjà fabriqués ou assemblés dont les critères de recherche définis au niveau des symboles sont identiques. |
Affichage multiniveaux (champ BOMDSY) |
Cocher pour faire apparaître tous les composants multi-niveaux dans les onglets de validation. |
Validation rapide (champ VALDSY) |
Cocher pour remplacer l'affichage des écrans récapitulatifs de la configuration par un simple message. |
Mode saisie (champ WINAUT) |
Cocher pour obtenir en saisie de scénario : - Une ouverture automatique des fenêtres de choix de liste de valeurs (questions / formes et modèles). - Une ouverture de fenêtre suplémentaire pour les questions contrôlées par bornes (affichages des bornes de valeurs). |
Nomenclature
Typ.alt. reférence (champ ALTTYPREF) |
Le type d'alternative sert à distinguer les nomenclatures à usage commercial des nomenclatures utilisées par la gestion de production et de celles utilisées pour la sous-traitance. |
Référence (champ BOMALTREF) |
Plusieurs nomenclatures peuvent être définies pour une même référence article. Les alternatives peuvent servir à gérer des structures d'articles qui varient selon le contexte d'utilisation :
Ce champ peut être laissé vide (valeur = 0) pour saisir les composants manuellement. Dans ce cas, seul le composé est chargé. |
Création (champ BOMALT) |
Gamme
Référence (champ ROUALTREF) |
Plusieurs gammes peuvent être définies pour un même article. Chaque alternative de gamme peut être affectée à des fonctionnalités de gestion précises. Cela inclut la restriction de la gamme à un site donné et à des domaines fonctionnels particuliers (environnement de fabrication, tarification, planification de capacité). |
Création (champ ROUALT) |
Valorisation
Mode valorisation (champ CSTVAL) |
Choisir le mode de valorisation du scénario. |
champ CSTCOD |
Choisir le mode de valorisation du scénario. |
Bloc numéro 5
Sous scénarios (champ SCEFLG) |
Onglet Début /Sel. composés
Ce tableau permet de paramétrer l'ensemble des questions qui seront posées à l'utilisateur en cours d'exécution du scénario. Le paramétrage de ces questions se fait par l'intermédiaire de symboles de type questions, de fenêtres de sélections articles, de formes et modèles ou de procédures cataloguées.
Chaque question (ou groupe de questions) peut être conditionnée. La réponse à une question peut donner lieu à un ou plusieurs calcul(s) de variables.
Nombre de questions dans un scénario
QSTNUM est limité à 99 par une contrainte superviseur. Il s'agit de la somme des questions posées dans le scénario et les sous-scénarios. L'utilisation de formes et modèles dépend d'une question plutôt que de ces questions en particulier. Dans l'écran CFG0, le nombre maximum de questions est limité à 150.
Remarques sur l'activation d'une trace via la variable TRAFLG
Afin d'aider à la mise au point ou au debug, il est possible d'activer une trace de suivi.
Cette trace indique notamment :
Les messages (avertissement ou bloquant) émis lors du déroulement du scénario. En ajoutant temporairement des messages, il est donc possible de cerner un problème.
Les étapes principales effectuées lors des phases de validation et de génération.
Dans le paramétrage d'un scénario, il est donc possible d'activer ce suivi en incorporant une ligne affectant la valeur 1 au symbole TRAFLG.
NB : Le symbole TRAFLG non déclaré ou avec la valeur 0 sont équivalents et indiquent qu'il n'y a pas de suivi explicite.
En cas d'erreur grave (accès aux fichiers, incohérence...), le configurateur bascule automatiquement en mode suivi pour permettre d'avoir les premiers éléments d'analyse de l'anomalie.
Remarques sur l'affichage d'un montant dynamique
Il est possible d'afficher dynamiquement un montant en cours de saisie de scénario. Pour cela, il existe une variable système DYNAMT dont la valeur doit être alimentée par le scénario ou via les différents points d'entrée. L'intitulé de cette variable peut être modifié via la gestion des symboles.
La devise affichée pour l'affichage de ce montant est la devise contenue dans la variable S_CUR.
Voir détail dans chapitre 'saisie des lignes de scénario'.
Tableau
Actif (champ SYMDIS) |
Opération (champ SYMTYP) |
Symbole (champ SYMNUM) |
Intitulé (champ SYMDES) |
Indice (champ SYMIND) |
Paramètre (champ UPDCOD) |
Condition (champ CNDFOR) |
Expression (champ FORFOR) |
Abaque (champ ABQNUM) |
Abscisse abaque (champ ABQVAL) |
Ordonnée abaque (champ ABQVALY) |
Commentaire (champ SCETXT) |
Onglet Créat.composé
Toute création de composé doit se faire à partir d'un composé de référence.
Il convient donc de spécifier dans cet onglet, le composé de référence, mais aussi le mode de recherche d'équivalences.
Ensuite, il suffit de compléter le tableau de définition du composé, en y redéfinissant les champs qui doivent être différents de l'article de référence (les champs des tables article-site, article-ventes, entête nomenclature…peuvent être également redéfinis).
Dans le cas où l'on doit créer un enregistrement (lorsque l'opération saisie est de type article-client, article-coût, entête nomenclature, etc.) sans s'appuyer sur un enregistrement de référence, l'utilisation des Valeurs par défaut permet de ne pas avoir à redéfinir toutes les zones de la table en question.
Gestion d'articles génériques : En cas de sélection d'un composé existant (pas de création de composé nouveau), il est possible d'intervenir sur les désignations 1, 2 ou 3, afin que le composé sélectionné se comporte comme un article générique. A cet effet, il existe 3 variables systèmes (GENDES1, GENDES2, GENDES3), de la longueur des désignations article, qui peuvent être chargées par le paramétrage du scénario. Ces variables permette la mise à jour à jour des désignations article ITMDES1, ITMDES2, ITMDES3.
Voir détail dans chapitre 'saisie des lignes de scénario'.
Remarques sur l'affectation d'un compteur dans un scénario : cas des codes articles créés par le configurateur.Différentes options sont possibles pour créer le nouveau code d'un article :
Codification à base de ####
Exemple sur un composé :
Article Maître | ITMREF | 'CAM_####' |
Le système alloue dans ce cas une numérotation automatique en recherchant le dernier article de même racine dans la base.
Dans l'exemple ci-dessus, la racine est 'CAM_' et si le dernier article a pour code 'CAM_0027', alors le système allouera le code 'CAM_0028' au nouvel article.
Cette option est adaptée à une utilisation occasionnelle car elle peut engendrer des attentes entre utilisateurs travaillant sur les mêmes préfixes en validation ou génération de configuration.
Codification utilisant le numéro de pièce configurateur
Exemple sur un composé :
Article Maître | ITMREF | 'CAM_'+S_CPTCFG |
Dans ce cas, le code article inclut le numéro de pièce (ou une partie) géré par un compteur groupé.
Deux utilisateurs travaillant alors sur leurs données ne sont pas contraints par des temps d'attente parfois longs.
Codification utilisant compteur défini sur la catégorie d'article
Pour activer ce mode, il faut définir un compteur sur l'article et indiquer un code vide sur l'article.
Exemple sur un composé :
Article Maître | ITMREF | '' |
Dans ce cas, le code article est calculé par le compteur de la catégorie.
En utilisation occasionnelle, le type de séquence du compteur n'a pas trop d'importance. Par contre, il doit être défini en type de séquence 'groupé' si l'utilisation est plus intensive pour éviter des attentes.
Codification utilisant un symbole 'variable' affecté à un compteur
Pour activer ce mode, un symbole configurateur de type variable est affecté à un compteur X3.
le code article fait référence à cette variable.
Article Maître | ITMREF | S_CPT1 |
Dans ce cas, le code article est calculé par le compteur indiqué sur le symbole.
Cette variable sera évaluée une seule fois au moment de la validation de la configuration.
Si l'on désire plusieurs valeurs du compteur, il suffit d'utiliser plusieurs symboles utilisant le même compteur X3.
En utilisation occasionnelle, le type de séquence du compteur n'a pas trop d'importance. Par contre, il doit être défini en type de séquence 'groupé' si l'utilisation est plus intensive pour éviter des attentes.
Bloc numéro 1
Composé de référence (champ PARITM) |
Composer ou sélectionner le numéro d'article
"composé" qui servira de référence en création d'un nouveau composé
par le configurateur. |
Ligne de produit (champ CFGLIN) |
champ CFGLINAXX |
Rech. équivalence (champ SEAPARITM) |
Choisir le mode de recherche que doit effectuer le configurateur avant de créer un nouvel article (composé ou composant).
|
Actif (champ SYMDIS) |
Cocher pour désactiver la ligne (suppression logique) |
Opération (champ SYMTYP) |
Choisir le type d'action. |
Symbole (champ SYMNUM) |
Selon le choix précédent composer le symbole ou
sélectionner. - Le nom de la
question si action sur "question"
- Le nom de la variable si action sur "variable" - Le nom du champ si action sur une table - etc |
Intitulé (champ SYMDES) |
Indice (champ SYMIND) |
Le champ de table sélectionné est dimensionné
composer son indice (à partir de 1). |
Paramètre (champ UPDCOD) |
L'action sélectionnée nécessite un paramètre
supplémentaire : Les choix possibles sont contextuels et
disponibles dans la combo box. |
Condition (champ CNDFOR) |
Saisir la condition qui doit être satisfaite
pour que cette action soit exécutée. |
Expression (champ FORFOR) |
Saisir, sélectionner ou composer avec l'editeur
de formule une expression de calcul en format Adonix. |
Abaque (champ ABQNUM) |
Composer ou sélectionner un abaque. Cet abaque doit avoir un type de résultat (alphanumérique, numérique ou date) identique au type de la variable ou du champ de table sur lequel porte l'action. La saisie de ce code est obligatoire si aucune expression de calcul n'a été saisie. |
Abscisse abaque (champ ABQVAL) |
Composer ou sélectionner la variable du
configurateur qui servira à la recherche dans l'abaque défini
précédemment. |
Ordonnée abaque (champ ABQVALY) |
Commentaire (champ SCETXT) |
Onglet Sél. composants
Si des composants doivent être sélectionnés à partir de 'sélections articles' ou 'options / variantes', il convient d'indiquer dans le tableau le code de la fenêtre de sélection.
Des questions préalables ainsi que des positionnements de variables nécessaires aux sélections peuvent être définis.
Voir détail dans chapitre 'saisie des lignes de scénario'.
Tableau
Actif (champ SYMDIS) |
Cocher pour désactiver la ligne (suppression logique) |
Opération (champ SYMTYP) |
Choisir le type d'action. |
Symbole (champ SYMNUM) |
Selon le choix précédent composer le symbole ou
sélectionner. - Le nom de la
question si action sur "question"
- Le nom de la variable si action sur "variable" - Le nom du champ si action sur une table - etc |
Intitulé (champ SYMDES) |
Indice (champ SYMIND) |
Le champ de table sélectionné est dimensionné
composer son indice (à partir de 1). |
Paramètre (champ UPDCOD) |
L'action sélectionnée nécessite un paramètre
supplémentaire : Les choix possibles sont contextuels et
disponibles dans la combo box. |
Condition (champ CNDFOR) |
Saisir la condition qui doit être satisfaite
pour que cette action soit exécutée. |
Expression (champ FORFOR) |
Saisir, sélectionner ou composer avec l'editeur
de formule une expression de calcul en format Adonix. |
Abaque (champ ABQNUM) |
Composer ou sélectionner un abaque. Cet abaque doit avoir un type de résultat (alphanumérique, numérique ou date) identique au type de la variable ou du champ de table sur lequel porte l'action. La saisie de ce code est obligatoire si aucune expression de calcul n'a été saisie. |
Abscisse abaque (champ ABQVAL) |
Composer ou sélectionner la variable du
configurateur qui servira à la recherche dans l'abaque défini
précédemment. |
Ordonnée abaque (champ ABQVALY) |
Commentaire (champ SCETXT) |
Onglet Créat. composants
Les sélections de composants s'ajoutent éventuellement à la liste des composants de la nomenclature de référence utilisée (action disponible par bouton droit sur une ligne de composant). De même, d'autres composants peuvent être saisis dans ce tableau.
Ces liens peuvent être adaptés ou leur présence conditionnée dans cet onglet.
Composition du tableau :
numéro de séquence nomenclature,
composant de référence,
mode de recherche d'équivalences,
quantité du lien ou zéro (si objet d'un calcul),
condition de création de ce lien.
Tableau
No séq (champ SCENUMSEQ) |
Composer ne numéro de séquence nomenclature. |
Composant (champ ITMREF) |
Utilisez ce champ pour définir le code du composant. Si le composant existe dans la nomenclature, vous devez vous assurer que le numéro de compteur du composant est unique. |
Rech. équivalence (champ SEAITMREF) |
Choisir le mode de recherche que doit effectuer le configurateur avant de créer un nouvel article (composé ou composant).
|
US (champ STU) |
Quantité lien (champ LIKQTY) |
La quantité du lien donne le nombre de
composants nécessaire pour la quantité de base du composé. |
Code quantité lien (champ LIKQTYCOD) |
Condition (champ CNDFORLIN) |
Saisir la condition qui doit être satisfaite
pour que ce lien de nomenclature soit crée. |
Sous scénario (champ SUBSCENUM) |
Catégorie (champ TCLCOD) |
Intitulé (champ TCLAXX) |
Ligne de produit (champ CFGLIN) |
Intitulé (champ CFGLINAXX) |
Champs composant |
Tous les champs d'une matière peuvent être adaptés ou recalculés : ces modifications sont réalisables par l'action Champs Composant disponible à la ligne du composant. Il est possible de modifier le composant de référence à utiliser. Les composants de référence pouvant être multiples (plusieurs séquences de nomenclature), il convient de créer des variables utilisateur particulières, associées à chaque numéro de séquence, puis de les charger avant la phase de création des composants avec les codes articles souhaités. Les variables à créer doivent être codifiées de la façon suivante :
|
Données config. |
Cette action permet d'accéder en consultation au détail de la ligne de produit associée au composant. |
Données gestion stock |
Cette action permet d'accéder en consultation aux caractéristiques de stock du composant (données de l'article, données de l'article-site, caractéristiques de réapprovisionnement, situation du stock). |
Copie nomenclature |
Avant la saisie du tableau des composants, on a la possibilité de copier une nomenclature. Il suffit pour ce faire, de renseigner un article lié à l'alternative de référence spécifiée dans l'onglet Paramètres, puis de cliquer sur 'Copie nomenclature'. La liste des composants de la nomenclature de référence est alors préchargée. Remarque : La nomenclature de référence doit exister dans le fichier BOM. |
Onglet Créat. opérations
La saisie d'une gamme de référence permet par défaut de proposer l'ensemble des opérations de cette gamme (par bouton droit à la ligne).
Chaque opération peut librement être adaptée. De même, la présence d'une opération dans la gamme de l'article final peut être conditionnée par les réponses aux questions posées à l'utilisateur.
Il est possible, de la même façon, d'intervenir sur les données de jalonnement des opérations de la gamme (table ROOSCD). Si aucun paramétrage particulier n'est prévu, alors le système reprend les codes jalonnement définis sur les opérations de la gamme de référence, puis positionne en code jalonnement successeur les opérations non présentes dans la gamme de référence.
Le tableau peut être complété en saisissant manuellement les numéros d'opération. Dans ce cas, l'opération mentionnée doit s'appuyer sur une opération standard.
Il est possible de saisir les principaux temps d'opération dans le tableau, voire de les calculer à partir de l'action 'Champs opération' disponible par bouton droit.
Voir détail dans chapitre 'saisie des lignes de scénario'.
Bloc numéro 1
Gamme de référence (champ ROUREF) |
Composer le numéro de gamme de référence. |
champ ROUDES |
Opération (champ OPENUM) |
Ce champ affiche le numéro de séquence de l’opération. Chaque opération de gamme, permettant de fabriquer un article, est associée à un numéro d’opération. Chaque numéro d’opération correspond à une tâche réalisée pour une ressource et pour un temps donnés. |
Opé. std (champ STDOPENUM) |
L'opération standard est une opération 'modèle' servant à créer ou modifier les opérations de gamme. Récupération des données de l’opération standard :
Lorsqu'une opération standard est modifiée, elle n'est pas répercutée dans les opérations associées. |
Désignation opé (champ ROODES) |
Poste charge ppal (champ WST) |
Type tps opératoire (champ ROOTIMCOD) |
Unité de gestion (champ TIMCOD) |
Tps préparation (champ PRPTIM) |
Saisir un temps s'il est fixe (indépendant de la
quantité lancée). |
Temps réglage (champ SETTIM) |
Tps opératoire (champ OPETIM) |
Cadence (champ CAD) |
Saisir une cadence si elle est fixe
(indépendante de la quantité lancée). |
Condition (champ CNDFORLIN) |
Saisir la condition qui doit être satisfaite
pour que cette opération de gamme soit crée. |
Champs opération |
Tous les champs d'une opération peuvent être adaptés ou recalculés à partir de l'action Champs opération disponible par bouton droit sur la ligne de l'opération. Par exemple, on peut y recalculer les temps d'une opération en y spécifiant le mode de calcul. |
Onglet Contrôles finaux
Cet onglet permet de faire des contrôles finaux sur les articles, nomenclature et gamme qui ont été créés. Ces contrôles finaux se matérialisent par des messages bloquants ou non en fin de génération des données (ex : avertissement par message bloquant d'une incompatibilité entre deux composants).
Calculs spéciaux des coûts (fonction avancée)
Si on a choisi de calculer les coûts automatiquement, en fin de génération des données :
Pour chaque composant de la nomenclature, seront exécutées les actions 'Coût matière' : ces actions devront charger le coût unitaire dans la variable système 'CST'. Les tables en ligne sont 'ITMMASTER' Article maître, 'BOM' Entête nomenclature et 'BOD' Détail nomenclature du lien concerné.
Pour chaque opération de la gamme seront exécutées les actions 'Coût machine' 'Coût main d'œuvre' et 'Coût sous-traitance'. Ces actions devront charger le coût unitaire dans la variable système 'CST'. Les tables en ligne sont 'ROUTING', 'ROUOPE', 'WORKSTATIO' et 'WORKCOST' de l'opération concernée.
Les coûts totaux 'Matière', 'Machine' 'Main d'œuvre' et 'Sous-traitance' et 'Coût total' seront calculés par le système et mémorisés dans les variables système 'CSTMAT', 'CSTMAC', 'CSTLAB', 'CSTSCO' et 'CSTTOT'.
Voir détail dans chapitre 'saisie des lignes de scénario'.
Tableau
Actif (champ SYMDIS) |
Cocher pour désactiver la ligne (suppression logique) |
Opération (champ SYMTYP) |
Choisir le type d'action. |
Symbole (champ SYMNUM) |
Selon le choix précédent composer le symbole ou
sélectionner. - Le nom de la
question si action sur "question"
- Le nom de la variable si action sur "variable" - Le nom du champ si action sur une table - etc |
Intitulé (champ SYMDES) |
Indice (champ SYMIND) |
Le champ de table sélectionné est dimensionné
composer son indice (à partir de 1). |
Paramètre (champ UPDCOD) |
L'action sélectionnée nécessite un paramètre
supplémentaire : Les choix possibles sont contextuels et
disponibles dans la combo box. |
Condition (champ CNDFOR) |
Saisir la condition qui doit être satisfaite
pour que cette action soit exécutée. |
Expression (champ FORFOR) |
Saisir, sélectionner ou composer avec l'editeur
de formule une expression de calcul en format Adonix. |
Abaque (champ ABQNUM) |
Composer ou sélectionner un abaque. Cet abaque doit avoir un type de résultat (alphanumérique, numérique ou date) identique au type de la variable ou du champ de table sur lequel porte l'action. La saisie de ce code est obligatoire si aucune expression de calcul n'a été saisie. |
Abscisse abaque (champ ABQVAL) |
Composer ou sélectionner la variable du
configurateur qui servira à la recherche dans l'abaque défini
précédemment. |
Ordonnée abaque (champ ABQVALY) |
Commentaire (champ SCETXT) |
Saisie des lignes de scénario
Cette saisie est identique pour les procédures et les lignes de scénario (toutes phases).
Remarques de saisieDe manière générale, à l'intérieur d'un même tableau de lignes de scénario, il est possible de copier / couper / coller une ligne ou un groupe de lignes de paramétrage par bouton sur une ligne
En création d'une nouvelle ligne ou insertion, il est possible par bouton droit de copier la ligne précédente.
Dans la colonne Condition, par bouton droit, il est possible de copier la condition de la ligne précédente, ou de paramétrer automatiquement une condition inverse à la ligne précédente, sans ressaisie. Dans la colonne Expression, par bouton droit, il est possible de copier automatiquement l'expression renseignée sur la ligne précédente.
Sur les colonnes Symbole, par bouton droit, on peut accéder au bouton , qui donne alors les caractéristiques du symbole saisi.
1. Poser une question
Exemple 1 : Poser la question COULEUR
Exemple 2 : Poser la question DIAMETRE si la réponse à la question FORME = 'R' (FORME pourrait également être une variable calculée par le scénario)
| Exemple 1 : | Exemple 2 : |
Action | Question | Question |
Symbole | COLOUR | DIAMETER |
Condition |
| S_FORM = 'R' |
Expression |
|
|
Remarque. :
Avec le paramétrage 'fonctions avancées', si une expression est saisie : la question est initialisée avec l'expression avant saisie.
2. Calculer une variable
Exemple 1 : Calculer la variable SURFACE avec une expression (LENGTH longueur et WIDTH largeur = Questions ou variables )
Exemple 2 : Calculer la variable SPEED (vitesse) avec l'abaque VITBIS en fonction de la valeur du symbole LARBIS si le booléen BISEAU est 'vrai' (case cochée ou valeur = 1)
| Exemple 1 : | Exemple 2 : |
Action | Variable | Variable |
Symbole | SURFACE | SPEED |
Condition |
| S_BISEAU |
Expression | S_LONG*S_LARG |
|
Abaque |
| VITBIS |
Index |
| LARBIS |
3. Sélection articles
Exemple 1 : Ouvrir la fenêtre de choix d'accessoires 'ACC' si la variable ACCESS est vraie et autoriser la sélection de 1 à n lignes.
Exemple 2 : Ouvrir la fenêtre de choix d'accessoires 'ACC' toujours pour visualisation seulement.
| Exemple 1 : | Exemple 2 : |
Action | Sélection | Sélection |
Symbole | ACC | ACC |
Paramètre | Sélec. 1 à n lignes | Pas de sélection |
Condition | S_ACCESS |
|
4. Sélection d'options variantes
Exemple : Ouvrir la fenêtre de choix d'options / variantes 'OPT' si la variable OPTIONS est vraie et autoriser la sélection de 1 à n lignes.
5. Etablir un lien avec une table X3 (fonction avancée)
Exemple : Lire l'enregistrement de la table des unités (TABUNIT) correspondant à l'unité contenue dans la variable UOM si cette variable n'est pas vide.
| Exemple |
Action | Lien table |
Symbole | TABUNIT |
Condition | S_UOM <> '' |
Expression | [F:LNK]UOM = S_UOM |
Remarques :
L'enregistrement de la table est disponible sous l'abréviation [LNK].
L'établissement d'un lien rend inaccessible le lien précédent (sauvegarder les données nécessaires).
Après un lien table la variable système S_LNKOK est en statut 'vrai' (= 1) si le lien a été trouvé et en statut 'faux' (=0) si le lien n'a pas été trouvé.
6. Exécution d'une procédure
Exemple : Exécuter la procédure 'RAZ' si la variable INIT est vraie
| Exemple |
|
Action | Procédure |
|
Symbole | RTZ |
|
Condition | S_INIT |
|
Remarque :
Toutes les lignes de la procédure sont conditionnées par la condition exprimée à ce niveau (ici S_INIT).
De plus, chaque ligne de la procédure est conditionnée par sa propre condition.
7. Ajout d'un message
Exemple : Afficher un message bloquant si la variable S_SURFACE contient une valeur > 1.8
| Exemple |
Action | Message |
Paramètre | Blocage |
Condition | S_SURFACE > 1.8 |
Expression | 'La surface calculée : +num$(S_SURFACE)-'n'est pas autorisée' |
Remarques :
Le caractère '+' permet de concaténer (juxtaposer) des chaînes de caractères.
Le caractère '-' permet de concaténer (juxtaposer) des chaînes de caractères en insérant un espace supplémentaire.
La fonction 'num$()' permet de mettre un champ numérique (question, variable ou champ de table) sous forme d'une chaîne de caractères.
8. Création d'un point d'entrée (fonction avancée)
Après avoir au préalable associé un point d'entrée au traitement CFGLIBB, il est possible n'importe où dans le scénario de faire appel a un ou plusieurs point(s) d'entrée(s).
Exemple : Créer un point d'entrée 'POINT_1' si la variable SURFACE est nulle
| Exemple |
|
Action | Point d’entrée |
|
Symbole | GPOINT (généré) |
|
Condition | S_SURFACE = 0 |
|
Expression | 'POINT_1' |
|
Remarques :
Le contrôle sera passé au traitement spécifique associé à CFGLIBB.
Ce traitement devra comporter une étiquette ACTION
La variable globale GPOINT contiendra 'POINT_1'
La variable système S_UPDMOD contient :
0 en phase saisie des réponses
1 après validation du scénario avant le début de la transaction
2 après validation du scénario après le début de la transaction
9. Affectation d'une valeur à un champ de table
La procédure est identique pour toutes les tables 'générées' par le configurateur :
ITMMASTER = Article maître
ITMFACILIT = Article - site
ITMMVT = Cumuls stocks
ITMSALES = Article - ventes
ITMBPC = Article - client
ITMBPS = Article - fournisseur
BOM = Entête nomenclatures
BOMD = Détail nomenclature
ROUTING = Entête gamme
ROUOPE = Opérations gammes
Exemple 1 : Charger le contenu de la variable POIDS dans la rubrique CFGFLDNUM1 de la table Article maître (ITMMASTER) et demander à que ce contenu soit réactualisé en fin de scénario.
Exemple 2 : Charger la quantité du lien LIKQTY de la table Détail nomenclature (BOMD) à la valeur 1,25.
| Exemple 1 : | Exemple 2 : |
Action | Article maître | Détail de nomenclature |
Symbole | CFGFLDNUM1 | LIKQTY |
Index |
|
|
Paramètre | Réactivation | Pas d’action |
Condition | (1) | (1) |
Expression | S_POIDS | '1,25' |
Abaque | (2) | (2) |
Indice abaque | (2) | (2) |
Remarques :
(1) Le conditionnement est possible
(2) Le chargement du champ peut se faire également via un abaque : dans ce cas pas d'expression mais spécifier le code de l'abaque et le symbole de référence.
10. Cas particulier de la référence article maître (ITMMASTER ITMREF)
Lorsque l'on désire qu'un numéro de séquence soit introduit automatiquement dans le numéro d'article en fonction des valeurs existantes dans la base article, on peut utiliser le caractère différenciateur '#' dans la définition du code article et ces caractères seront remplacés par un numéro de séquence soit numérique, soit alphanumérique soit mixte sans trou dans la numérotation.
La configurateur recherche le dernier article de la base ayant le même préfixe (avant le premier caractère '#') pour avoir le numéro à prendre.
Les caractères du compteur sont soit numériques (0 à 9) soit alphabétiques (A à Z) ; si autres ils sont seulement recopiés.
Une erreur est générée lorsque le configurateur trouve une valeur de compteur maximale sur chaque caractère du compteur.
Exemple :
La base article contient les articles suivants :
MIRREC001
MIRREC004
MIRREC005
MIRREC008
…
MIRRONA-7ABC
MIRRONA-8DEF
…
MIRSTD
En définissant la référence article 'MIRREC###' le configurateur affectera le numéro MIRREC009 puis MIRREC010, MIRREC011 etc.
En définissant la référence article 'MIRRON###XYZ' le configurateur affectera le numéro MIRRONA-9XYZ puis MIRRONB-0XYZ, MIRRONB-1XYZ etc.
En définissant la référence article 'MIRSTD####' le configurateur affectera le numéro MIRSTD0001 puis MIRSTD0002, MIRSTD0003 etc.
11. Formes et modèles
Exemple 1 : Demander un choix de forme de miroir (famille de forme 'MI') si la variable CHOICE (choix) = 'M'
Exemple 2 : Demander un choix de forme de vitre (famille de forme 'GL' pour 'glass') dans le cas contraire
| Exemple 1 : | Exemple 2 : |
Action | Formes / Modèles | Formes / Modèles |
Symbole | MI | VI |
Condition | S_CHOICE = 'M' | S_CHOICE <> 'M' |
Expression |
|
|
Remarque. :
Avec le paramétrage 'fonctions avancées', si une expression est saisie : la forme / modèle est initialisée avec l'expression avant saisie.
12. Tableau des champs saisissables en paramétrage de procédures de sélections autonomes
Action sur | Désactiver | Symbole | Index | Paramètre | Condition | Expression | Abaque |
Question | Oui | Nom de la question | Non | Non | Non | Non Oui (11) | Non |
Variable | Oui | Nom de la variable | Non | Non | Oui | Oui | Oui (1) |
Formes Import/export | Oui | Nom forme Ou modèle | Non | Non | Oui | Non Oui (11) | Non |
Message
| Oui | Non | Non | Oui(3) | Oui | Oui(4) | Non |
13 Tableau des champs saisissables en paramétrage de scénarios
(En gras les actions avancées)
Action sur | Désactiver | Symbole | Index | Paramètre | Condition | Expression | Abaque |
Question | Oui | Nom de la question | Non | Non | Oui | Non | Non |
Variable | Oui | Nom de la variable | Non | Non | Oui | Oui | Oui (1) |
Sélection | Oui | Nom de la sélection | Non | Oui(2) | Oui | Non | Non |
Options Variantes | Oui | Nom de la sélection | Non | Oui(2) | Oui | Non | Non |
Lien avec une table | Oui | Nom de la table X3 | Non | Non | Oui | Oui(9) | |
Procédure
| Oui | Nom de la procédure | Non | Non | Oui | Non | Non |
Formes et modèles | Oui | Nom forme Ou modèle | Non | Non | Oui | Non | Non |
Message
| Oui | Non | Non | Oui(3) | Oui | Oui(4) | Non |
Point d’entrée | Oui | GPOINT(généré) | Non | Non | Oui | Oui(10) | Non |
Commentaire | Oui | Non | Non | Non | Non | Oui (12) | Non |
Tables Article maître Article vente | Oui | Nom de champ | Oui(5) | Oui(6) | Oui | Oui | Oui(1) |
Autres tables
| Oui | Nom de champ | Oui(5) | Non | Oui | Oui | Oui(1) |
Coût matière(7) | Oui | Nom de la variable (8) | Non | Non | Oui | Oui | Oui(1) |
coût machine(7) | Oui | Nom de la variable (8) | Non | Non | Oui | Oui | Oui(1) |
Coût main d'œuvre (7) | Oui | Nom de la variable (8) | Non | Non | Oui | Oui | Oui(1) |
Coût sous-Traitance (7) | Oui | Nom de la variable (8) | Non | Non | Oui | Oui | Oui(1) |
(1) Nom de l'abaque et de l'indice sont obligatoires si aucune expression n'est saisie.
(2) Au choix :
Pas de sélection (sauf options variantes)
Sélection de 0 ou 1 ligne
Sélection de 1 ligne obligatoirement
Sélection de 0 à n lignes
Sélection de 1 à n lignes
(3) Au choix :
Message d'information non bloquant
Message d'erreur bloquant (à fin de scénario)
(4) Texte du message entre guillemets
(5) Demandé pour les champs dimensionnés (ex : unités conditionnement)
(6) En création composé seulement choix :
Pas d’action
Réactualisation : le champ est recalculé en fin de scénario avec la formule
(7) Ces choix ne sont possibles que dans le cas de calcul avancé des coûts
(8) Pour le calcul des coûts la variable système CST doit contenir selon le cas :
Le coût matière unitaire
Le coût machine unitaire
Le coût main d'œuvre unitaire
Le coût sous-traitance unitaire
(9) Donner l'expression du filtre à effectuer sur la table
Exemple : Recherche de l'enregistrement de la table des unités pour la valeur d'unité contenue dans la variable S_UNIT
La table X3 sera TABUNIT et l'expression [F:LNK]UOM=S_UNIT ou UOM=S_UNIT
Le résultat du lien sera donné par la variable système S_LNKOK.
Il faut préciser obligatoirement l'abréviation du fichier si on utilise des fonctions et toutes les fonctions ne sont pas utilisable (Erreur à l'exécution du scénario).
(10) Valeur à charge dans la variable globale GPOINT (Format étiquette entre guillemets).
(11) Oui si fonctions avancées (permet d'initialiser la valeur par défaut)
(12) Saisir le texte du commentaire en format libre.
14. Actions selon les phases de scénario
Les actions grisées ne sont possibles qu'en 'fonctions étendues'
| Sélection Composé | Création composé | Sélection du composant | Création composant | Création opération | Traitements finaux |
Question | Oui | Oui | Oui | Oui | Oui |
|
Variable | Oui | Oui | Oui | Oui | Oui | Oui |
La sélection | Oui |
| Oui |
|
|
|
Options / variantes | Oui |
| Oui |
|
|
|
Lien avec table | Oui | Oui | Oui | Oui | Oui | Oui |
Procédures | Oui | Oui | Oui | Oui | Oui |
|
Messages | Oui | Oui | Oui | Oui | Oui | Oui |
Formes / Modèles | Oui | Oui | Oui |
|
|
|
Points d'entrée | Oui | Oui | Oui | Oui | Oui | Oui |
Article maître |
| Oui |
| Oui |
|
|
Article-Site |
| Oui |
| Oui |
|
|
Article stocks |
|
|
|
|
|
|
Articles-ventes |
| Oui |
| Oui |
|
|
Article client |
| Oui |
| Oui |
|
|
Article fournisseur |
| Oui |
| Oui |
|
|
Entête de nomenclature |
| Oui |
|
|
|
|
Détail de nomenclature |
|
|
| Oui |
|
|
Entête de gamme |
| Oui |
|
|
|
|
Opération gamme |
|
|
|
| Oui |
|
Coût matière | Oui | |||||
coût machine | Oui | |||||
Coût main d'œuvre | Oui | |||||
Coût sous-traitance | Oui |
15. Variables systèmes
Un certain nombre de variables systèmes peuvent être utilisées par les scénarios.
Variable | Intitulé | Consultable | Modifiable | Observations |
BPRNUM | Numéro de tiers | Oui | Oui |
|
BPRREF | Référence tiers | Oui | Oui |
|
CMPSEL | Tableau des composés sélectionnés | Oui | Non |
|
CST | Interface coût | Oui | Oui |
|
CSTMAT | Coût matière | Oui | Non |
|
CSTMAC | coût machine | Oui | Non |
|
CSTLAB | Coût main d'œuvre | Oui | Non |
|
CSTSCO | Coût sous-traitance | Oui | Non |
|
CSTOVE | Coût frais généraux |
|
| Non actif |
CSTTOT | Coût total | Oui | Non |
|
CUR | Devise de valorisation | Oui | Oui | (1) |
CURITM | Composé courant | Oui | Non | (2) |
CURROU | Gamme courante | Oui | Non |
|
FCY | Site | Oui | Non |
|
IPTDAT | Date de référence | Oui | Oui |
|
ITMQTY | Quantité de composé | Oui | Oui | (3) |
ITMSEL | Tableau des composants | Oui | Non |
|
NOHIS | Suppression mise en historique | Oui | Oui | (4) |
LNKOK | Statut retour lien avec table | Oui | Non | (8) |
RNDVAR | Arrondi calcul variables (nombre de décimales) | Oui | Oui | (9) |
PURDAT | Date prévis. de purge données | Oui | Oui | (5) |
TRAFLG | Indicateur de génération de trace | Oui | Oui | (6) |
ITMREF | Nombre articles | Oui | Oui | Variable de travail (7) |
ITMDES | Désignation article | Oui | Oui | Variable de travail (7) |
CFGLIN | Ligne produit | Oui | Oui | Variable de travail (7) |
CFGALP1 à CFGALP6 | Champs alphanumériques 1 à 6 Ligne produit | Oui | Oui | Variable de travail (7) |
CFGNUM1 à CFGNUM6 | Champs numériques 1 à 6 Ligne produit | Oui | Oui | Variable de travail (7)
|
UPDLEV | Niveau de mise à jour | Non | Non | Réservé système |
FILTER | Filtre pour symbole contrôlé avec une table X3 | Non | Oui | (10) |
RPAR | Charger d'un numéro d'article pour modifier le composé de référence | Oui | Oui |
|
RCMPn | Charger un code article pour modifier le composant de référence de la séquence nomenclature n | Oui | Oui | (11) |
GENDES1 | Texte 'désignation article 1' pour traitement des articles génériques | Oui | Oui |
|
GENDES2 | Idem 'désignation article 2' | Oui | Oui |
|
GENDES3 | Idem 'désignation article 3' | Oui | Oui |
|
DYNMAT | Montant affichable dynamiquement dans le haut de la fenêtre de scénario | Oui | Oui | Affichage en devise |
DYNABQ | Sélection dynamique d'un abaque | Oui | Oui | Mettre le nom de l'abaque à exécuter par la prochaine ligne de scénario utilisant un abaque |
Remarques :
(1) Initialiser en début de scénario pour cohérence de la valorisation
(2) Le numéro de composé peut ne pas être connu si numérotation automatique.
(3) Cette variable doit obligatoirement être chargée par la réponse à une question si une quantité autre que 1 est désirée.
(4) Le positionnement à une valeur autre que zéro provoque la suppression de la mise à jour des tables 'Historiques configurations'.
(5) L'initialisation d'une date dans cette variable permet de définir la date de purge des données crées sinon la date de purge sera 31/12/2999.
(6) L'initialisation de cette variable permet selon les valeurs de générer une trace pour la résolution de problèmes.
(7) Ces variables non initialisées sont prédéfinies au format adéquat pour libre usage par l'utilisateur.
(8) Cette variable booléenne prend la valeur 1 si le lien a été trouvé et 0 s'il n'a pas été trouvé.
(9) La valeur par défaut est 6. Cette valeur peut être modifiée par modification de la valeur par défaut du symbole. La modification est également possible par modification de la variable par scénario mais la valeur par défaut restera inchangée.
Exemple : Soit le symbole ARTNUM choix d'un article dans la table ITMMASTER
Pour avoir les articles de la ligne de produits 'MIR' le scénario devra charger dans cette variable de type texte (250 caractères) le filtre avant la ligne question et l'effacer après la ligne question.
Variable FILTER expression = ' [F]CFGLIN='MIR' '
Question ARTNUM
Variable FILTER expression ' '
(11) Ces variables doivent être crées à raison d'une variable par numéro de séquence nomenclature.
Exemple : RCMP10 pour changer le composant de référence des liens de nomenclature numéro 10.
(12) Cette variable permet de conserver même après génération des données les réponses saisies pour un scénario ,un tiers donné et un numéro de pièce donné.
(13) Ne pas oublier d'effacer le contenu de cette variable après la ligne utilisant l'abaque.