Accéder au contenu principal Passer au contenu complémentaire

SimpleLoop

Crée une boucle basée sur un élément de map d'entrée

La fonction SimpleLoop spécifie que l'élément de map de sortie, associé à l'onglet des expressions d'itération, se répétera de façon récursive en fonction de la valeur de l'expression d'argument de l'élément de map d'entrée.

Lorsqu'un élément de map d'entrée est mappé vers un élément de map de sortie qui se répète, la fonction SimpleLoop est automatiquement créée sur l'élément répétable de sortie ancêtre le plus proche pour définir la boucle. Si aucune clé de tri n'a été spécifiée, l'ordre de la sortie est le même que pour les éléments d'entrée.

Cette fonction peut être utilisée uniquement dans l'onglet Loop ou comme partie d'une expression Aggregate.

Arguments

Input map element (Élément de map d'entrée) Ajouter un élément de boucle depuis la structure d'entrée.
Filter Spécifiez une expression retournant un booléen. Cette expression est évaluée pour chaque instance de la boucle. Si cette expression de filtre retourne true (vrai), l'instance est incluse dans la boucle. Si elle retourne false (faux), l'instance est exclue de la boucle.
Sort Keys (Trier les clés) Utilisez la fonction AscendingSort ou DescendingSort pour trier les opérations de boucle. Vous pouvez en utiliser autant que nécessaire.
Contextes Spécifiez le contexte à l'aide de la fonction EnclosingContext ou NestedContext. La fonction EnclosingContext= spécifie l'élément de map de sortie englobant cette boucle. Si l'élément n'est pas spécifié, l'élément de map ancêtre répétable le plus proche est utilisé.

Propriétés (Propriétés)

Distinct Option Sélectionnez Direct Child si vous souhaitez sélectionner l'élément enfant distinct (Distinct Child Element) dans une liste d'éléments enfants directs de l'élément d'entrée de boucle, ou Element XPath si vous souhaitez saisir un XPath pour référencer un élément d'entrée différent.
Distinct Child Element (Élément enfant distinct) Si vous avez sélectionné l'option Direct child, sélectionnez l'élément d'entrée de map à utiliser pour sélectionner des valeurs distinctes. Si sélectionnée, seules les itérations de la boucle possédant des valeurs distinctes pour l'élément sélectionné sont prises en compte. Si non sélectionnée, toutes les instances de l'élément de map d'entrée sont prises en compte.

Lorsqu'une boucle contient des sous-éléments dupliqués, le champ Distinct Child Element (Élément enfant distinct) propose un filtre pour n'obtenir qu'une instance de chaque sous-élément distinct.

Distinct XPath Si vous avez sélectionné l'option Element XPath, saisissez une expression XPath pour évaluer les éléments distincts. Si la représentation d'entrée n'est pas XML, spécifiez la représentation dans l'expression.

Par exemple, si vous souhaitez utiliser la fonction fn:concat sur les éléments nommés a et b dans une représentation CSV, l'expression doit ressembler à ceci : fn:concat(CSV:a,CSV:b).

Disable sort by distinct child Si vous avez spécifié un élément enfant distinct (Distinct Child Element), cochez ctte case pour conserver le tri par défaut au lieu du tri par enfant distinct. Si la case n'est pas cochée, la sortie est triée en ordre croissant, selon la valeur de l'élément enfant distinct (Distinct Child Element).
Emit Loop Instance If Empty (Émettre des instances de boucle si vide) Cochez cette case si vous souhaitez générer une seule instance de cette boucle dans la sortie, s'il n'y a aucune instance de la boucle d'entrée. Elle se révèle pratique pour la génération d'instance de boucle avec une valeur par défaut.
Stream Input (Stream d'entrée) Cochez cette case pour permettre aux données d'entrée pour cette boucle d'être divisées en morceaux et traitées séparément. Sans cette option, les données d'entrée entières sont lues dans la mémoire avant l'exécution de la transformation. Lorsque l'option Stream Input (Stream d'entrée) est spécifiée, puisque la transformation est traitée en segments, des données entrantes de taille illimitée peuvent être traitées.

Lorsque Stream Input (Stream d'entrée) est sélectionnée, des restrictions importantes sont appliquées sur les expressions de transformation. Pour plus d'informations, consultez Exécution en continu (streaming).

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.