ScriptableFlowRunnerResult : inclus dans le périmètre

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 6 minutes de lecture
  • Capture le résultat de l’utilisation de ScriptableFlowRunner pour exécuter un flux, un flux secondaire ou une action. Inclut des données telles que l’ID de contexte, le domaine et toutes les sorties de l’exécution du flux.

    Utilisez ces méthodes dans vos scripts côté serveur avec l’identificateur d’espace de noms sn_fd.

    Ordre de l’appel d’API

    Créez et exécutez des flux, des flux secondaires et des actions à l’aide de ces API dans l’ordre suivant :

    1. FlowAPI : crée un objet de générateur
    Utilisez getRunner() pour instancier l’objet générateur ScriptableFlowRunner.
    2. ScriptableFlowRunner : spécifier le Concepteur de flux contenu à exécuter
    Utilisez ces méthodes dans l’ordre suivant pour créer le modèle de générateur :
    1. Utilisez l’une des méthodes action(),datastream(), flow() ou subflow() pour spécifier le type d’objet Concepteur de flux à construire.
    2. Utilisez une ou plusieurs méthodes telles que addInput(),inDomain() ou quick() pour spécifier les paramètres d’exécution.
    3. Utilisez la méthode run() pour exécuter l’action, le flux ou le flux secondaire avec les paramètres fournis et renvoyer un objet ScriptableFlowRunnerResult.
    3. ScriptableFlowRunnerResult : récupérer Concepteur de flux les détails de l’exécution
    Utilisez une ou plusieurs méthodes telles que getContextId(),getOutputs() et getDomainId() pour afficher les détails de l’exécution.

    Exemple

    Cet exemple montre comment créer un objet générateur ScriptableFlowRunner et l’utiliser pour exécuter une action d’approbation sur un enregistrement spécifique. Un objet ScriptableFlowRunnerResult capture les arguments d’exécution et les sorties d’action.

    
    (function() {
      try {
    
        var inputs = {}; 
    
        inputs['sys_id'] = '57af7aec73d423002728660c4cf6a71c';  // Pass the record's sys_id in as input.  
    
        var result = sn_fd.FlowAPI.getRunner()  // Create a ScriptableFlowRunner builder object.
          .action('global.markapproved')        // Run the global scope action named markapproved.
          .inForeground()
          .inDomain('TOP/ACME')                 // Run the action from the TOP/ACME domain.                               
          .withInputs(inputs)
          .run();                               // Run the action and return a FlowRunnerResult object.
    
        var contextId = result.getContextId();  // Retrieve the context ID from the result
        var dateRun = result.getDate();
        var domainUsed = result.getDomainId();  // Retrieve the Domain ID from the result.
        var flowName = result.getFlowObjectName();
        var flowObjectType = result.getFlowObjectType();
    
        var outputs = result.getOutputs();            // Retrieve any outputs from the action execution.
        var newApprovalStatus = outputs['approval'];  // Echo back the approval status for verification.
    		
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    	
    })();
       

    ScriptableFlowRunnerResult : getOutputs()

    Renvoie les sorties d’une action, d’un flux ou d’un flux secondaire terminé Concepteur de flux .

    Tableau 1. Paramètres
    Nom Type Description
    Aucun
    Tableau 2. Renvoie
    Type Description
    Objet Objet contenant la sortie d’une action, d’un flux ou d’un flux secondaire terminé Concepteur de flux .

    Cet exemple montre comment récupérer les sorties à partir d’une exécutions d’action Concepteur de flux , de flux ou de flux secondaire avec l’API ScriptableFlowRunner .

    (function() {
      try {
    
        var result = sn_fd.FlowAPI.getRunner()
          .action('global.test_action')
          .inForeground()
          .timeout(12000)
          .run();
    
        gs.info(result.getOutputs());
    
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    
    })();
    Sortie :
    Flow Designer: Warning. This is an important log message. 

    ScriptableFlowRunnerResult : getFlowObjectType()

    Renvoie le type d’exécution d’objet Concepteur de flux .

    Tableau 3. Paramètres
    Nom Type Description
    Aucun
    Tableau 4. Renvoie
    Type Description
    Type d’objet de flux Le type d’exécution d’objet Concepteur de flux , qui est soit une action, soit un flux, soit un flux secondaire.

    Cet exemple montre comment récupérer le type d’objet de flux à partir de l’API ScriptableFlowRunnerResult .

    (function() {
      try {
    
        var result = sn_fd.FlowAPI.getRunner()
          .flow('global.test_flow')
          .inForeground()
          .timeout(12000)
          .run();
    
        gs.info(result.getFlowObjectType());
    
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    
    })();
    Sortie :
    flow

    ScriptableFlowRunnerResult : getFlowObjectName()

    Renvoie le champ d’application et le nom interne de l’action, du flux ou de l’exécution Concepteur de flux du flux secondaire.

    Tableau 5. Paramètres
    Nom Type Description
    Aucun
    Tableau 6. Renvoie
    Type Description
    Chaîne Champ d’application et nom interne de l’exécutions de l’action Concepteur de flux , du flux ou du flux secondaire. Par exemple, global.emailflow.

    Cet exemple montre comment récupérer le nom du flux, du flux secondaire ou du nom de l’action à partir d’un objet ScriptableFlowRunnerResult.

    (function() {
      try {
    
        var result = sn_fd.FlowAPI.getRunner()
          .flow('global.test_flow')
          .inForeground()
          .timeout(12000)
          .run();
    
        gs.info(result.getFlowObjectName());
    
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    
    })();
    Sortie :
    global.test_flow

    ScriptableFlowRunnerResult : getDomainId()

    Renvoie la sys_id du domaine dans lequel l’action, le flux ou le Concepteur de flux flux secondaire a été exécuté.

    Tableau 7. Paramètres
    Nom Type Description
    Aucun
    Tableau 8. Renvoie
    Type Description
    Chaîne La sys_id du domaine dans lequel l’action, le flux ou le flux secondaire s’est Concepteur de flux exécuté.

    Cet exemple montre comment récupérer un ID de domaine à partir d’un objet ScriptableFlowRunnerResult.

    (function() {
      try {
    
        var result = sn_fd.FlowAPI.getRunner()
          .flow('global.test_flow')
          .inForeground()
          .inDomain('TOP/ACME')
          .timeout(12000)
          .run();
    
        gs.info(result.getDomainId());
    
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    
    })();
    Sortie :
    4ecead85a4da1110598d0c7d6bf75554

    ScriptableFlowRunnerResult : getDate()

    Renvoie la date et l’heure auxquelles une action, un flux ou un flux secondaire s’est Concepteur de flux exécuté en tant qu’objet GlideDateTime.

    Tableau 9. Paramètres
    Nom Type Description
    Aucun
    Tableau 10. Renvoie
    Type Description
    GlideDateTime Date et heure d’exécution du flux, du flux secondaire ou de l’action.

    Cet exemple montre comment récupérer la date et l’heure de l’exécution d’un flux à partir d’un objet ScriptableFlowRunnerResult.

    (function() {
      try {
    
        var result = sn_fd.FlowAPI.getRunner()
          .flow('global.test_flow')
          .inForeground()
          .timeout(12000)
          .run();
    
        gs.info(result.getDate());
    
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    
    })();
    Sortie :
    2020-05-22 18:45:42

    ScriptableFlowRunnerResult : getDataStream()

    Renvoie le flux de données d’une action de flux de données.

    Si la méthode datastream() a été utilisée dans la classe du générateur ScriptableFlowRunner , cela renvoie le flux de données en tant qu’objet ScriptableDataStream. Utilisez la classe ScriptableDataStream pour itérer sur les éléments du flux. Consultez ScriptableDataStream.

    Pour plus d’informations sur les actions de flux de données, consultez Pagination et actions de flux de données.

    Tableau 11. Paramètres
    Nom Type Description
    Aucun    
    Tableau 12. Renvoie
    Type Description
    Flux de données scriptables Objet ScriptableDataStream que vous pouvez utiliser pour parcourir les éléments d’un flux de données. Utilisez les méthodes de la classe ScriptableDataStream pour interagir avec cet objet. Consultez ScriptableDataStream.

    Cet exemple montre comment récupérer un flux de données à partir d’un objet ScriptableFlowRunnerResult.

    var datastream = result.getDataStream();

    ScriptableFlowRunnerResult : getContextId()

    Renvoie l’ID de contexte du flux, du flux secondaire ou de l’action.

    Tableau 13. Paramètres
    Nom Type Description
    Aucun
    Tableau 14. Renvoie
    Type Description
    Chaîne sys_id de l’enregistrement des détails de l’exécution Concepteur de flux pour l’action, le flux ou le flux secondaire.

    Cet exemple montre comment récupérer un ID de contexte à partir d’un objet ScriptableFlowRunnerResult.

    var contextId = result.getContextId();
    Sortie :
    4ecead85c4da1110598d0c7d6bf73554

    ScriptableFlowRunnerResult : debug()

    Renvoie des informations sur le flux, le flux secondaire ou l’action exécuté, y compris l’ID de contexte, l’ID de domaine et les sorties d’exécution.

    Tableau 15. Paramètres
    Nom Type Description
    Aucun
    Tableau 16. Renvoie
    Type Description
    Chaîne Détails d’exécution sur l’exécution, l’exécution de l’action, du flux ou du Concepteur de flux flux secondaire.
    • Nom de l’objet de flux : nom du flux, du flux secondaire ou de l’action.
    • Type d’objet de flux : flux, flux secondaire, action ou action de flux de données.
    • ID de domaine : ID du domaine dans lequel le flux, le flux secondaire ou l’action s’est exécuté.
    • result time : durée d’exécution.
    • ID de contexte : Sys_id de l’enregistrement des détails de l’exécution Concepteur de flux pour l’action, le flux ou le flux secondaire.
    • Nombre de sorties : nombre de sorties d’action ou de flux secondaire.

    Cet exemple montre comment récupérer des informations sur le flux, le flux secondaire ou l’action exécuté à partir de l’objet ScriptableFlowRunnerResult.

    (function() {
      try {
    
        var result = sn_fd.FlowAPI.getRunner()
          .flow('global.test_flow')
          .inForeground()
          .timeout(12000)
          .run();
    
        gs.info(result.debug());
    
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    
    })();
    Sortie :
    *** Script: FlowRunnerResult
    Flow Object Name: global.test_flow
    Flow Object Type: flow
    Domain: null
    Result Time: 2020-06-08 18:28:41
    ContextId: null
    Output count: 0