Types de données FlowForce

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

Accueil >  Le langage d'expression FlowForce >

Types de données FlowForce

FlowForce fonctionne avec les types de données suivants.

 

string

Représente une valeur de string, par exemple : 'Hello, World!'.

 

number

Représente une valeur numérique, par exemple : -1, 0, 56, 0.45565.

 

boolean

Représente une valeur true ou false.

 

result

Il s'agit d'un type abstrait qui représente un résultat produit par une étape d'exécution.

 

Une étape d'exécution peut traiter plusieurs fichiers des exécutables qui peuvent être des mappages MapForce, des fichiers de transformations StyleVision, des fonctions shell, etc. Le type de données result data, donc, représente tout ce qui constitue la sortie de ces fichiers.

 

Si l'étape d'exécution exécute un mappage MapForce, la sortie peut être un fichier XML, XBRL, texte, JSON, et tout autre type de fichier générés par MapForce.

 

Si l'étape d'exécution exécute une transformation StyleVision, la sortie peut être un fichier PDF, Word, HTML, et tout autre type de sortie généré par StyleVision.

 

Pour obtenir un accès à la valeur résultante, lui donner un nom (par exemple, "output"), et lui faire passer à la fonction d'expression {results}. Cela le convertira en un stream, que vous pourrez encore traiter avec des fonctions d'expression stream (voir aussi Appeler des fonctions d'expression ).

 

Si l'étape d'exécution exécute une commande shell, appeler des fonctions d'expression de résultat d'étape spécifiques selon ce que vous souhaitez spécifiquement faire sortir. Par exemple, pour retourner la sortie standard en tant que stream, utiliser l'expression {stdout(output)}. Pour retourner l'erreur standard en tant que stream, utiliser l'expression {stderr(output)}. Pour plus d'informations, voir Fonctions de résultat d'étape.

 

results

Il peut arriver qu'un mappage MapForce ou une transformation StyleVision retourne des objets multiples. Le résultat produit par de telles étapes a results en tant que type de données.

 

Pour gérer ce type de sortie, utiliser la fonction d'expression {results(output)} qui retourne un tableau de streams. Ensuite choisir un stream particulier depuis le tableau en utilisant la fonction nth.

 

Par exemple, la tâche illustrée ci-dessous a été créée depuis un fichier de transformation StyleVision déployé sur FlowForce. Cette tâche prend en tant que paramètre d'entrée un fichier XML et retourne les différentes sorties dans des formats variés.

fs_results_example

La tâche présente trois étapes d'exécution.

 

1. La première étape d'exécution effectue la transformation de données réelle.
2. La seconde étape d'exécution appelle la fonction compute de FlowForce pour obtenir un des résultats de cette transformation. Concrètement, l'expression as-file(nth(results(output), 0)) obtient le premier item dans le tableau des streams, en tant qu'un fichier. L'expression utilise "0" et non pas "1" parce que le tableau a un index basé sur zéro.
3. La troisième étape d'exécution copie le fichier HTML sur le répertoire c:\archive.

 

item

Parfois, vous devez créer des expression qui assemblent ou désassemblent des listes (voir Fonctions de liste ). Une liste consiste en des objets du type générique item. Un item a un type de données abstrait. Vous pouvez déterminer le type de données de item en regardant le type d'objets qui constituent la liste (qui peuvent être des strings, des nombres ou même des streams). Veuillez noter qu'une liste peut contenir uniquement des items du même type de données.

 

L'image ci-dessous illustre une boucle où "item" est de type numérique, puisque la liste elle-même consiste en des valeurs numériques.

expression_field_foreach

Pour un exemple étape par étape qui utilise les listes, voir Copy Files.


© 2019 Altova GmbH