|
- Présentation
- Variable globale
- Variables globales à un projet
- Variables globales à une fenêtre
- Variables globales à une page
- Variables globales à un état
- Variables globales à une collection de procédures
- Comment utiliser une variable globale depuis un composant
- Variable globale : Syntaxe
- Déclarer une ou plusieurs variables globales
- Variable locale
- Variable locale : Syntaxe
- Déclarer une ou plusieurs variables locales
- Variables locales et globales zombie
Variable globale et locale
Les variables peuvent être de deux types : - Variable locale : utilisable uniquement dans le traitement dans lequel cette variable a été déclarée.
- Variable globale : utilisable dans tous les traitements dépendant du traitement dans lequel cette variable a été déclarée.
Important : Il ne faut pas déclarer deux variables avec le même nom (notamment une variable globale et une variable locale). Versions 21 et supérieures Nouveauté 21 Variables globales à un projet Les variables globales déclarées dans l'événement "Initialisation" d'un projet peuvent être utilisées dans tous les événements ou traitements : - du projet.
- de la fenêtre ou de la page (événements de la fenêtre ou de la page, de ses champs et des procédures locales associées).
- de l'état (événements de l'état, de ses champs et des procédures locales associées).
Variables globales à une collection de procédures Les variables globales déclarées dans l'événement "Déclaration" d'une collection de procédures peuvent être utilisées dans tous les événements ou traitements : - des différentes procédures de la collection.
- du projet en cours.
Comment utiliser une variable globale depuis un composant Le but du composant étant généralement d'être autonome, il n'est pas recommander d'utiliser une variable globale du projet depuis celui-ci. La méthode recommandée est cependant la suivante : - créez une variable globale dans le composant.
- créez dans le composant une procédure permettant d'initialiser ces variables globales.
- depuis l'événement "Initialisation" du projet, et à chaque modification de la valeur des variables globales du projet, appelez cette procédure pour affecter une valeur similaire aux variables globales du composant.
Variable globale : Syntaxe Déclarer une ou plusieurs variables globales
GLOBAL <Variables globales>
Détail de la syntaxe | | GLOBAL | Début de déclaration des variables globales. | <Variables globales> | Variables globales à déclarer. |
Remarque : Le mot-clé GLOBAL peut être remplacé par le mot-clé GLOBALE ou GLOBALES.
GLOBAL // Toutes les déclarations qui suivent sont des variables globales Indice est un entier NomClient est une chaîne Taux est un réel LOCAL // Toutes les déclarations qui suivent sont des variables locales I est un entier PrénomClient est une chaîne Prix est un monétaire
Les variables locales peuvent être utilisées uniquement dans les événements ou traitements dans lesquels elles sont déclarées. En dehors de ces événements ou traitements, les variables locales sont inconnues. Ces variables ne pourront pas être partagées par plusieurs événements ou traitements. Par défaut, lors de sa déclaration, une variable est locale. Variable locale : Syntaxe Déclarer une ou plusieurs variables locales
[LOCAL] <Variables locales>
Détail de la syntaxe | | LOCAL | Début de déclaration des variables locales. L'utilisation du mot-clé LOCAL est optionnelle. | <Variables locales> | Variables locales à déclarer. |
Remarque : Le mot-clé LOCAL peut être remplacé par le mot-clé LOCALE ou LOCALES.
LOCAL // Toutes les déclarations qui suivent sont des variables locales I est un entier PrénomClient est une chaîne Prix est un monétaire
// Toutes les déclarations qui suivent sont des variables locales I est un entier PrénomClient est une chaîne Prix est un monétaire
Versions 23 et supérieuresVariables locales et globales zombie Une variable locale ou globale peut devenir obsolète. Il est ainsi possible de savoir que cet élément ne doit plus être utilisé (mais il n'est pas encore supprimé). Pour déclarer une variable comme étant obsolète, il suffit d'utiliser l'attribut d'extension <Zombie>. La syntaxe est la suivante :
<Nom Variable> est un <type de la variable> <zombie [commentaire = "texte"]>
Dans cette syntaxe, le mot-clé optionnel commentaire permet d'indiquer le texte qui sera affiché dans l'erreur de compilation associée à la variable obsolète. Exemple :
PrénomClient est une chaîne <zombie commentaire = "Ne plus utiliser - utiliser la structure Client">
Nouveauté 23Variables locales et globales zombie Une variable locale ou globale peut devenir obsolète. Il est ainsi possible de savoir que cet élément ne doit plus être utilisé (mais il n'est pas encore supprimé). Pour déclarer une variable comme étant obsolète, il suffit d'utiliser l'attribut d'extension <Zombie>. La syntaxe est la suivante :
<Nom Variable> est un <type de la variable> <zombie [commentaire = "texte"]>
Dans cette syntaxe, le mot-clé optionnel commentaire permet d'indiquer le texte qui sera affiché dans l'erreur de compilation associée à la variable obsolète. Exemple :
PrénomClient est une chaîne <zombie commentaire = "Ne plus utiliser - utiliser la structure Client">
Variables locales et globales zombie Une variable locale ou globale peut devenir obsolète. Il est ainsi possible de savoir que cet élément ne doit plus être utilisé (mais il n'est pas encore supprimé). Pour déclarer une variable comme étant obsolète, il suffit d'utiliser l'attribut d'extension <Zombie>. La syntaxe est la suivante :
<Nom Variable> est un <type de la variable> <zombie [commentaire = "texte"]>
Dans cette syntaxe, le mot-clé optionnel commentaire permet d'indiquer le texte qui sera affiché dans l'erreur de compilation associée à la variable obsolète. Exemple :
PrénomClient est une chaîne <zombie commentaire = "Ne plus utiliser - utiliser la structure Client">
Documentation également disponible pour…
|
|
|
| |
| | Toute variable passée en paramètre à une procédure est par défaut passée par adresse. Ce qui signifie que si cette variable est modifiée dans la procédure, elle est donc également modifiée dans le code appelant. On peut ainsi considéré que la variable est globale, tout du moins entre le code appelant et la procédure elle-même.
Pour passer des paramètres par référence (copie), il suffit soit d'entourer la variable par des parenthèses dans le code appelant lors de l'appel à la procédure ou (et c'est mieux) utiliser le mot clé LOCAL dans la déclaration des paramètres de la procédure. Ainsi, la variable passée en paramètre sera uniquement locale à la procédure. De cette façon, les modifications apportées sur cette variable dans la procédure ne seront pas reportées dans le code appelant. |
|
|
|
| |
| |
| |
|
| Variable définie dans une procédure globale |
|
| En l'absence de précision, il semble qu'une variable passée à une procédure globale soit Locale à cette procédure.
Cela semble contraire avec une recommendation (blog ?) sur le typage et la définition comme Local des paramètres passés à une procédure globale. |
|
|
|
| |
| |
| |
| |
| |
| |
| | |
| |