ACT-CTX
BUT
Cette fonction permet de récupérer le contexte (type, format, valeur) ou de mettre à jour (valeur) de certaines variables de bases d’une entité configurée (article standard, ligne de commande commerciale) au cours de la configuration par DIAPASON (configurateur technico-commercial).
Cette fonction est disponible uniquement pour les requêtes de type GCQ et ne concerne que les variables de type VBA qui ne sont pas des tableaux.
TYPE
CARACTERE (rubrique fonction gestion ; libellé : Action sur Contexte)).
SYNTAXE
Variable = ACT-CTX ( ACTION = REC-TYPE,REC-FORMAT,REC-VALEUR,REC-VAL/HER,MAJ-VALEUR
REF-CONTEXTE=Contexte
TYPE-VARIABLE = VBA (non saisi)
NOM-VARIABLE = Référence de la variable VBA traitée
E-S :VALEUR = valeur liée à l’action de la fonction)
PARAMETRES
Paramètre | E/S | O | Type | Description |
ACTION | E | Oui | Caractère | REC-TYPE : cette action demande à DIAPASON de donner le type (Caractère, Numérique, Date, Logique) de la variable définie dans le paramètre NOM-VARIABLE. Le type est retourné dans la variable du paramètre entrée-sortie VALEUR. REC-FORMAT : cette action demande à DIAPASON de donner le format de la variable définie dans le paramètre NOM-VARIABLE. Le format est retourné dans la variable du paramètre entrée-sortie VALEUR. REC-VALEUR : cette action demande à DIAPASON de rechercher la valeur de la variable VBA définie dans le paramètre NOM-VARIABLE. La valeur est retourné dans la variable du paramètre entrée-sortie VALEUR. La valeur est recherchée exclusivement dans le contexte donné dans le paramètre REF-CONTEXTE. REC-VAL/HER : cette action demande à DIAPASON de rechercher par héritage la valeur de la variable VBA définie dans le paramètre NOM-VARIABLE. La valeur est retourné dans la variable du paramètre entrée-sortie VALEUR. La valeur est recherchée dans le contexte donné dans le paramètre REF-CONTEXTE et dans les références contextes supérieures de l’arborescence des contextes en partant de ce contexte origine (voir fonction LEC-CTX). REC-VAL/H-I : permet de récupérer la valeur d'une variable avec héritage (comme l'option REC-VAL/HER) mais retourne la valeur défaut de la variable définie dans le dictionnaire de variable si celle-ci n'est pas définie; REC-VAL/RPV permet d'indiquer où la valeur de la variable est définie : la valeur L signifie que la valeur est définie localement, la valeur C indique que la valeur est définie dans un contexte supérieur, la valeur U indique que la variable n'est pas définie (*) MAJ-VALEUR : cette action demande à DIAPASON de modifier la valeur de la variable VBA définie dans le paramètre NOM-VARIABLE. La valeur est donnée dans la variable du paramètre entrée-sortie VALEUR. La valeur est modifiée exclusivement dans le contexte donné dans le paramètre REF-CONTEXTE |
REF-CONTEXTE | E | Oui | Caractère | Référence contexte de définition de l’entité. Donné sous la forme de variable ou de constante. Obligatoire dans le cas d’une définition multi-contexte. Si cette variable contient la valeur vide, DIAPASON sélectionne par défaut le contexte de niveau le plus haut. |
TYPE-VARIABLE | E | Oui | Caractère | Type DIAPASON de variable. Non saisi, forcé à VBA |
NOM-VARIABLE | E | Oui | Caractère | Nom de la variable VBA dans le dictionnaire des variables DIAPASON. |
VALEUR | E | Oui | Caractère | Valeur en entrée ou sortie de fonction dépendant du paramètre ACTION. |
EXEMPLE
L’instruction qui suit permet de mémoriser dans la variable locale Valeur la valeur
effective (au format caractère exclusivement) de la variable VBA dont le nom est le contenu de la variable locale Nom et dont le contexte est le contenu de la variable locale Contexte :
VLO.Fct = ACT-CTX( ACTION= REC-VALEUR , REF-CONTEXTE = VLO.Contexte , TYPE-VARIABLE=VBA , NOM-VARIABLE= VLO.Nom , E-S:VALEUR= VLO.Valeur )
NOTES
La fonction retourne dans la variable résultat la valeur *INC lors de toute anomalie d’exécution (notamment lorsque la variable n’a pas été trouvée) et la valeur vide pour toute exécution correcte.
Le principe de fonctionnement dans le cas d’une arborescence de contexte est le même que pour la fonction LEC-CTX.