Action Attendre une condition
Mettre en pause un flux jusqu’à ce que les valeurs d’enregistrement correspondent à un ensemble spécifique de conditions.
Rôles et disponibilité
Disponible en tant qu’action Studio de workflow ServiceNow de base. Les utilisateurs disposant du rôle flow_designer ou administrateur peuvent ajouter une action à un flux et définir les détails de la configuration.
Entrées
Fournissez une valeur pour chaque entrée dont votre flux a besoin. Pour ajouter des valeurs dynamiques, vous pouvez également glisser-déplacer les pilules du panneau de données ou les sélectionner dans le sélecteur de pilules.
- Enregistrement
- Type de données : Record Enregistrement dont l’action surveille les changements dans les valeurs de champ. Cet enregistrement peut provenir d’un déclencheur de flux, d’une entrée de flux secondaire ou de la sortie d’une étape de flux précédente.Remarque :Si cet enregistrement est supprimé, le flux cesse d’attendre et continue de s’exécuter.
- Table
- Type de données : Table Name
La table associée à l’enregistrement à surveiller. Cette valeur en lecture seule est définie sur la table associée à l’enregistrement que vous avez sélectionné. Vérifiez que le système prend en charge la condition Attendre pour la table sélectionnée. Pour obtenir la liste des tables non prises en charge, consultez la section Tables non prises en charge.
- Conditions
- Type de données : Conditions Les valeurs d’enregistrement nécessaires pour reprendre l’exécution du flux. Par exemple, si la condition est [État] [est] [Fermé], le flux s’interrompt jusqu’à ce que la condition soit remplie. Une fois atteint, le flux passe à l’étape de flux suivante. Sélectionnez uniquement les conditions qui s’appliquent aux valeurs de champ dans la table à laquelle l’enregistrement appartient. Voir Évaluation de condition pour plus d’informations sur la création de conditions valides.Remarque :Pour les conditions qui dépendent d’une durée spécifique, envisagez d’utiliser Attendre une logique de flux de durée à la place.
- Activer le délai
- Type de données : True/False Option permettant de limiter le temps pendant lequel le flux attend que l’action soit terminée avant de continuer.Remarque :Utilisez l’option Activer le délai d’expiration pour empêcher la poursuite de l’exécution de cette action. Si la condition de continuer n’est jamais remplie, une valeur de délai d’expiration spécifie quand le système ignore l’action Attendre une condition et passe à l’élément suivant dans le flux. Vous devez définir une valeur de durée pour activer un délai d’expiration. Vous pouvez également sélectionner un calendrier si vous souhaitez calculer la date de fin de durée en fonction d’un calendrier de travail spécifique.
- Durée
- Type de données : Duration
Durée d’attente du flux avant de continuer lorsque l’option Activer le délai est sélectionnée. Entrez le temps d’attente en heures, minutes et secondes. Si vous laissez ce champ vide, le flux n’attend pas.
- Calendrier
- Type de données : Choice
Calendrier utilisé pour calculer la durée du délai d’expiration lorsque l’option Activer le délai est sélectionnée. Par exemple, si vous attendez 10 heures dans le cadre d’un calendrier de 08h00 à 17h00 en semaine, le flux attend pendant un ou plusieurs jours ouvrables. Si vous laissez ce champ vide, le délai d’expiration s’exécute sans calendrier.
Sorties
Ces sorties apparaissent dans le panneau Données. Vous pouvez les utiliser comme entrées ailleurs dans votre flux.
- État
- Type de données : Choice L’état d’achèvement de l’action en tant que valeur numérique.
- 0 (réussite)
- 1 (erreur)
Évaluation de condition
- Chaque condition évalue un champ de la table à laquelle l’enregistrement appartient.Remarque :Ne créez pas de conditions qui remontent pas à pas vers une autre table ou qui ne dépendent pas des variables d’élément de catalogue d’un enregistrement connexe.
- Chaque condition spécifie un changement de valeur de champ plutôt qu’une période relative.Remarque :Pour les conditions qui dépendent d’une durée spécifique, envisagez d’utiliser Attendre une logique de flux de durée à la place.
Dans cet exemple, la condition d’attente est valide car le champ État appartient à la table Incident et la condition est un changement de valeur de champ en Fermé.
Dans cet exemple, la condition d’attente n’est pas valide car il s’agit d’une heure relative à la date de création . Les actions dont la condition repose sur un intervalle de temps ne seront pas remplies, l’action n’est donc jamais effectuée.
Attendre l’état de l’incident fermé
Dans cet exemple, un flux secondaire fournit un enregistrement d’incident comme entrée dans l’action Attendre une condition. La condition est valide car elle utilise une valeur de champ de la table Incident.
Directives générales
Suivez ces instructions générales lorsque vous créez des flux en attente d’une condition.
- Ajoutez des conditions de déclenchement à la place des conditions d’attente pour démarrer les flux
- Si vous souhaitez qu’un flux s’exécute uniquement lorsque certaines conditions d’enregistrement sont remplies, créez un flux avec un déclencheur d’enregistrement au lieu de démarrer et de mettre en pause un flux. Un flux en attente consomme plus de ressources système qu’un déclencheur de flux.
- Annuler les flux dont les conditions de reprise ne peuvent jamais se produire
- Empêchez vos flux d’attendre indéfiniment en spécifiant les conditions d’arrêt du flux avec Logique de flux Terminer le flux. Pour libérer des ressources système, vous pouvez également annuler tout flux dont les conditions de reprise ne peuvent jamais être remplies. Par exemple, annuler les flux en attente de mises à jour d’enregistrement d’incident où l’incident associé est fermé.
- Fournir au moins une condition pour reprendre un flux
- L’action Attendre une condition nécessite au moins une condition pour reprendre l’exécution d’un flux. Si vous souhaitez mettre en pause un flux pendant une durée spécifique, utilisez plutôt la logique de flux Attendre pendant un certain temps .
- Restreindre les conditions d’attente aux champs présents dans la table actuelle
- L’action Attendre une condition peut uniquement surveiller les changements apportés aux champs de la table à laquelle appartient l’enregistrement. Ne créez pas de conditions qui permettent de remonter pas à pas vers des champs d’autres tables. L’action ne peut pas détecter les changements apportés aux champs dans les enregistrements connexes ou les variables de catalogue. Par exemple, si une action attend des changements apportés à un enregistrement d’incident, elle ne peut pas détecter les changements apportés à un enregistrement connexe tel qu’un élément de catalogue ou un enregistrement de tâche de changement. Au lieu de créer des conditions d’attente qui remontent à pas vers un autre enregistrement, recherchez l’enregistrement connexe dont vous souhaitez surveiller la valeur et utilisez cet enregistrement comme entrée de votre action Attendre une condition. Évitez de créer des conditions d’attente qui reposent sur des variables de catalogue.
- Utilisez une pastille de données de conditions pour spécifier des conditions dynamiques
- Pour permettre aux concepteurs de flux d’appliquer dynamiquement des conditions, définissez une entrée de type Conditions et glissez-déplacez la pastille de données d’entrée dans le champ Conditions .
Tables non prises en charge
Le système ne prend pas en charge l’option Attendre une condition pour les tables suivantes.
| Catégorie de table | Noms de tables |
|---|---|
| Audit | Audit système [sys_audit], Enregistrement d’audit supprimé [sys_audit_delete], Changement de relation d’audit [sys_audit_relation], Rôles d’audit [sys_audit_role], Changement de relation d’audit [sys_audit_relation], Enregistrement d’audit supprimé [sys_audit_delete] |
| E-mail [sys_email], Compte de messagerie [sys_email_account], Journal d’e-mail [sys_email_log] | |
| Événements | Événement [sysevent], Notification [sysevent_email_action], Papeterie [sysevent_email_style], Modèle d’e-mail [sysevent_email_template], Actions d’e-mail entrant [sysevent_in_email_action], Événement lent [sysevent_pattern], Inscription à l’événement [sysevent_registration], Action des scripts [sysevent_script_action] |
| Ensembles de données à importer | Jeu d’importation [sys_import_set], Ligne de jeu d’importation [sys_import_set_row], Erreur de ligne de jeu d’importation [sys_import_set_row_error], Historique de transformation [sys_import_set_run], Ordinateur [imp_computer], Notification [imp_notification], Emplacement [imp_location], Utilisateur [imp_user] |
| JRobin | Base de données JRobin [jrobin_database], Shard JRobin [jrobin_shard], Ligne de graphe [jrobin_graph_line], Fragments de shard JRobin [jrobin_shard_location], Membre [jrobin_graph_set_member], Archive Round Robin [jrobin_archive], Source de données Round Robin [jrobin_datasource], Définition Round Robin [jrobin_definition], Graphique Round Robin [jrobin_graph], Jeu de graphiques Round Robin [jrobin_graph_set] |
| Journaux | Entrée de journal [syslog], Entrée de journal du portail de services [sp_log] |
| Serveur MID | Propriété du serveur MID [ecc_agent_property], Journal du serveur MID [ecc_agent_log], File d’attente [ecc_queue], Configuration [ecc_queue_config], Statistiques de file d’attente ECC (par agent ECC) [ecc_queue_stats_by_ecc_agent] |
| Analyse des performances | Journal des tâches [pa_job_logs] |
| Observateur d'enregistrements | Répondeurs [sys_rw_action], Répondeurs pour le canal [sys_rw_amb_action] |
| Reporting | Jeu de synthèses [sys_report_summary], ligne de résumé du rapport [sys_report_summary_line] |
| Travaux planifiés | Élément de calendrier [sys_trigger], Diffuser le message [sys_broadcast_message], Relations de messages de diffusion [sys_broadcast_message_m2m], Agent d’avancement [sys_progress_worker], Domaine de l’agent d’avancement [sys_progress_worker_domain] |
| SSO | Propriétés SSO [sso_properties], Propriétés du jeton Digest [digest_properties], Propriétés SAML Update 1 [saml2_update1_properties], Fédération SSO [sso_federation] |
| Cache système | Purge du cache [sys_cache_flush], entrée de cache [sys_db_cache] |
| Clone système | Instance ServiceNow [instance], jeton de sécurité de clone [clone_token], données conservées [clone_preserved_data] |
| Dictionnaire système | Contournement d’entrée de dictionnaire [sys_dictionary_override] |
| Événements système | Processeur d’événements [sys_event_processor] |
| Champs système | Classe de champ [sys_glide_object] |
| Performance du système | État des composants [sys_status], Message de grappe [sys_cluster_message], État du nœud [sys_cluster_state] |
| Index de texte | Pièce jointe de recherche de texte [ts_attachment], Carte d’attribut d’index de texte [ts_attribute_map], Chaîne de recherche de texte [ts_chain], Résumé de chaîne [ts_chain_summary], Carte d’attribut de colonne d’index de texte [ts_column_attribute_map], Configuration des index de texte [ts_configuration], Attribut de configuration d’index de texte [ts_configuration_attribute], Supprimer le document de recherche de texte [ts_deleted_doc], Document de recherche de texte [ts_document], Champ de recherche de texte [ts_field], Groupes de recherche de texte [ts_group], Jeton d’utilisateur japonais [ts_japanese_token_dictionary], Expression de recherche de texte [ts_phrase], Recherches globales [ts_query], Recherches dans la base de connaissances [ts_query_kb], Statistique de recherche de texte [ts_search_stats], Résumés de recherche de texte [ts_search_summary], Mot vide [ts_stop], Dictionnaire de synonymes [ts_synonym_dictionary], Jeu de synonymes [ts_synonym_set], Table de recherche de texte [ts_table], Carte d’attribut de table d’index de texte [ts_table_attribute_map], Recherches de Catalogue de services [sc_ts_query], mot de recherche de texte [ts_word], racines de mots de recherche de texte [ts_word_roots] |
| Ensembles de mises à jour | Ensemble de mises à jour [sys_update_set], Version de mise à jour [sys_update_version], Mise à jour du client [sys_update_xml], Journal de l’ensemble de mises à jour [sys_update_set_log] |
| Mises à niveau | Mises à niveau système [sys_upgrade_history], Détails de mise à niveau [sys_upgrade_history_log], Mesure de mise à niveau système [sys_upgrade_metric], Journal des responsabilités de mise à niveau [sys_upgrade_blame], Manifeste de mise à niveau [sys_upgrade_manifest], État de la mise à niveau [sys_upgrade_state] |
| Analyse d'utilisation | Données d’utilisation pour les applications [ua_app_usage], configurations de compte UsageAnalytics [usageanalytics_count_cfg], métadonnées d’application [ua_app_metadata], nombre UsageAnalytics pour les tables [usageanalytics_count], abonnement [license_details], rôle pour l’abonnement [role_has_license] |
| Utilisateurs | Session utilisateur [sys_user_session], jeton de l’utilisateur [sys_user_token], préférence utilisateur [sys_user_preference], historique du navigateur [sys_ui_navigator_history] |
| Workflow | Exécution du workflow [wf_workflow_execution], Historique du workflow [wf_history], Activité d’exécution du workflow [wf_executing], Commande en file d’attente du workflow [wf_command], Contexte du workflow [wf_context], Historique des transitions du workflow [wf_transition_history] |