IBM Lotus Symphony
|
Cette rubrique décrit les principes de base de l'utilisation des variables dans Lotus Symphony Basic.
Un nom de variable peut comprendre jusqu'à 255 caractères. Le premier de ces caractères doit être une lettre entre A et Z ou a et z. Les chiffres peuvent également être utilisés dans ces noms, mais les signes de ponctuation et les caractères spéciaux ne sont pas autorisés, sauf le caractère de soulignement ("_"). Dans Lotus Symphony Basic, les identificateurs de variables ne sont pas dépendants des majuscules/minuscules. Les noms de variables peuvent contenir des espaces mais doivent, dans ce cas, être placés entre crochets.
Exemple | Description |
---|---|
MonNumero=5 | Correct |
MonNumero5=15 | Correct |
MonNumero_5=20 | Correct |
Mon Numero=20 | Incorrect, toute variable comprenant un espace devant être placée entre crochets |
[Mon Numero]=12 | Correct |
DéjàVu=25 | Incorrect, caractères spéciaux non autorisés |
5MonNumero=12 | Incorrect, une variable ne peut pas commencer par un chiffre |
Numero,Mon=12 | Incorrect, signes de ponctuation non autorisés |
Dans Lotus Symphony Basic, il n'est pas nécessaire de déclarer les variables explicitement. Une variable peut être déclarée à l'aide de l'instruction Dim. Vous pouvez déclarer plusieurs variables à la fois en séparant leurs noms à l'aide d'une virgule. Pour définir le type de variable, utilisez soit un caractère de déclaration de type après le nom, soit le mot-clé approprié.
Exemple | Description |
---|---|
DIM a$ | Déclare la variable "a" en tant que chaîne de caractères (String). |
DIM a As String | Déclare la variable "a" en tant que chaîne de caractères (String). |
DIM a$, b As Integer | Déclare une variable en tant que chaîne de caractères (String) et une autre en tant que nombre entier (Integer). |
DIM c As Boolean | Déclare c en tant que variable booléenne pouvant avoir la valeur TRUE (vrai) ou FALSE (faux). |
Il est très important, lorsque vous déclarez des variables, de toujours utiliser le caractère de déclaration de type, même s'il a été utilisé dans la déclaration à la place d'un mot-clé. Les instructions suivantes sont donc non valides :
Exemple | Description |
---|---|
DIM a$ | Déclare "a" en tant que chaîne de caractères (String). |
a="ChaîneTest" | Déclaration de type manquante : "a$=" |
![]() |
Après avoir déclaré une variable comme étant d'un certain type, vous ne pouvez pas la déclarer à nouveau sous le même nom comme étant d'un type différent. |
Pour forcer la déclaration de variables, utilisez la commande suivante :
OPTION EXPLICIT
L'instruction Option Explicit doit constituer la première ligne du module, avant le premier élément SUB. Généralement, seules les matrices doivent être déclarées explicitement. Toutes les autres variables sont déclarées en fonction du caractère de déclaration de type ou, en cas d'omission, en tant que type par défaut Single (simple).
Lotus Symphony Basic prend en charge quatre classes de variables :
Les variables numériques peuvent contenir des valeurs numériques. Certaines variables servent à stocker de petits ou de grands nombres et d'autres sont utilisées pour des nombres à virgule flottante ou des fractions.
Les variables de type chaîne contiennent des chaînes de caractères.
Les variables booléennes contiennent soit la valeur TRUE (vrai), soit la valeur FALSE (faux).
Les variables de type objet peuvent stocker des objets de différents types, comme des tables et des documents à l'intérieur d'un document.
Les variables entières sont comprises entre -32 768 et 32 767. Si vous affectez une valeur à virgule flottante à une variable entière, les décimales sont arrondies au nombre entier suivant. Les variables entières sont calculées rapidement dans les procédures et peuvent être utilisées pour les variables de comptage dans les boucles. Une variable entière n'occupe que deux octets de mémoire. "%" constitue le caractère de déclaration de ce type.
Dim Variable%
Dim Variable As Integer
Les variables entières longues sont comprises entre -2 147 483 648 et 2 147 483 647. Si vous affectez une valeur à virgule flottante à une telle variable, les décimales sont arrondies au nombre entier suivant. Les variables entières longues sont calculées rapidement dans les procédures et peuvent être utilisées pour les variables de comptage dans les boucles pour les valeurs importantes. Une variable entière longue occupe quatre octets de mémoire. "&" constitue le caractère de déclaration de ce type.
Dim Variable&
Dim Variable as Long
Les variables décimales peuvent accepter des nombres positifs ou négatifs ou la valeur zéro. La précision s'effectue jusqu'à 29 chiffres.
Vous pouvez utiliser les signes plus (+) ou moins (-) comme préfixes de nombres décimaux (avec ou sans espaces).
Si un nombre décimal est affecté à une variable entière, Lotus Symphony Basic arrondit le chiffre à la valeur supérieure ou inférieure.
Les variables simples peuvent accepter des valeurs positives ou négatives, comprises entre 3,402823 x 10E38 et 1,401298 x 10E-45. Ce sont des variables à virgule flottante dans lesquelles la précision décimale diminue à mesure que la partie non décimale du nombre augmente. Les variables simples peuvent être utilisées pour les calculs mathématiques de précision moyenne. Ces calculs sont plus longs qu'avec des variables entières, mais plus rapides qu'avec des variables doubles. Une variable simple occupe quatre octets de mémoire. "!" constitue le caractère de déclaration de ce type.
Dim Variable!
Dim Variable as Single
Les variables doubles peuvent accepter des valeurs positives ou négatives comprises entre 1,79769313486232 x 10E308 et 4,94065645841247 x 10E-324. Ce sont des variables à virgule flottante dans lesquelles la précision décimale diminue à mesure que la partie non décimale du nombre augmente. Les variables doubles peuvent être utilisées pour les calculs précis. Ces calculs sont plus longs qu'avec les variables simples. Une variable double occupe huit octets de mémoire. "#" constitue le caractère de déclaration de ce type.
Dim Variable#
Dim Variable As Double
Les variables monétaires sont stockées en interne sous forme de nombres de 64 bits (huit octets) et s'affichent sous forme de nombres décimaux fixes comportant 15 valeurs non décimales et 4 décimales. Leurs valeurs sont comprises entre -922 337 203 685 477,5808 et +922 337 203 685 477,5807. Les variables monétaires servent à calculer des valeurs monétaires avec une grande précision. "@" constitue le caractère de déclaration de ce type.
Dim Variable@
Dim Variable As Currency
Les variables de chaîne peuvent comporter des chaînes de caractères allant jusqu'à 65 535 caractères. Chaque caractère est stocké sous la valeur Unicode correspondante. Les variables de chaîne peuvent être utilisées pour le traitement de texte à l'intérieur de programmes et pour le stockage temporaire de tout caractère non imprimable d'une longueur maximale de 64 kilo-octets. La mémoire nécessaire au stockage des variables de chaîne dépend du nombre de caractères de celles-ci. "$" constitue le caractère de déclaration de ce type.
Dim Variable$
Dim Variable As String
Les variables logiques ne stockent qu'une seule des deux valeurs suivantes : TRUE (vrai) ou FALSE (faux). Un nombre 0 a pour résultat la valeur FALSE (faux), tandis que toutes les autres valeurs ont pour résultat la valeur TRUE (vrai).
Dim Variable As Boolean
Les variables de date ne peuvent contenir que des valeurs de date et d'heure stockées dans un format interne. Les valeurs affectées à des variables de date par Dateserial , Datevalue , Timeserial ou Timevalue sont automatiquement converties au format interne. Les variables de date sont converties en chiffres normaux à l'aide de la fonction Jour , Mois , Année , Heure , Minute ou Seconde Le format interne permet de comparer des valeurs date/heure par calcul de la différence entre deux nombres. Ces variables ne peuvent être déclarées qu'avec le mot-clé Date.
Dim Variable As Date
Dès que la variable est déclarée, elle est automatiquement définie à la valeur "Null". Notez les conventions suivantes :
Les variables numériques obtiennent automatiquement la valeur "0" dès qu'elles sont déclarées.
Les variables de date se voient attribuer la valeur 0 en interne, ce qui équivaut à convertir la valeur à "0" avec la fonction Jour , Mois , Année , Heure , Minute ou Seconde .
Les variables de chaîne obtiennent un espace vide ("") lorsqu'elles sont déclarées.
Lotus Symphony Basic reconnaît les matrices unidimensionnelles ou multidimensionnelles définies par un type de variable spécifié. Les matrices peuvent être utilisées pour l'édition de listes et de tables dans les programmes. Les différents éléments d'une matrice peuvent être désignés par un index numérique.
Les matrices doivent être déclarées avec l'instruction Dim.
Exemple | Description |
---|---|
DIM text$(20) | 21 éléments numérotés de 0 à 20 |
DIM text$(5,4) | 30 éléments (matrice de 6 x 5 éléments) |
DIM text$(5 to 25) | 21 éléments numérotés de 5 à 25 |
DIM text$(- 15 to 5) | 21 éléments (0 compris) numérotés de - 15 à 5 |
La plage d'index peut comprendre des nombres positifs comme des nombres négatifs.
Les constantes ont une valeur fixe. Elles ne sont définies qu'une seule fois dans le programme et ne peuvent pas être redéfinies ultérieurement :
CONST ConstName=Expression