INI-CRI-DOC : Initialisation des critères pour EXE-DOC
BUT
Cette fonction permet d’initialiser une variable critère (SCR, VCR) pour l’exécution de tout type de document (REB, RED, REN) par la fonction « EXE-DOC ».
TYPE CARACTERE
SYNTAXE
Variable = INI-CRI-DOC ( TYPE-VARIABLE = SCR,VCR
TYPE = Caractère, numérique, date et logique
NOM-VARIABLE = Référence de la variable
VALEUR = valeur de la variable de type variable ou constante locale.)
PARAMETRES
Paramètre | E/S | O | Type | Description |
TYPE-VARIABLE | E | Oui | Caractère | Peut être une variable locale, une constante locale ou une valeur figée. Les valeurs possibles sont SCR pour indiquer qu’il s’agit d’une variable critère standard ou VCR pour indiquer qu’il s’agit d’une variable critère spécifique. |
TYPE | E | Oui | Caractère | Type de stockage de la variable : caractère, numérique, date et logique. |
NOM-VARIABLE | E | Oui | Caractère | Nom de la variable critère (SCR ou VCR) dans le dictionnaire des variables DIAPASON. Peut être une variable locale, une constante locale ou une valeur proposée. |
VALEUR | E | Oui | Caractère | Valeur à mémoriser de la variable critère. Peut être une variable locale ou une constante locale. Attention, si on met un # dans la valeur il sera traduit en “,” dans le document. |
Variable | E | Oui | Caractère | Variable de stockage du résultat d’exécution de la fonction : si l’exécution s’est correctement déroulée, la valeur est vide, sinon elle contient la chaîne de caractère *INC (la variable critère donnée n’existe pas). |
Pour les documents REB :
Le critère du document doit être initialisé grâce à l’utilisation de la fonction « INI-CRI-DOC » avant l’appel de la fonction.
Pour les autres documents (RED, REN) :
Le passage de critère au document doit comprendre :
L’identification de l’entité sur laquelle est exécuté le document.
L’initialisation de critères complémentaires éventuels (variables SCR ou VCR).
Les critères sont toujours initialisables via la fonction « INI-CRI-DOC » (possibilité d’initialiser des variables SCR et VCR).
Le principe de l’identification de l’entité dans le critère est piloté par l’initialisation des variables CriCle ou CriListesCles et suit le principe dans le tableau suivant :
Clé | Désignation Entité | Initialisation via INI-CRI-DOC |
10 | Article | Variable à initialiser : SCR.CriCle Contient la référence article à considérer. |
11 | Liste d'Articles | Variable à initialiser : SCR.CriListesCles Contient la liste des articles à considérer ; chaque article est séparé par le caractère « virgule » Exemple : R1,R2 : les 2 articles référencés R1 et R2 seront considérés). |
15 | Commande Commerciale | Variable à initialiser : SCR.CriCle Contient le numéro de commande commerciale à considérer |
16 | Ligne de Commande Commerciale | Variable à initialiser : SCR.CriCle Contient le numéro de ligne de commande commerciale à considérer sous la forme numéro_commande + numéro_ligne Exemple : 0307000001+001 : la ligne 001 de la commande 0307000001 |
17 | Liste de Lignes de Commande Com. | Variable à initialiser : SCR.CriListesCles Contient la liste des lignes de commandes à considérer ; chaque ligne est séparée par le caractère « virgule » ; chaque ligne est identifiée par le numéro_commande+numéro_ligne Exemple : 0307000001+001, 0307000001+002, 0307000002+001 : trois lignes de commandes sont considérés : les lignes 001 et 002 de la commande 0307000001, la ligne 001 de la commande 0307000002 |
18 | Liste de Commandes Commerciales | Variable à initialiser : SCR.CriListesCles Contient la liste des commandes commerciale à considérer ; chaque commande est séparé par le caractère « virgule » Exemple : 0307000001, 0307000002 : les commandes 0307000001 et 0307000002 seront considérés. |
20 | Commande | Variable à initialiser : SCR.CriCle Contient le numéro de besoin de gestion à considérer |
21 | Ligne de Commande | Variable à initialiser : SCR.CriCle Contient le numéro de ligne de besoins de gestion à considérer sous la forme numéro_besoin+ numéro_ligne Exemple : 0307000001+001d1 : la ligne 001d1 du besoin de gestion 0307000001 |
22 | Liste de Lignes de Commande | Variable à initialiser : SCR.CriListesCles Contient la liste des lignes de besoins de gestion à considérer ; chaque ligne est séparée par le caractère « virgule » ; chaque ligne est identifiée par le numéro_besoin+numéro_ligne Exemple : 0307000001+001d1, 0307000001+001d2, 0307000002+001 : trois lignes de besoins de gestion sont considérés : les lignes 001d1 et 001d2 du besoin 0307000001, la ligne 001 du besoin 0307000002 |
23 | Liste de Commandes | Variable à initialiser : SCR.CriListesCles Contient la liste des besoins de gestion à considérer ; chaque besoins de gestion est séparé par le caractère « virgule » Exemple : 0307000001, 0307000002 : les besoins de gestion 0307000001 et 0307000002 seront considérés |
30 | Série | Variable à initialiser : SCR.CriCle Contient le numéro de série à considérer ; recherche avec le statut en cours ; si non trouvé, recherche avec le statut soldé. |
31 | OF | Variable à initialiser : SCR.CriCle Contient le numéro d’OF à considérer ; recherche avec le statut en cours ; si non trouvé, recherche avec le statut soldé. |
32 | Liste d'OFs | Variable à initialiser : SCR.CriListesCles Contient la liste des Ofs à considérer ; chaque Of est séparé par le caractère ,(virgule) (exemple : FA0123401,FA123402: les Ofs FA0123401et FA0123402 seront considérés). |
33 | Liste de Séries | Variable à initialiser : SCR.CriListesCles Contient la liste des séries à considérer ; chaque série est séparée par le caractère ,(virgule) (exemple : FA01234,FA1235: les Ofs FA0123401et FA0123402 seront considérés). |
40 | Commande Fournisseur | Variable à initialiser : SCR.CriCle Contient le numéro de commande à considérer |
41 | Ligne de Commande Fournisseur | Variable à initialiser : SCR.CriCle Contient le numéro de ligne de commande à considérer sous la forme numéro+ ligne (exemple : 0307000001+001 : la ligne 001 de la commande 0307000001) |
42 | Liste de Lignes de Commande Four. | Variable à initialiser : SCR.CriListesCles Contient la liste des lignes de commandes à considérer ; chaque ligne est séparée par le caractère ,(virgule) ; chaque ligne est identifiée par le numéro_commande+numéro_ligne (exemple : 0307000001+001, 0307000001+002, 0307000002+001 : trois lignes de commandes sont considérés : les lignes 001 et 002 de la commande 0307000001, la ligne 001 de la commande 0307000002). |
43 | Liste de Commandes Fournisseurs | Variable à initialiser : SCR.CriListesCles Contient la liste des commandes d’approvisionnement à considérer ; chaque commande est séparée par le caractère ,(virgule) (exemple : 0307000001, 0307000002 : les commandes 0307000001 et 0307000002 seront considérés). |
50 | BL Client | Variable à initialiser : SCR.CriCle Contient le numéro de BL à considérer |
51 | Evénement d'Expédition Client | Variable à initialiser : SCR.CriCle Contient la référence événement d’expédition à considérer |
52 | Bon Préparation | Variable à initialiser : SCR.CriCle Contient la référence bon de préparation à considérer |
53 | Bon Conditionnement | Variable à initialiser : SCR.CriCle Contient la référence bon de conditionnement à considérer |
60 | Facture Client | Variable à initialiser : SCR.CriCle Contient le numéro de facture client à considérer |
EXEMPLE
L’instruction qui suit permet d’initialiser la variable critère SCR.AppFouRef avec la valeur de la variable locale VLO.Fournisseur :
VLO.FctCri = INI-CRI-DOC ( TYPE-VARIABLE = SCR, TYPE = CARACTERE, NOM VARIABLE = AppFouRef, VALEUR = VLO.Fournisseur).
L’instruction qui suit permet d’initialiser les variables critères SCR.AppFouRefDeb et SCR.AppFouRefFin avec la valeur de la variable locale VLO.Fournisseur :
VLO.FctCri = INI-CRI-DOC ( TYPE-VARIABLE = SCR, TYPE = CARACTERE, NOM VARIABLE = AppFouRefDeb, VALEUR = VLO.Fournisseur) + MAJ-VAR-SPE( TYPE-VARIABLE = SCR, TYPE = CARACTERE, NOM VARIABLE = AppFouRefFin, VALEUR = VLO.Fournisseur).
NOTES
Cette instruction permet d’initialiser un contexte de critères. Son utilisation est effectuée automatiquement par DIAPASON à l’intérieur d’un bloc CREATION Liste sur le principe suivant :
![](../__attachments/115230964/image-20230227-144457.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Il faut également noter que si une variable critère est initialisée plusieurs fois avant d’être utilisée, c’est sa dernière valeur qui est enregistrée. D’autre part, après exécution de la requête, DIAPASON intègre les critères défauts définis éventuellement sur le document.