Prise en charge des scripts pour les données complexes
Créer et référencer des données complexes à partir d’un script. Utilisez un script lorsque vos données sources proviennent d’un flux de données, d’une réponse d’étape REST ou d’une étape de recherche d’enregistrements.
Utilisez un script pour créer des données complexes lorsque les données proviennent de ces sources.
| Source de données | Créer/mapper des données complexes à partir de |
|---|---|
| Flux de données Flux de réponse d’action | Étape de l'analyseur de script |
| Réponse de l’étape REST | Étape Script |
| Étape Rechercher des enregistrements |
Flux de données Flux de réponse d’action
Les actions de flux de données utilisent un script d’analyseur pour mapper les valeurs des éléments de flux aux valeurs d’objets complexes. Lors de l’écriture d’un script d’analyseur, utilisez des méthodes JavaScript adaptées au format de flux de données. Par exemple, utilisez la classe JSON - Scoped pour analyser ou coder un flux de données JSON.
Les scripts d’analyseur ont accès aux objets d’entrée et de sortie du flux de données, ainsi qu’à une propriété targetObject. Consultez Actions de flux de données pour plus d’informations sur l’analyse d’un flux de réponse pour créer des données complexes.
Réponse de l’étape REST
Vous pouvez convertir une réponse de l’étape REST en un ou plusieurs objets complexes en l’analysant à l’aide d’une étape de script. Pour accéder à une réponse à partir d’une étape de script, vous devez créer une variable de script d’entrée et la mapper à la charge utile de réponse de l’étape REST précédente. Consultez Étape Script pour en savoir plus sur la création de variables d’entrée de script.
Écrivez un script qui mappe les valeurs de réponse REST à des valeurs d’objets complexes. Lors de l’écriture du script de réponse REST, utilisez des méthodes JavaScript adaptées au format de réponse, telles que la méthode JSON parse().
Vous n’avez pas besoin d’utiliser une étape de script pour créer une demande REST à partir de données complexes. Vous pouvez générer des données complexes dans une action ou une étape antérieure, puis les mapper à une entrée de chaîne de l’étape REST. Lors de l’exécution, l’action ou le flux convertit les données complexes en une représentation JSON.
Par exemple, consultez les étapes de script utilisées pour les actions de Introduction aux entrées dynamiques collecte de données. Les actions de collecte de données pour obtenir des noms de table et de champ utilisent toutes deux une étape Script pour analyser une réponse REST dans un objet JSON. Les deux actions de collecte de données créent également des variables de sortie qui stockent des données complexes en tant qu’objets JSON.
Étape Rechercher des enregistrements
Bien que les flux puissent utiliser pour chaque logique de flux pour traiter une liste d’enregistrements, les actions nécessitent une étape de script. L’étape Script remplace la logique de flux Pour chaque par JavaScript, telle qu’une boucle For ou While .
Pour accéder aux données d’enregistrement à partir d’une étape de script, vous devez créer une variable de script d’entrée et la mapper aux données d’enregistrement de l’étape de recherche précédente. Consultez Étape Script pour en savoir plus sur la création de variables d’entrée de script.
Voir Créer une action personnalisée pour générer un tableau d’objets à partir d’une liste d’enregistrements pour un exemple d’action qui convertit une liste d’enregistrements utilisateur en tableau d’objets de contact.
Structures d’objets de remontée pas à pas
Vous pouvez référencer des éléments de la structure d’un objet en effectuant une remontée pas à pas sur le chemin de la structure. Tous les chemins de données complexes commencent par le nom de la source de données, qui est soit l’objet global pour les entrées, soit l’objet global pour les sorties, soit le nom du tableau ou de l’objet que vous avez créé dans le script.
Ensuite, dans le chemin se trouvent les noms de chaque élément structurel référencé, séparés par des points (également appelés points). La liste des noms des éléments structurels est identique à la remontée pas à pas d’un champ de référence où vous répertoriez la structure de la table dans un champ de référence particulier.
Par exemple, supposons que vous définissiez un objet contact en tant que variable Sortie. La structure de l’objet est la suivante.
| Placer dans la structure | Étiquette | Nom | Type |
|---|---|---|---|
| Parent | Contact | contact | Objet |
| Enfant | Prénom | first_name | Chaîne |
| Enfant | Nom | last_name | Chaîne |
| Enfant | Adresses e-mail | email_addresses | Array.Object |
| Petit-fils | Adresse e-mail | email_address | Objet |
| Arrière-petit-enfant | Type | type | Choix |
| Arrière-petit-enfant | Chaîne | ||
| Enfant | Téléphone | telephone_number | Array.Object |
| Enfant | Adresses postales | mailing_address | Array.Object |
Le chemin d’accès à l’élément structurel Prénom est outputs.contact.first_name tandis que le chemin d’accès à l’élément structurel E-mail est outputs.contact.email_addresses[0].email , car vous devez spécifier un élément individuel du tableau par sa valeur d’index JavaScript.
Lignes directrices générales
Gardez ces instructions générales à l’esprit lorsque vous écrivez un script avec des données complexes.
- Utilisez des entrées de chaîne pour convertir des données complexes en une chaîne JSON
- Lorsque vous mappez des données complexes à une entrée de chaîne, Concepteur de flux convertit automatiquement ces données en chaîne JSON. Au lieu d’écrire un script, vous pouvez ajouter une entrée de chaîne à une étape REST et la mapper aux données complexes d’une action ou d’une étape antérieure.
- Enregistrer vos objets en tant que modèles
- Enregistrez vos objets en tant que modèles afin de pouvoir les réutiliser dans d’autres actions, flux et étapes de script.
- Créer des variables d’entrée de script pour accéder aux données a priori
- Créez une variable d’entrée de script pour toutes les données auxquelles vous souhaitez accéder à partir de l’entrée d’action ou d’une étape antérieure. Mappez la variable d’entrée du script à la pastille de données d’entrée ou d’étape. Par exemple, mappez la variable d’entrée de script à une liste d’enregistrements utilisateur que vous avez consultés lors d’une étape précédente.
- Créer une variable de sortie de script pour stocker des données complexes
- Créez une variable de sortie de script pour stocker toutes les données complexes créées par votre script. Les variables de sortie du script doivent correspondre aux valeurs définies dans le script. Par exemple, créez un tableau d’objets de contacts pour stocker plusieurs objets de contact. Enregistrez l’objet de contact en tant que modèle afin de pouvoir le réutiliser.
- Mapper la sortie d’action à la variable de sortie du script
- Lorsque vous souhaitez qu’une action personnalisée génère des données complexes, ajoutez une sortie d’action et mappez-la à la pastille de données pour votre variable de sortie d’étape Script. Par exemple, créez un tableau de contacts et chargez le modèle d’objet de contact que vous avez enregistré précédemment. Mappez la sortie de l’action au tableau de contacts produit par votre étape Script.