Altova MapForce 2025 Enterprise Edition

Une variable est un type de composant spécial utilisé pour stocker un résultat de mappage intermédiaire pour un traitement ultérieur. Les variables peuvent être de type simple (par exemple, string, entier, booléennes, etc) ou de type complexe (une structure arborescente). Voir les exemples des deux types dans les sous-rubriques ci-dessous.

 

Un des aspects les plus importantes concernant les variables est qu'elles sont des séquences, et qu'elles peuvent être utilisées pour créer des séquences. Le terme séquence signifie une liste d’items zéro ou plus. Cela permet à une variable de traiter plusieurs items pour la durée du cycle de vie du mappage. Pour plus d’information, voir aussi Règles et stratégies de mappage. Toutefois, il est également possible d’assigner la valeur à une variable une fois et préserver cette valeur pour le reste du mappage. Pour des détails, voir Changer le contexte et l’étendue des variables.

 

Pour les détails sur comment ajouter une variable à un mappage, voir Ajouter une Variable.

 

Variables simples

Une simple variable est créée pour représenter des types atomiques tels que les strings, nombres booléennes (voir la capture d'écran ci-dessous).

mf_variable_simple

 

Variables complexes

Une variable complexe a une structure d’arborescence. Les structures sur lesquelles une variable complexe peut être basée sont résumées dans la liste ci-dessous.

Édition de base de MapForce :

Structures de schéma XML

Édition professionnelle de MapForce :

Structure de schéma XML

Structure de base de données

Édition MapForce Enterprise :

Structure de schéma XML

Structure de base de données

Structure EDI

Structure FlexText

Structure de schéma JSON

 

Exemple 1 : Variable basée sur Schéma XML

Vous pouvez créer une variable de type complexe en fournissant un schéma XML qui définit la structure de la variable (voir la capture d’écran ci-dessous). Si le schéma définit des éléments globalement, vous pouvez choisir lequel doit devenir le nœud de racine de la structure variable. Veuillez noter qu’une variable n’a pas de fichier XML d’instance associé. Les données de la variable sont calculées durant l’exécution du mappage.

mf_variable_complex_schema

Exemple 2 : Variable basée sur la base de données (éditions MapForce Professional et Enterprise)

Si vous choisissez une structure de base de données pour votre variable (voir la capture d’écran ci-dessous), vous pouvez choisir une table de base de données spécifique en tant qu'item de racine pour la structure de variable. MapForce vous permet de créer des variable basés sur BD avec une arborescence de tables associées.

mf_variable_complex_db

L’arborescence de tables associées représente une structure in-memory qui n’a pas de connexion vers la base de données lors de l’exécution. La variable décrit uniquement la structure, mais ne fait rien avec les données. Ce implique la chose suivante :

 

Aucune validation basée sur le type de données

Aucune possibilité d’utiliser le filtre SQL WHERE

Aucune action de table dans les paramètres ou variables

Aucune gestion automatique de clés étrangères

Aucune vérification de clé primaire/étrangère

 

Compute-when

Dans les deux exemples ci-dessus, chaque variable est dotée d’un élément dénommé compute-when. Connecter cet élément est optionnel : Ceci vous permet de contrôler comment la valeur de variable doit être calculée dans le mappage. Pour plus d’informations, voir Changer le contexte et l’étendue des variables.

 

Variables avec des entrées dupliquées

Si nécessaire, les items d’une structure de variable peuvent être dupliqués pour accepter les données de plus d’une connexion source. Ceci est semblable aux entrées dupliquées dans les composants standard. La capture d’écran ci-dessous illustre une variable simple avec des entrées dupliquées.

mf_variable_simple_duplicated

 

Mappages en chaîne par rapport aux variables

Les variables peuvent être comparées aux composants intermédiaires d’un mappage en chaîne. Néanmoins, les variables sont plus flexibles et pratiques si vous ne devez pas produire de fichiers intermédiaires à chaque étape du mappage. La table suivante souligne les différences entre les variables et les mappages en chaîne.

 

Mappages enchaînés

Variables

Les mappages en chaîne impliquent deux étapes indépendantes. Par exemple, un mappage a trois composants, notamment A, B et C. Étape 1 : mapper des données de A à B. Étape 2 : mapper des données de B à C.

Vous pouvez contrôler quand et combien de fois la valeur variable est calculée quand le mappage est exécuté. Pour les détails, voir Changer le contexte et l’étendue des variables.

Lorsque le mappage est exécuté, les résultats intermédiaires seront stockés extérieurement dans des fichiers.

 

Lorsque le mappage est exécuté, des résultats intermédiaires sont stockés intérieurement. Aucun fichier externe contenant des résultats d’une variable n’est produit.

Le résultat intermédiaire peut être consulté en utilisant la touche d'aperçu.

Un résultat de variable ne peut pas être consulté, puisqu'il est calculé lors de l’exécution du mappage. Vous pouvez, néanmoins utiliser le débogueur pour voir les données produites par la variable.

 

Note :les variables ne sont pas prises en charge si le langage de transformation de mappage est réglé sur XSLT 1.0.

 

© 2018-2024 Altova GmbH