VARIABLE |
Variablepermet de déclarer les arguments d'un sous-programme en spécifiant qu'ils sontpassés par adresse.
Variablemot_typeliste_var_dim
Elément | Description | Restrictions |
Un des mots-clés utilisés pour lesdéclarations : | Ce doit être un type de donnéesd'Adonix. | |
Liste de | Aucune. | |
| Aucune. | |
nom_de_ | Aucune. | |
Liste de séparateurs ',' ( laplace prise habituellement par l'expression des dimensions reste vide, seulle nombre de dimensions est ainsi déclaré ). | Pas plus de 3 séparateurs car le nombrede dimensions est limité à 4. |
# Déclaration d'arguments d'un Call
Subprog SOUS_TRAIT(ARGUM1,ARGUM2, ARGUM3)
Variable Integer ARGUM1(,,) :# ARGUM1 est untableau à 3 dimensions
Variable Char ARGUM2()(,) :#ARGUM2 est un tableau à 2 dimensions
Variable DateARGUM3 :# ARGUM3 est une date (sansdimension)
Variablepermet de déclarer que les arguments d'un sous-programme sont passés paradresse. Les variables déclarées ainsi sont définies dans la classe [L], maiselles pointent sur les variables passées en paramètre du Call. Autrement dit,toute modification faite sur une des variables dans le sous-programme serépercute dans les variables passées en paramètre du Call.
Lorsqu'on ne précise pas l'indice de départ pour un tableau passé enargument, celui commence à l'indice 0, même si dans le traitement appelant, ilest déclaré commençant par un autre indice. Exemple :
# Appel des sous-programmes
Local Char ARGUMENT(30)(1..6)
Call SOUS_TRAIT0
Call SOUS_TRAIT1
Subprog SOUS_TRAIT0(ARGUMENT)
Subprog SOUS_TRAIT1(ARGUMENT)
ERMODE(10) | Incompatibilitéde type entre la déclaration de l'argument et le paramètre passé dans leCall. |
ERDIM(55) | Lenombre de dimensions déclarées ne correspond pas à la dimension de la |
ERARGTY(70) | L'argumentpassé au Call est une expression (elle ne peut être passée que par valeur). |
SHORTINT - DECIMAL - CHAR - DATE - INTEGER- LIBELLE - CONST - VALUE - CALL - SUBPROG
Adonix X3(r) L4G |