Varinit permet de déterminer si une variable d'un masque est initialisée ou non.
varinit ( nom_zone [, exp_indice ] )
Elément | Description | Restrictions |
nom_zone | [ classe ] nom_de_variable. | Doit correspondre à une zone d'un masque ouvert. |
exp_indice | Expression entière de l'indice de la variable. | L'indice doit être dans l'intervalle défini par le facteur de répétition. |
# Traitement d'initialisation de la zone TTVA
If varinit([M]TTVA) = 0
Call CODTVA From SAIFAC
Endif
# Un tableau déroulant comporte (au moins) les zones QALIV et QCOM. Le
# traitement suivant est appelé en initialisation de QALIV avant
# chaque saisie (zone en '@')
If varinit([M]QALIV, indice) = 0
zc = [M]QCOM(indice)
Endif
La fonction varinit permet de déterminer si une zone définie dans un masque est initialisée ou non. Une zone est non-initialisée tant qu'elle n'a été ni saisie, ni affectée. Elle redevient non-initialisée lorsque sa valeur est effacée par l'instruction Effzo ou Raz..
varinit comporte un ou deux arguments (le deuxième valant zéro par défaut). Dans le cas d'une zone dimensionnée, on donnera un deuxième argument pour établir si l'élément d'indice correspondant dans le tableau est initialisé ou ne l'est pas. On pourra utiliser la variable système Adonix indice qui donne l'indice courant.
La fonction varinit retourne un entier qui est :
1 : si la zone est initialisée
0 : si la zone n'est pas initialisée