Variables pièces auto
Cette fonction permet de définir des variables de pièces automatiques pouvant être exploitées dans les formules des lignes de pièces automatiques.
L’utilisation d’une variable dans une formule peut être utile lorsque l’initialisation d’un champ d’une ligne d’écriture est complexe et qu’elle ne peut pas se réduire à une expression simple. Dans ce cas, l’appel à une variable va se traduire par un appel à un sous-programme qui aura la charge d’évaluer la variable et de permettre au générateur d’initialiser le contenu du champ de la ligne comptable.
Paramétrage des variables de pièces automatiques
Chaque variable de pièces automatiques est associée à un code pouvant être utilisé dans n’importe quelle ligne de pièce automatique.
L’appel à une variable dans une formule va se traduire par un appel à un sous-programme défini dans un traitement dont les noms sont à paramétrer dans les champs prévus à cet effet.
Chaque variable :
- Peut comporter un certain nombre de paramètres ‘par valeur’ nécessaires à l’évaluation de la variable (ces variables seront passées comme des paramètres au sous-programme).
- Doit comporter obligatoirement un paramètre ‘par adresse’. Ce paramètre correspond au résultat de l’évaluation de la variable.
- Renvoie, outre le paramètre d’évaluation, une variable de type entier permettant de définir un code d’erreur. Ce paramètre n’a pas à être défini dans la liste des paramètres, mais il est ajouté automatiquement dans l’appel du sous-programme : le code du sous-programme doit donc l’inclure.
Exemple :
Dans certaines lignes de pièces automatiques, on a besoin de connaître le taux de TVA à appliquer compte tenu du code taxe, de la date comptable et de la société. La variable ‘TVA’ a été introduite en standard pour permettre l’évaluation du taux de taxe et comporte donc les paramètres suivants :
- Trois paramètres par ‘valeur’ nécessaires à l’évaluation du taux de taxe : la société (CPY) de type ‘Char’, le code taxe (TAX) de type ‘Char’, la date (DAT) de type ‘Date’
- Un paramètre par ‘adresse’ correspondant au résultat qu’on cherche à obtenir : le taux de taxe (VATRAT) de type ‘Décimal’
Pré-requis
Reportez-vous à la documentation de Mise en oeuvre
Gestion de l'écran
Ecran de saisie
é
Chaque variable peut être exploitée dans le tableau des formules associées aux champs des lignes d’écritures par le biais de la syntaxe V_XXXXX (XXXXX désignant le code de la variable). La saisie d’une variable déclenche l’ouverture d’une petite fenêtre dans lequel l’utilisateur doit indiquer la valeur de chaque paramètre nécessaire à l’évaluation de la variable (paramètre de type ‘Valeur’). La valeur indiquée pour chaque paramètre doit être du bon type.
Il est à noter que les paramètres transmis lors de l’appel du sous-programme peuvent être des constantes, des variables, ou des expressions complexes intégrant des variables en ligne.
La référence à une variable sur une ligne de pièce automatique génère dans le traitement WMGAUYYYYY (YYYYY désignant le code de la pièce automatique) l’appel au sous-programme en question avec :
- Les paramètres de la variable dans l’ordre dans lequel ils ont été saisis dans le paramétrage de la variable de pièce automatique
- Un paramètre ‘STAT’ de type ‘Integer’ permettant éventuellement de renvoyer un statut de retour au générateur de pièces automatiques. Si en retour, la variable STAT est égale à 98, la pièce comptable ne sera pas générée et l’erreur affichée sera celle contenue dans la variable globale GMESSAGE.
Notons par ailleurs que, dans les traitements générés par la comptabilisation des pièces automatiques, la table principale est ouverte non sous son abréviation propre, mais sous l’abréviation [F:TB0] ; la table des lignes est quant à elle ouverte sous l’abréviation [F:TB1]. Ceci na aucune incidence sur les formules saisies ou sur les expressions de paramètres passés en paramétrage des pièces. On peut continuer à utiliser les abréviations habituelles des tables principales, la validation de la pièce automatique réalisant automatiquement les substitutions d’abréviations dans les expressions. Par contre, si le traitement appelé par la variable doit faire appel à des champs de la table principale ou de la table des lignes pour l’enregistrement courant (si par exemple le traitement teste des champs de ces enregistrements qui n’auraient pas été passés comme argument), il faudra alors utiliser les abréviations [TB0] et [TB1] dans le traitement.
En-tête
Code variable (champ CODVAR) |
Pas d'aide liée à ce champ. |
champ DESTRA |
Code activité (champ CODACT) |
Pas d'aide liée à ce champ. |
Bloc numéro 2