PDAutomationProvider : dans le champ d’application, global

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 9 minutes de lecture
  • L’API PDAutomationProvider permet d’insérer une activité facultative dans un processus pendant son exécution.

    Cette API fait partie du module d’extension Playbooks (com.glide.pad.core) et s’exécute dans l’espace de noms sn_pad .

    L’appel de scripts avec cette API nécessite au moins l’une des actions suivantes :
    • L’appelant doit être dans le même champ d’application que celui dans lequel le déclencheur d’activité facultative a été créé.
    • Privilèges d’administrateur.

    Un processus est une série d’activités classées par voies. Une activité facultative est prédéfinie lors de la conception du processus. Les activités ne sont pas planifiées pour s’exécuter à une heure précise. Une activité peut être affectée à une voie et rendue disponible pour s’exécuter pendant l’exécution de la voie. Une activité peut être affectée à un processus et rendue disponible pour s’exécuter pendant l’exécution de la voie.

    Pour créer une activité facultative, la règle de démarrage doit être définie sur Manuel dans la table Activités [sys__activity]. Playbooks ne prend actuellement pas en charge la création d’activités manuelles.

    Un agent ajoute l’activité facultative à une voie ou à une activité par rapport à une autre activité. Le processus doit être en cours d’exécution pour insérer une activité facultative.

    PDAutomationProvider – activateProcess(String processDefinitionSysId)

    Active un playbook.

    Tableau 1. Paramètres
    Nom Type Description
    processDefinitionSysId Chaîne Sys_id d’un playbook.

    Table : définitions des processus [sys__process_definition]

    Tableau 2. Renvoie
    Propriété Description
    Objet Objet contenant les détails de l’activation de la définition du processus.
    {
      "errors": [Array]
      "process_definition": {Object},
      "state": "String"
    }
    erreurs Liste des erreurs. Vide en cas de réussite.

    Type de données : tableau de chaîne(s)

    process_definition Playbook activé et ses propriétés.

    Type de données : objet

    "process_definition":
    {
      "active": Boolean,
      "snapshot": {Object},
      "status": "String"
    }
    process_definition.actif Marqueur indiquant si la définition du processus pour le playbook désactivé est active. Recherchez les définitions de processus dans la liste Définitions de processus [sys__process_definition].
    Valeurs valides :
    • vrai : la définition du processus pour le playbook désactivé est active.
    • faux : la définition du processus pour le playbook désactivé est inactive.

    Type de données : booléennes

    process_definition.instantané Contient des détails sur la définition du processus au moment de l’activation.

    Type de données : objet

    {
      "snapshot":
        {
          "created": "String",
          "processDefinitionSysId": "String"
        }
    }
    process_definition. instantané. créé Date à laquelle le playbook a été créé.

    Type de données : chaîne

    process_definition. instantané. processDefinitionSysId La sys_id du playbook activé.

    Type de données : chaîne

    process_definition.statut Indique l’état de publication du playbook.
    Valeurs possibles :
    • draft : le playbook est à l’état de brouillon.
    • publié : le playbook est à l’état Publié.

    Type de données : chaîne

    État Indique si votre demande d’activation a abouti ou non.
    Valeurs possibles :
    • RÉUSSITE : le playbook a été activé avec succès.
    • ÉCHEC : l’ID du playbook est introuvable.

    Type de données : objet

    L’exemple suivant montre comment activer un playbook.

    var myPlaybook = sn_pad.PDAutomationProvider.activateProcess('cdd1b85e43000210d96e29c28ab8f275');
    gs.info(JSON.stringify(myPlaybook));
    Sortie :
    {
      "process_definition": {
        "active": true,
        "snapshot": {
          "processDefinitionId": "cdd1b85e43000210d96e29c28ab8f275",
          "created": "2024-02-19 22:58:12"
        },
        "status": "published"
      },
      "state": "SUCCESS",
      "errors": []
    }

    PDAutomationProvider – addOptionalActivityRelativeToActivityContext(String contextID, String activityId, String where, String relativeToId)

    Ajoute une activité facultative spécifiée à un processus à exécuter par rapport à une autre activité pendant l’exécution du processus.

    Un contexte d’activité est créé pour chaque activité lorsqu’un processus s’exécute. Le contexte gère également la façon dont l’activité gère l’exécution. Pour plus d’informations, consultez Voies et activités du Concepteur d’automatisation de processus.

    Tableau 3. Paramètres
    Nom Type Description
    ID contexte Chaîne Sys_id de l’exécution de l’activité dans laquelle ajouter l’activité facultative. Pour y accéder, cliquez sur le processus répertorié dans la table Exécutions de processus [sys__context]. L’exécution sélectionnée doit être à l’état En cours.
    activityId Chaîne Sys_id de l’activité facultative répertoriée dans le tableau Activités [sys__activity].
    Remarque :
    Pour créer une activité facultative, la règle de démarrage doit être définie sur Manuel dans la table Activités [sys__activity].
    Chaîne Indique où placer l’activité dans le processus.
    Valeurs valides :
    • APRÈS : exécute cette activité après l’activité relative contexte.
    • AVEC : exécute l’activité en même temps qu’une autre activité relative contexte.
    relativeToId Chaîne ID du contexte d’activité relative après ou avec lequel l’activité facultative s’exécutera. Répertorié dans la table Contexte de l’activité [sys__activity_context].
    Tableau 4. Renvoie
    Type Description
    Booléen Marqueur indiquant si l’exécution de l’activité a été planifiée avec succès.
    Valeurs possibles :
    • vrai : l’exécution de l’activité est planifiée avec succès. La sortie est une chaîne indiquant la réussite.
    • faux : l’exécution de l’activité n’est pas planifiée avec succès. La sortie est un tableau d’un ou plusieurs messages d’erreur.

    En cas d’erreurs, liste d’un ou plusieurs messages d’erreur. Message indiquant un tableau de 0 éléments ou plus dans le cas contraire.

    Tableau En cas d’erreurs, liste d’un ou plusieurs messages d’erreur. Message indiquant un tableau de 0 éléments ou plus dans le cas contraire.
    Messages d’erreur possibles :
    • ID d’activité facultative non valide : La sys_id fournie pour le paramètre n’est activityId pas valide.
    • ID de contexte non valide : le sys_id de concepteur de processus () fourni dans le paramètre n’est contextID pas valide.
    • Type de poste non valide : le type de poste fourni n’est pas valide. Consultez la description du paramètre pour connaître les where types valides.
    • ID relatif non valide : la sys_id fournie pour le paramètre n’est relativeToId pas valide.
    • Activité facultative introuvable : la sys_id fournie pour le activityId paramètre est introuvable.
    • Le processus doit toujours être actif : le processus contenant cette activité doit être actif pour exécuter l’activité facultative.
    • Contexte d’activité relative introuvable : la sys_id fournie pour le relativeToId paramètre est introuvable.

    L’exemple suivant montre comment exécuter une activité facultative simultanément avec le contexte d’activité relatif.

    var contextId = '<context_id>';
    var optionalActivityId = '<optional_activity_id>';
    var where = 'WITH'; // options AFTER, WITH
    var relativeToId = '<relative_activity_context_id>'; // relative activity context ID
    
    var response = sn_pad.PDAutomationProvider.addOptionalActivityRelativeToActivityContext(contextId, optionalActivityId, where, relativeToId);
    
    gs.info(JSUtil.describeObject(response));
    Sortie (réussite) :
    success: boolean = true
    errors: Array of 0 elements

    PDAutomationProvider – addOptionalActivityRelativeToLaneContext(String contextID, String activityId, String where, String relativeToId)

    Affecte une activité facultative à une voie à exécuter pendant le contexte d’exécution de cette voie.

    Un contexte de voie est créé pour chaque voie lorsqu’un processus s’exécute. Le contexte gère également la façon dont la voie gère l’exécution. Pour plus d’informations, consultez Voies et activités du Concepteur d’automatisation de processus.

    Tableau 5. Paramètres
    Nom Type Description
    ID contexte Chaîne Sys_id de l’exécution de l’activité dans laquelle ajouter l’activité facultative. Pour y accéder, cliquez sur le processus répertorié dans la table Exécutions de processus [sys__context]. L’exécution sélectionnée doit être à l’état En cours.
    activityId Chaîne Sys_id de l’activité facultative répertoriée dans le tableau Activités [sys__activity].
    Remarque :
    Pour créer une activité facultative, la règle de démarrage doit être définie sur Manuel dans la table Activités [sys__activity].
    Chaîne Indique où placer l’activité dans le processus.
    Valeurs valides :
    • DERNIÈRE – Exécuter en tant qu’activité finale dans une voie contexte.
    • SUIVANT : exécuter l’activité suivante dans une voie contexte.
    relativeToId Chaîne ID du contexte de voie relative dans lequel l’activité facultative doit être exécutée. Répertorié dans la table Contexte de la voie [sys__lane_context].
    Tableau 6. Renvoie
    Type Description
    Booléen Marqueur indiquant si l’exécution de l’activité a été planifiée avec succès.
    Valeurs possibles :
    • vrai : l’exécution de l’activité est planifiée avec succès. La sortie est une chaîne indiquant la réussite.
    • faux : l’exécution de l’activité n’est pas planifiée avec succès. La sortie est un tableau d’un ou plusieurs messages d’erreur.
    Tableau En cas d’erreurs, liste d’un ou plusieurs messages d’erreur. Message indiquant un tableau de 0 éléments ou plus dans le cas contraire.
    Messages d’erreur possibles :
    • ID d’activité facultative non valide : La sys_id fournie pour le paramètre n’est activityId pas valide.
    • ID de contexte non valide : le sys_id de concepteur de processus () fourni dans le paramètre n’est contextID pas valide.
    • Type de poste non valide : le type de poste fourni n’est pas valide. Consultez la description du paramètre pour connaître les where types valides.
    • ID relatif non valide : la sys_id fournie pour le paramètre n’est relativeToId pas valide.
    • L’activité facultative ne peut pas être ajoutée à la voie : l’activité facultative fournie dans le activityId paramètre ne peut pas être ajoutée par rapport à la voie fournie dans le relativeToId paramètre. Assurez-vous que l’exécution de l’activité sélectionnée est à l’état En cours .
    • Activité facultative introuvable : la sys_id fournie pour le activityId paramètre est introuvable.
    • Le processus doit toujours être actif : le processus contenant cette activité doit être actif pour exécuter l’activité facultative.
    • Contexte de voie relative introuvable : la sys_id fournie pour le relativeToId paramètre est introuvable.

    L’exemple suivant montre comment exécuter une activité facultative en tant qu’activité finale dans un contexte de lane.

    var contextId = '<context_id>';
    var optionalActivityId = '<optional_activity_id>';
    var where = 'LAST'; // options LAST, NEXT
    var relativeToId = '<relative_lane_context_id>'; // relative lane context ID
    
    var response = sn_pad.PDAutomationProvider.addOptionalActivityRelativeToLaneContext(contextId, optionalActivityId, where, relativeToId);
    
    gs.info(JSUtil.describeObject(response));
    Sortie (réussite) :
    success: boolean = true
    errors: Array of 0 elements

    PDAutomationProvider – deactivateProcess(String processDefinitionSysId)

    Désactive un playbook.

    Tableau 7. Paramètres
    Nom Type Description
    processDefinitionSysId Chaîne Sys_id d’un playbook.

    Table : définitions des processus [sys__process_definition]

    Tableau 8. Renvoie
    Propriété Description
    Objet Objet contenant les détails de la désactivation de la définition du processus.
    {
      "errors": [Array]
      "process_definition": {Object},
      "state": "String"
    }
    erreurs Liste des erreurs. Vide en cas de réussite.

    Type de données : tableau de chaîne(s)

    process_definition Le playbook désactivé et ses propriétés.

    Type de données : objet

    "process_definition":
    {
      "active": Boolean,
      "snapshot": {Object},
      "status": "String"
    }
    process_definition.actif Indique si la définition du processus pour le playbook désactivé est active. Recherchez les définitions de processus dans la liste Définitions de processus [sys__process_definition].
    Valeurs possibles :
    • vrai : la définition du processus pour le playbook désactivé est active.
    • faux : la définition du processus pour le playbook désactivé est inactive.

    Type de données : booléennes

    process_definition.description Détails sur votre playbook désactivé.

    Type de données : chaîne

    process_definition.étiquette Le nom du playbook désactivé que les utilisateurs voient dans l’interface.

    Type de données : chaîne

    process_definition.nom Nom du playbook désactivé dans le code. Utilisé uniquement comme paramètre de demande dans le scripting.

    Type de données : chaîne

    process_definition.champ d’application Le sys_id du périmètre de l’application pour lequel votre Playbook est désactivé.

    Type de données : chaîne

    process_definition.statut Si le playbook est publié, il redevient un brouillon.

    Type de données : chaîne

    État Indique si la désactivation a réussi.
    Valeurs possibles :
    • RÉUSSITE : le Playbook a été désactivé avec succès.
    • ÉCHEC : l’ID du playbook est introuvable.

    Type de données : chaîne

    Désactivez le playbook.

    sn_pad.PDAutomationProvider.deactivateProcess('cdd1b85e43000210d96e29c28ab8f275')

    Sorties:

    {"process_definition":{"scope":"global","name":"test","active":true,"description":"","label":"test","status":"draft"},"state":"SUCCESS"}

    PDAutomationProvider – duplicateProcess(String processDefinitionSysId, String label, String description, String scopeId, String triggerTypeId)

    Dupliquer un playbook.

    Tableau 9. Paramètres
    Nom Type Description
    processDefinitionSysId Chaîne Sys_id d’un playbook.

    Table : définitions des processus [sys__process_definition]

    étiquette Chaîne Nom du playbook dupliqué.
    description Chaîne Facultatif. Ajoutez des détails à propos de votre playbook.
    scopeId Chaîne Le sys_id du périmètre de l’application dans lequel vous souhaitez que votre Playbook s’exécute. Le nom inclus dans le périmètre est issu de la table de définition de processus [sys__process_definition] au format scope.name. La saisie de la sys_id pour le champ d’application global permet à votre Playbook de s’exécuter dans n’importe quel périmètre de l’application.
    triggerTypeId Chaîne Le sys_id du déclencheur à partir duquel lancer des exécutions de playbook. Recherchez le type de déclencheur dans la table Type de déclencheur [sys__trigger_type] et copiez son sys_id.
    Tableau 10. Renvoie
    Propriété Description
    Objet Objet contenant des détails de duplication de définition de processus.
    {
      "errors": [Array]
      "processDefinitionSysId": "String",
      "state": "String"
    }
    erreurs Liste des erreurs. Vide en cas de réussite.

    Type de données : tableau de chaîne(s)

    Messages d’erreur possibles :
    • Périmètre introuvable pour scopeId : xyz
    • Définition du processus introuvable pour l’ID : xyz
    • Type de déclencheur introuvable pour triggerTypeId : xyz
    processDefinitionSysId La sys_id du nouveau playbook dans la table Définitions de processus [sys__process_definition].

    Type de données : chaîne

    État Indique si la duplication du playbook a réussi.
    Valeurs possibles :
    • RÉUSSITE : le playbook a été dupliqué avec succès.
    • ÉCHEC : l’ID du playbook, du périmètre de l’application ou du déclencheur est introuvable.

    Type de données : objet

    Cet exemple montre comment dupliquer un playbook avec le sys_id f8ca6192ec210210f8772cbd595eab20. Le nouveau playbook s’appelle Playbook 2.0, a un périmètre d’application global et est déclenché lorsqu’un enregistrement est créé. Le type de déclencheur Création d’enregistrement a une sys_id de ab6951170f1200108c87f4f0ff767e4f.

    sn_pad.PDAutomationProvider.duplicateProcess('f8ca6192ec210210f8772cbd595eab20', 'Playbook 2.0', '', 'global', 'ab6951170f1200108c87f4f0ff767e4f');

    Sortie :

    {"processDefinitionSysId":"6e4f0b8fece9c210f8772cbd595eabda","state":"SUCCESS"}