Introduction aux sorties dynamiques
Créez un exemple d’action qui génère des sorties dynamiques à utiliser dans un flux.
Avant de commencer
Procédure
-
Créer des enregistrements de connexion et d’informations d’identification pour les sorties dynamiques
Cet alias de connexion et d’informations d’identification fournira l’URL de base et le compte d’utilisateur nécessaires pour configurer les étapes REST de vos actions de collecte de données.
-
Créer une action de collecte de données pour obtenir un schéma d’enregistrement
Cette action de collecte de données convertit un enregistrement unique en objet JSON pour une sortie dynamique d’enregistrement.
-
Créer une action de collecte de données pour obtenir un tableau de schéma d’enregistrements
Cette action de collecte de données convertit un enregistrement de liste d’enregistrements en tableau JSON d’objets pour une sortie dynamique d’enregistrements.
-
Créer une action personnalisée pour tester les sorties dynamiques
Cette action personnalisée illustre deux types de données de sortie dynamiques. Une sortie dynamique génère un objet pour un seul enregistrement. Une autre sortie dynamique génère un tableau d’objets pour une liste d’enregistrements.
Créer des enregistrements de connexion et d’informations d’identification pour les sorties dynamiques
Créez les alias, les connexions et les informations d’identification que les étapes REST utiliseront pour vous connecter à votre instance locale.
Avant de commencer
Rôle requis : admin
Procédure
- Accédez à la Tout > Connexions et informations d'identification > Informations d'identification.
-
Sélectionnez Nouveau, Informations d’identification pour l’authentification de base et saisissez ces valeurs de champ.
- Pour Nom, saisissez Administrateur local.
-
Pour Nom d’utilisateur, saisissez un compte utilisateur ayant accès à Concepteur de flux et à l’API REST.
Par exemple, saisissez admin.
- Pour Mot de passe, saisissez le mot de passe du compte.
- Sélectionnez Soumettre pour créer l’enregistrement d’informations d’identification.
- Accédez à la Tout > Connexions et informations d'identification > Alias de connexion et d'informations d'identification.
-
Sélectionnez Nouveau et entrez les valeurs de ces champs.
- Pour Nom, saisissez Instance locale.
- Acceptez la valeur HTTP par défaut pour le type de connexion.
- Sélectionnez Soumettre pour créer l’enregistrement Alias de connexion et d’informations d’identification.
-
Sélectionnez l’alias que vous avez créé.
Par exemple, sélectionnez Instance locale.
-
Dans la liste connexe Connexions, sélectionnez Nouveau et saisissez ces valeurs de champ.
- Pour Nom, entrez Mon instance.
-
Pour Informations d’identification, sélectionnez l’enregistrement Informations d’identification d’authentification de base que vous avez créé.
Par exemple, sélectionnez les informations d’identification de l’administrateur local .
-
Pour URL de connexion, saisissez l’URL de base de votre instance, y compris la barre oblique à la fin.
Incluez le préfixe de l’URL https:// et ajoutez une barre oblique à la fin de l’URL.Par exemple, https://example.service-now.com/.
- Sélectionnez Soumettre pour créer l’enregistrement Connexion HTTP(s).
Créer une action de collecte de données pour obtenir un schéma d’enregistrement
Créez une action de collecte de données pour rechercher un schéma de table et le convertir en objet JSON.
Avant de commencer
Pourquoi et quand exécuter cette tâche
- Une étape REST pour collecter les données de schéma de table pour une table sélectionnée. Le corps de la réponse de l’étape REST est au format JSON.
- Étape de script pour transformer le corps de réponse JSON de l’étape REST en un objet dynamique. L’objet dynamique se compose de paires nom-valeur JSON, dans lesquelles il y a une entrée pour chaque champ de la table.
- Une variable de sortie nommée
sortiede type JSON pour stocker l’objet dynamique.
Procédure
- Accédez à la Tout > Automatisation des processus > Studio de workflow.
- Sur la page d’accueil, sélectionnez Actions.
-
Sélectionnez Nouveau , puis sélectionnez Nouvelle action.
- Sur l’écran Propriétés de l’action, dans le champ Nom, saisissez Obtenir le schéma d’objet ServiceNow (dynamique).
- Sélectionnez Soumettre.
-
Dans le Plan d’action, sélectionnez Entrées.
- Dans l’en-tête Entrée d’action, sélectionnez Créer une entrée.
- Dans les champs Étiquette et Nom , saisissez Table.
- Dans le champ Type, sélectionnez Chaîne.
- Pour rendre cette entrée obligatoire, basculez le curseur Obligatoire afin qu’il soit actif.
-
Dans Plan d’action, sélectionnez l’icône Ajouter une nouvelle étape (icône
) sous Entrées et sélectionnez Étape REST.
-
Sous l’en-tête de l’étape REST, renseignez les champs suivants.
Champ Valeur Connexion Laissez l’option Utiliser l’alias de connexion sélectionnée. Alias de connexion Sélectionnez l’icône Créer un nouvel enregistrement (icône ) pour créer une connexion HTTP(s) ou utilisez une connexion existante pour votre instance. Les informations d’identification pour la connexion HTTP(s) doivent utiliser les informations d’identification d’authentification de base. En outre, l’URL de connexion doit être l’URL de base de votre instance, y compris la barre oblique à la fin. Pour plus d’informations sur les connexions et les informations d’identification, consultez Mise en route des connexions et Mise en route des informations d’identification.
Demande de version Laissez l’option Manuellement sélectionnée. Chemin d'accès à la ressource Entrez api/now/processflow/table/, puis sélectionnez le sélecteur de pastilles de données ( ). Sélectionner Entrées > Table. Ensuite, entrez /schema.
Méthode HTTP Entrer GET Paramètres de requêtes Sélectionnez l’icône Plus ( pour ajouter un nouveau paramètre de requête. Ensuite, dans le champ Nom , entrez get_choices et vrai dans le champ Valeur .
-
Dans Plan d’action, sélectionnez l’icône Ajouter une nouvelle étape (icône
) sous votre étape REST et sélectionnez l’étape Script .
- Dans la section Variables d’entrée, sélectionnez Créer une variable.
- Dans le champ Nom , saisissez la charge utile.
-
En regard du champ Valeur , sélectionnez le sélecteur de pastilles de données (
) et sélectionnez Étape REST > Corps de la réponse.
-
Dans le champ Script, entrez le code suivant.
(function execute(inputs, outputs) { var payload = JSON.parse(inputs.payload); var columns = payload.result.data.columns; var schema = columns.map(function(column) { var value = { label: column.label, name: column.name, type: getCOType(column.definition.base_type), }; if (column.definition.type === 'choice') { value.type = 'choice'; value.choices = column.definition.choices; } if (column.definition.base_type === 'GUID') { value.children = [ { label: 'Link', name: 'link', type: 'string' }, { label: 'Value', name: 'value', type: 'string' }, ]; } return value; }); outputs.schema = { data: { type: 'object', children: schema, }, }; function getCOType(type) { if (type === 'GUID') return 'reference'; return type; } })(inputs, outputs); - Dans la section Variables de sortie, sélectionnez Créer une variable.
- Dans les champs Étiquette et Nom , saisissez le schéma.
- Dans le champ Type , sélectionnez JSON.
-
Dans le Plan d’action, sélectionnez Sorties.
- Dans l’en-tête Sortie de l’action, sélectionnez Créer une sortie.
- Dans les champs Étiquette et Nom , entrez sortie.
- Dans le champ Type , sélectionnez JSON.
- Dans l’en-tête Sortie d’action, sélectionnez Quitter le mode d’édition.
-
En regard du champ Valeur , sélectionnez le sélecteur de pastilles de données (
) et sélectionnez Étape Script > Schéma.
-
Dans l’en-tête Action, sélectionnez Enregistrer , puis Testerpour tester l’action.
- Sur l’écran Action de test, saisissez incident pour l’entrée Table .
- Sélectionnez Exécuter le test.
- Vérifiez les détails d’exécution de l’action.
Votre action de collecte de données s’exécute avec succès si la valeur d’exécution deschampsest un objet complexe dans un format similaire à l’exemple abrégé suivant.{ "data": { "type": "object", "children": [ { "name": "active", "label": "Active", "type": "boolean" }, { "name": "activity_due", "label": "Activity due", "type": "datetime" }, ... - Dans l’en-tête Action, sélectionnez Publier pour mettre l’action à la Get ServiceNow Object Schema (Dynamic) disposition des autres flux et actions dans le champ d’application global.
Créer une action de collecte de données pour obtenir un tableau de schéma d’enregistrements
Créez une action de collecte de données pour générer un tableau d’objets à partir d’une liste d’enregistrements.
Avant de commencer
Pourquoi et quand exécuter cette tâche
- Une étape REST pour collecter les données de schéma de table pour une table sélectionnée. Le corps de la réponse de l’étape REST est au format JSON.
- Étape de script pour transformer le corps de réponse JSON de l’étape REST en un objet dynamique. L’objet dynamique se compose d’un tableau JSON d’objets, où chaque enregistrement source est converti en un seul objet du tableau.
- Une variable de sortie nommée
sortiede type JSON pour stocker l’objet dynamique.
Procédure
- Accédez à la Tout > Automatisation des processus > Studio de workflow.
- Sur la page d’accueil, sélectionnez Actions.
-
Sélectionnez Nouveau , puis sélectionnez Nouvelle action.
- Sur l’écran Propriétés de l’action, dans le champ Nom, saisissez Obtenir le schéma Array.Object ServiceNow (dynamique).
- Sélectionnez Soumettre.
-
Dans le Plan d’action, sélectionnez Entrées.
- Dans l’en-tête Entrée d’action, sélectionnez Créer une entrée.
- Dans les champs Étiquette et Nom , saisissez Table.
- Dans le champ Type, sélectionnez Chaîne.
- Pour rendre l’entrée obligatoire, basculez le curseur Obligatoire afin qu’il soit actif.
-
Dans Plan d’action, sélectionnez l’icône Ajouter une nouvelle étape (icône
) sous Entrées et sélectionnez l’étape REST .
-
Sous l’en-tête de l’étape REST, renseignez les champs suivants.
Champ Valeur Connexion Laissez Utiliser l’alias de connexion sélectionné. Alias de connexion Sélectionnez l’icône Créer un nouvel enregistrement (icône ) pour créer une connexion HTTP(s) ou utilisez une connexion existante pour votre instance. Les informations d’identification pour la connexion HTTP(s) doivent utiliser les informations d’identification d’authentification de base. En outre, l’URL de connexion doit être l’URL de base de votre instance, y compris la barre oblique à la fin.
Demande de version Laissez l’option Sélectionné manuellement. Chemin d'accès à la ressource Entrez api/now/processflow/table/, puis sélectionnez le sélecteur de pastilles de données ( ). Sélectionner Entrées > Table. Enfin, entrez /schema
Méthode HTTP Entrer GET Paramètres de requêtes Sélectionnez l’icône Plus ( pour ajouter un nouveau paramètre de requête. Ensuite, dans le champ Nom , entrez get_choices et vraidans le champ Valeur .
-
Dans Plan d’action, sélectionnez l’icône Ajouter une nouvelle étape (
) sous votre étape REST et sélectionnez l’étape Script.
- Dans la section Variables d’entrée, sélectionnez Créer une variable.
- Dans le champ Nom , saisissez la charge utile.
-
En regard du champ Valeur , sélectionnez le sélecteur de pastilles de données (
) et sélectionnez Étape REST > Corps de la réponse.
-
Dans le champ Script, entrez le code suivant.
(function execute(inputs, outputs) { var payload = JSON.parse(inputs.payload); var columns = payload.result.data.columns; var schema = columns.map(function(column) { var value = { label: column.label, name: column.name, type: getCOType(column.definition.base_type), }; if (column.definition.type === 'choice') { value.type = 'choice'; value.choices = column.definition.choices; } return value; }); outputs.schema = { data: { type: 'array.object', attributes: { child_type: 'object', }, children: schema, }, }; function getCOType(type) { if (type === 'GUID') return 'string'; return type; } })(inputs, outputs); - Dans la section Variables de sortie, sélectionnez Créer une variable.
- Dans les champs Étiquette et Nom , saisissez le schéma.
- Dans le champ Type , sélectionnez JSON.
-
Dans le Plan d’action, sélectionnez Sorties.
- Dans l’en-tête Sortie de l’action, sélectionnez Créer une sortie.
- Entrez la sortie dans les champs Étiquette et Nom .
- Sélectionnez JSON pour le champ Type .
- Sélectionnez Quitter le mode d’édition.
-
En regard du champ Valeur , sélectionnez le sélecteur de pastilles de données (
) et sélectionnez Étape Script > Schéma.
-
Dans l’en-tête Action, sélectionnez Enregistrer , puis Testerpour tester l’action.
- Sur l’écran Action de test, dans le champ Table , saisissez incident.
- Sélectionnez Exécuter le test.
-
Vérifiez les détails d’exécution de l’action.
Votre action de collecte de données s’exécute avec succès si la valeur d’exécution pour la sortie des
champsest un objet complexe qui contient un tableau de paires clé-valeur pourl’étiquette, lenomet lavaleur, comme illustré dans l’exemple abrégé suivant.{ "data": { "type": "array.object", "children": [ { "name": "active", "label": "Active", "type": "boolean" }, { "name": "activity_due", "label": "Activity due", "type": "datetime" }, ...
- Dans l’en-tête Action, sélectionnez Publier pour mettre l’action à la Get ServiceNow Array.Object Schema (Dynamic) disposition d’autres actions dans le champ d’application global.
Créer une action personnalisée pour tester les sorties dynamiques
Créez un exemple d’action pour générer dynamiquement deux sorties d’action, Enregistrement et Enregistrements , qui s’actualisent dynamiquement lorsque la valeur de l’entrée Table change.
Avant de commencer
Pourquoi et quand exécuter cette tâche
Cette action personnalisée utilise deux actions de collecte de données pour renseigner les sorties dynamiques.
Procédure
-
Dans l’en-tête principal, sélectionnez l’icône Créer un flux, un flux secondaire ou une action (icône
), puis sélectionnez Action.
- Dans la fenêtre modale Propriétés de l’action, dans le champ Nom, saisissez Obtenir les enregistrements ServiceNow (dynamique).
- Sélectionnez Soumettre.
-
Dans le Plan d’action, sélectionnez Entrées.
- Dans l’en-tête Entrée d’action, sélectionnez Créer une entrée.
- Dans les champs Étiquette et Nom , saisissez Table.
- Dans le champ Type , sélectionnez Choix dynamique.
- Pour rendre l’entrée obligatoire, basculez le curseur Obligatoire afin qu’il soit actif.
-
Sélectionnez l’icône Activer/désactiver les
pour afficher les options avancées de l’entrée
Table. - Dans le champ Valeur par défaut , saisissez incident.
- Sous Options dynamiques, dans le champ Action , sélectionnez Obtenir des tables ServiceNow : dynamique.
- Sélectionnez Créer une entrée pour créer une autre entrée d’action.
- Dans les champs Étiquette et Nom , saisissez NumberOfRecords.
- Dans le champ Type , sélectionnez Entier.
- Pour rendre l’entrée obligatoire, basculez le curseur Obligatoire afin qu’il soit actif.
-
Sélectionnez l’icône Activer/désactiver les
pour afficher les options avancées de l’entrée
Table. - Dans le champ Valeur par défaut , saisissez 3.
-
Dans Plan d’action, sélectionnez l’icône Ajouter une nouvelle étape (icône
) sous Entrées et sélectionnez l’étape REST .
-
Sous l’en-tête de l’étape REST, renseignez les champs suivants.
Champ Valeur Connexion Laissez Utiliser l’alias de connexion sélectionné. Alias de connexion Sélectionnez l’icône Créer un nouvel ) pour créer une nouvelle Créez une connexion HTTP(s) ou utilisez une connexion existante pour votre instance. Les informations d’identification pour la connexion HTTP(s) doivent utiliser les informations d’identification d’authentification de base. En outre, l’URL de connexion doit être l’URL de base de votre instance, y compris la barre oblique à la fin.
Demande de version Laisser sélectionné manuellement Chemin d'accès à la ressource Entrez api/now/table/ , puis sélectionnez le sélecteur de pastilles de données ( ). Sélectionner Entrées > Table.
Méthode HTTP Entrer GET Paramètres de requêtes Sélectionnez l’icône Plus ( pour ajouter un nouveau paramètre de requête. Ensuite, entrez sysparm_limit dans le champ Nom . En regard du champ Valeur , sélectionnez le sélecteur de pastilles de données (
), puis sélectionnez Entrées > Nombre d'enregistrements.
-
Dans Plan d’action, sélectionnez l’icône Ajouter une nouvelle étape (icône
) sous Entrées et sélectionnez l’étape Script .
- Dans la section Variables d’entrée, sélectionnez Créer une variable.
- Dans le champ Nom , saisissez la charge utile.
-
En regard du champ Valeur , sélectionnez le sélecteur de pastilles de données (
) et sélectionnez Étape REST > Corps de la réponse.
-
Dans le champ Script, entrez le code suivant.
(function execute(inputs, outputs) { var response = JSON.parse(inputs.payload); var records = response.result; outputs.record = records[0]; outputs.records = JSON.stringify(records); })(inputs, outputs); - Dans la section Variables de sortie, sélectionnez Créer une variable.
- Dans les champs Étiquette et Nom , saisissez enregistrement.
- Sélectionnez JSON pour le champ Type .
- Activez le curseur Obligatoire pour qu’il soit actif.
- Sélectionnez Créer une variable pour créer une autre variable de sortie pour l’étape de script.
- Dans les champs Étiquette et Nom , saisissez des enregistrements.
- Dans le champ Type , sélectionnez JSON.
- Pour rendre l’entrée obligatoire, basculez le curseur Obligatoire afin qu’il soit actif.
-
Dans le Plan d’action, sélectionnez Sorties.
- Dans l’en-tête Sortie de l’action, sélectionnez Créer une sortie.
- Dans les champs Étiquette et Nom , saisissez Enregistrements.
- Dans le champ Type , sélectionnez Objet dynamique.
-
Sélectionnez l’icône Activer/
pour afficher les options avancées de la sortie
Enregistrements. - Sous Options dynamiques, sélectionnez Obtenir le schéma Array.Object ServiceNow (dynamique) en tant qu’action.
- Pour rendre l’entrée de table dépendante d’une autre entrée, basculez le curseur Dépend d’une autre entrée pour l’activer.
- Dans le champ Tablee, sélectionnez Table.
- Dans l’en-tête Sortie d’action, sélectionnez Quitter le mode d’édition.
-
En regard du champ Valeur , sélectionnez le sélecteur de pastilles de données (
) et sélectionnez Étape Script > Enregistrements.
- Dans l’en-tête Sortie de l’action, sélectionnez Modifier les sorties > Créer une sortie pour créer une autre sortie d’action.
- Dans les champs Étiquette et Nom , saisissez Enregistrement.
- Dans le champ Type , sélectionnez Objet dynamique.
-
Sélectionnez l’icône Activer/désactiver les
pour afficher les options avancées de la sortie
d’enregistrement. - Sous Options dynamiques, dans le champ Action, sélectionnez Obtenir le schéma d’objet ServiceNow (dynamique).
- Pour rendre l’entrée de table dépendante d’une autre entrée, basculez le curseur Dépend d’une autre entrée pour l’activer.
- Dans le champ Table , sélectionnez Table.
- Dans l’en-tête Sortie d’action, sélectionnez Quitter le mode d’édition.
-
Pour la valeur, sélectionnez le sélecteur de pastilles de données (
) et sélectionnez Étape Script > enregistrement.
-
Dans l’en-tête Action, sélectionnez Enregistrer , puis Testerpour tester l’action.
- Sur l’écran Action de test, sélectionnez n’importe quelle valeur de choix générée dynamiquement pour l’entrée Table .
- Sélectionnez Exécuter le test.
-
Vérifiez les détails d’exécution de l’action.
Votre action s’exécute avec succès si la valeur d’exécution de
l’enregistrementest un objet complexe correctement formaté et si la valeur d’exécution desenregistrementsest un tableau d’objets complexes correctement formaté.
- Dans l’en-tête de l’action, sélectionnez Publier pour mettre l’action à la Get ServiceNow Records (Dynamic) disposition des flux dans le champ d’application global.
Résultats
Vous pouvez maintenant ajouter l’action Get ServiceNow Records (Dynamic) à un flux. Cet exemple d’action génère dynamiquement deux sorties d’action, Enregistrement et Enregistrements, accessibles sous forme de pastilles de données dans le panneau de données. Les pastilles de données s’actualisent dynamiquement lorsque la valeur de l’entrée Table change.