Evaluation

Evalue une expression comme un calcul.

Format 

Evaluation ( Expression {; [ Rubrique1 ; Rubrique2 ;...]} )

Paramètres 

Expression : toute expression ou rubrique de type Texte.

Rubriques : une liste de rubriques dont dépend cette fonction. Lorsque ces rubriques sont modifiées, le calcul met à jour le résultat.

Les paramètres situés entre deux accolades { } sont facultatifs. Veuillez noter que la liste des rubriques facultatives est indiquée entre crochets [ ].

Résultat 

Texte, nombre, date, heure, horodatage, conteneur

Provient de la version 

7.0

Description 

Le paramètre facultatif Rubriques correspond à une liste des rubriques dont dépend ce calcul. Si une rubrique nécessaire n'est pas répertoriée dans la liste, le fait de modifier cette rubrique dépendante ne met pas à jour le résultat du calcul.

Remarques 

Exemple 1 

Evaluation(RubriqueTexte) renvoie 4 lorsque RubriqueTexte contient 2 + 2.

Evaluation("rubriquetexte") renvoie 2 + 2 lorsque rubriquetexte contient 2 + 2.

Evaluation(ResultatRubrique("rubriquetexte")) renvoie 4 lorsque rubriquetexte contient 2 + 2.

Evaluation(RubriqueTexte;[Montant]) renvoie 0,80 lorsque RubriqueTexte contient 0,08 * Montant et la rubrique Montant contient 10,00.

Exemple 2 

Evaluation ( "Definir ( TauxTVA=0,05 ; "& Calcul du taux de TVA & ")" ) renvoie 0,50 lorsque la rubrique Calcul du taux de Y+TVA contient Sous-total * TauxTVA avec Sous-total correspondant à une rubrique numérique de valeur 10,00.

Exemple 3 

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) :

Copier
ParamètreScript = "a = 5; b = 10"
Copier
Evaluation("Definir ( [" & Obtenir ( ParamètreScript ) & "] ; a + 1 )" )

Exemple 4 

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) :

Copier
ParamètreScript = "a = 5; b = 10"
Copier
Evaluation("Definir ( [" & Obtenir ( ParamètreScript ) & "] ; a + 1 & \", \" & b + 2 )" )

Exemple 5 

L'exemple suivant montre comment transférer des paramètres définis, tout en conservant la possibilité de vérifier la syntaxe du second paramètre de la fonction Definir (l'exemple renvoie 6, 12):

Copier
ParamètreScript = "a = 5; b = 10"
Copier
Definir( [a = Evaluation("Permettre( [" & Obtenir ( ParamètreScript ) & "]; a )"),
            b = Evaluation("Definir( [" & Obtenir ( ParamètreScript ) & "] ; b )")] ; a + 1 & ", " & b + 2 )

Exemple 6 

La fonction Evaluation évalue une expression, y compris les valeurs des rubriques considérées comme formule de calcul. La fonction Evaluation vous permet également d'indiquer des dépendances de rubriques de sorte qu'un calcul utilisant cette fonction puisse être déclenché suite à des modifications survenues dans d'autres rubriques du même enregistrement. Cette fonction évalue les formules personnalisées. Par exemple, vous pouvez créer une formule dans la rubrique Total qui calcule la TVA d'un état :

Copier
Evaluation(FormuleTVAEtat) + CoûtExpédition

avec la rubrique FormuleTVAEtat contenant :

Copier
Sous-total * 1.0875

et la rubrique Sous-total contenant le sous-total hors taxe et les frais d'expédition.

La fonction Evaluation dispose d'un second paramètre facultatif à savoir une rubrique dont dépend le calcul. Lorsque le contenu de la rubrique dépendante change, FileMaker Pro procède à une réévaluation du calcul. Dans l'exemple suivant, le calcul Total sera réévalué lorsque le Sous-total changera :

Copier
Evaluation(FormuleTVAEtat; SousTotal) + FraisExpédition

Le paramètre dépendant peut également servir dans d'autres cas. Par exemple :

Copier
Evaluation ( "Obtenir ( HorodatageActuel )" ; [ RubriqueB ; RubriqueC ] )

enregistrera un horodatage dans la rubrique calcul, à chaque fois que RubriqueB ou RubriqueC connaîtront un changement.