Altova FlowForce Server 2026 Advanced Edition

Lorsque vous saisissez des valeurs de paramètre, FlowForce effectue une vérification syntaxique et une validation du type de données en temps réel. Afin de garantir que les expressions FlowForce sont syntaxiquement correctes et évaluées comme prévu, respectez les règles suivantes :

 

Utilisez les types de données appropriés.

Placez les chaînes littérales entre guillemets simples ou doubles.

Placez les expressions entre accolades lorsque vous les intégrez dans un champ de type chaîne.

 

Pour plus d'informations, consultez les sous-sections ci-dessous.

 

Règle #1: Utilisez les types de données corrects

Lorsque vous saisissez une expression dans un champ, assurez-vous qu'elle correspond au type de données du champ. Le type de données est affiché à droite du champ (capture d'écran ci-dessous).

expression_field_type

Types de données disponibles

Les types de données disponibles sont décrits ci-dessous.

 

string : p. ex., 'Hello World!'

boolean : true()/false()

number : p. ex., 56

result : Représente la sortie d'une étape d'exécution (par exemple, mappages MapForce, fichiers de transformation StyleVision, fonctions shell, etc.). L'objet result peut suivre le code de sortie, le message d'erreur, stdout, stderr et une collection de flux de résultats.

 

oPour accéder à une valeur de résultat, attribuez-lui un nom (par exemple, output) et transmettez-la à la fonction d'expression results. Cette fonction la convertit en un flux, qui peut être traité avec des fonctions d'expression de flux.

oPour les commandes shell, appelez les fonctions d'expression step-result pour traiter la sortie. Par exemple, pour retourner la sortie standard en tant que stream, utiliser stdout(output). Pour retourner l'erreur standard en tant que stream, utiliser stderr(output).

 

stream : représente de grandes quantités de données binaires stockées sur le disque ou en mémoire.

list : FlowForce prend en charge les listes de tous les types mentionnés ci-dessus (tous les éléments doivent avoir le même type de données), y compris les listes de listes. Les listes peuvent être créées à l'aide de la fonction list().

 

Exemples

Veuillez consulter les exemples ci-dessous :

 

Expression

Sera évaluée en tant que ...

Explication

1/4

0.25

Produit une valeur numérique.

1+1==2

true

Produit une valeur booléenne.

'apple'

apple

Produit une valeur de type chaîne.

concat('1','2','3')

123

Produit une valeur de type chaîne qui combine les chaînes d'entrée en une seule.

1+'apple'

-

Non valide : types de données incompatibles (nombre + chaîne)

{content(stdout(result))}

[...] (chaîne)

 

 

Utilise des fonctions imbriquées : stdout() récupère la sortie standard sous forme de flux ; content() convertit le flux en une chaîne.

 

Cette expression n'est validée avec succès que si :

 

La valeur result a été déclarée précédemment.

La valeur result contient la sortie standard d'une commande shell.

L'expression est intégrée dans un champ chaîne.

 

 

Règle #2: Encadrer les chaînes entre guillemets simples ou doubles

Pour être traitée comme une chaîne, une expression doit être encadrée entre guillemets simples ou doubles. Sinon, l'expression peut produire des résultats imprévus ou échouer à la validation.

 

Expression

Sera évaluée en tant que ...

Explication

1+1

2

La valeur est numérique.

'1+1'

1+1

La valeur est une chaîne.

1+1==2

true

La valeur est booléenne.

"a""b"

a"b

Pour échapper le caractère guillemet dans une chaîne, doublez-le.

 

Règle #3: Utiliser des accolades dans des champs chaîne

Dans un champ chaîne, FlowForce évalue l'intégralité du champ, mais seul le texte entre accolades {} est interprété comme une expression. Dans l'exemple ci-dessous, les accolades délimitent l'expression instance-id() du texte littéral qui l'entoure.

expression_in_string05

 

Si un champ est de type expression, n'utilisez pas d'accolades. Par exemple, le paramètre Expression de la fonction intégrée system/compute est un champ de ce type. Voici un exemple correct pour ce champ :

expression_correct

 

La saisie d'accolades dans un champ expression déclenche une erreur syntaxique :

expression_incorrect

 

Pour afficher les caractères { et } littéralement, utilisez des doubles accolades ({{ et }}). Veuillez consulter les exemples ci-dessous :

 

Un champ chaîne avec la valeur suivante...

Sera évaluée en tant que ...

Explication

expression_in_string01

echo Hello, World!

Comme la chaîne ne contient pas d'expression intégrée, aucune accolade n'est utilisée. L'expression est évaluée telle quelle.

expression_in_string02

-

La chaîne ne peut pas être évaluée car l'expression intégrée n'est pas syntaxiquement correcte. FlowForce affiche donc une erreur syntaxique.

expression_in_string03

echo Hello, World!

La chaîne contient une expression syntaxiquement correcte. Cependant, l'expression se trouve dans un champ chaîne, donc le résultat de l'évaluation est le même que pour l'expression echo Hello, World!.

expression_in_string04

echo {'Hello, World!'}

La chaîne ne contient pas d'expression car les caractères d'échappement {{ et }} sont utilisés.

 

© 2020-2026 Altova GmbH