Référence > Page de référence des fonctions > Fonctions logiques > Definir
 
Definir
Objet 
Définit une ou des variables pour le résultat de l'expression ou des expressions définies jusqu'à la fin du calcul ou jusqu'à ce que le script ou le fichier soit fermé.
Format 
Definir ( {[}Var1=Expression1{; Var2=Expression2...]} ; Calcul )
Paramètres 
Var : nom de variable, nom de variable locale ou nom de variable globale (reportez-vous à la section A propos de l'attribution de noms aux rubriques pour plus d'informations sur l'attribution d'un nom à une variable)
Expression : une expression de calcul, une rubrique ou une constante
Calcul : une expression de calcul, une rubrique ou une constante
Les paramètres situés entre deux accolades { } sont facultatifs.
Résultat 
Texte, nombre, date, heure, horodatage, conteneur
Provenance 
FileMaker Pro 7.0
Description 
La fonction Definir vous permet d'affecter les résultats des expressions aux variables et de renvoyer un résultat qui peut utiliser ces variables. Utilisez la fonction Definir pour simplifier la lecture des formules complexes et limiter l'utilisation de fonctions imbriquées dans d'autres fonctions. La fonction Definir permet également d'optimiser les formules en stockant le résultat des appels de fonctions dans des variables afin de les réutiliser dans la formule, réduisant ainsi le nombre d'appels de fonctions redondants.
Pour affecter plusieurs variables à une fonction Definir, utilisez une syntaxe sous forme de liste entre crochets [ ], séparée par des points-virgules. Pour faciliter la lecture de plusieurs variables, vous pouvez placer chaque variable et le calcul renvoyé sur des lignes séparées, bien que cette mise en forme ne soit pas obligatoire. Par exemple :
Definir ( [
variable = valeur ;
variable2 = valeur2
] ;
calcul )
La fonction Definir définit les variables de gauche à droite. Vous pouvez utiliser des variables précédemment définies (par exemple, des variables que vous avez définies avec l'action de script Définir variable) pour spécifier de nouvelles valeurs de variable, de même qu'imbriquer plusieurs fonctions Definir les unes dans les autres. Si vous utilisez une variable précédemment définie avec une fonction Definir imbriquée, la variable intervient uniquement au sein de la fonction imbriquée (comme si vous aviez défini une variable complètement unique). Voir l'exemple Ville ci-dessous.
Une fois définies, les variables locales et globales peuvent être référencées dans n'importe quel calcul sur lequel elles peuvent porter. Les variables locales définies dans un calcul portent sur le fichier, mais sont uniquement disponibles lorsque des scripts ne sont pas en cours d'exécution. Consultez la section Utilisation de variables.
Exemples 
Definir ( x = 5 ; x*x ) renvoie 25.
Definir ( [ x = 5 ; au carré = x*x ; au cube = au carré*x] ; au cube ) renvoie 125.
L'exemple suivant renvoie San Francisco - Paris.
Definir (
Ville = "Paris" ;
Definir (
Ville = "San Francisco" ;
Ville & " - "
)
& Ville )
L'exemple suivant définit une variable locale sur le jeu de privilèges du compte actif et renvoie le contenu de la variable. Si ce calcul est utilisé dans un script, la variable locale sera disponible pendant la durée du script.
Definir ( $PRIVILEGE_SET = Obtenir ( NomPrivilègesCompte ) ; $PRIVILEGE_SET ) renvoie [Accès intégral] si ce calcul est évalué pour un compte disposant du jeu de privilèges d'accès Accès intégral.
L'exemple qui suit définit le compteur d'une variable locale pour la répétition 50 sur une valeur de 120:
Definir ( $Nombre[50] = 120 ; $Nombre[50]*2 ) renvoie la valeur 240.
Dans l'exemple suivant, vous verrez comment transférer des paramètres désignés à l'aide des fonctions Evaluation, Definir et Obtenir ( ParamètreScript ), en autorisant uniquement l'accès à la variable "a" (l'exemple renvoie 6) :
ParamètreScript = "a = 5 ; b = 10"
Evaluer (
"Definir ( ["
& Obtenir ( ParamètreScript ) & "
] ;
a+1 )"
)
L'exemple suivant vous montre comment transférer des paramètres désignés, en autorisant l'accès aux variables "a" et "b". Le premier paramètre simplifié rend le second paramètre plus complexe (l'exemple renvoie 6, 12) :
ParamètreScript = "a = 5 ; b = 10"
Evaluer (
"Definir ( ["
& Obtenir ( ParamètreScript ) & "
] ;
a+1 & \", \" & b+2 )"
)
L'exemple suivant montre comment transférer des paramètres définis, tout en conservant la possibilité de vérifier la syntaxe du deuxième paramètre de la fonction Definir (l'exemple renvoie 6, 12) :
ParamètreScript = "a = 5 ; b = 10"
Definir ( [
a = Evaluer (
"Definir ( ["
& Obtenir ( ParamètreScript ) & "
] ;
a )"
),
b = Evaluer (
"Definir ( ["
& Obtenir ( ParamètreScript ) & "
] ;
b )"
)
] ;
a+1 & ", " & b+2 )
Rubriques connexes 
Page de référence des fonctions (liste des catégories)
Page de référence des fonctions (liste alphabétique)
A propos des formules
A propos des fonctions
Définition de rubriques Calcul
Utilisation des opérateurs dans les formules
Utilisation de variables