Calculer une expression

www.altova.com Imprimer cette rubrique Page précédente Un niveau supérieur Page suivante

Accueil >  Le langage d'expression FlowForce >

Calculer une expression

Un moyen simple de tester des expressions FlowForce avant de les intégrer dans des tâches est de créer une étape d'exécution qui appelle la fonction builtin_function/system/compute. Pour un exemple étape par étape, voir Créer une tâche "Hello, World!".

 

La fonction builtin_function/system/compute évalue la valeur du paramètre Expression et retourne le résultat calculé. Attention, cette fonction n'a pas de type de retour défini. Le type réel dépend de l'expression calculée. Par exemple, si vous passez dans cette fonction l'expressions 1+1, la fonction retournera la valeur numérique 2. En revanche, si vous passez dans cette fonction l'expression '1+1', elle retournera la valeur string 1+1.

 

Pour mieux comprendre ce concept, créer une étape qui appelle la fonction builtin_function/system/compute et saisir "1+1" dans le champ d'expression. Assurez-vous de déclarer le type de retour de la tâche sous la forme "string", comme ci-dessous.

expr_compute_error

Lorsque vous tenterez d'enregistrer la tâche, FlowForce affichera une erreur "Types string and number do not match". Cette erreur se produit par ce que l'expression calculée est un nombre alors que le type de retour de la tâche est déclarée en tant que valeur string.

 

Pour régler le problème de saisie, soit changer le type de retour de la tâche à "nombre" soit convertir le nombre en un string. L'exemple ci-dessous appelle la fonction d'expression FlowForce string qui convertit un nombre en une valeur de string.

expr_compute_error_fixed

Lorsque vous devez calculer une expression et retourner la valeur en tant que string, vous pouvez en alternative utiliser la fonction builtin_function/system/compute-string. Dans ce cas, veuillez noter que la partie d'expression doivent être délimités du string avec des accolades (voir Intégrer des expressions dans les champs de String ).


© 2019 Altova GmbH