ScriptableFlowRunner – Scoped

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 15 Minuten Lesedauer
  • Erstellen Sie ein Generatorobjekt, das zum Definieren von Parametern für Flow, Subflow und Aktionsausführung verwendet wird. Sie können einen Flow angeben, der in einer bestimmten Domäne ausgeführt werden soll. Starten Sie den Flow, den Subflow oder die Aktionsausführung direkt aus dem Generator, und zeigen Sie die Ergebnisse in einem ScriptableFlowRunnerResult-Objekt an.

    Verwenden Sie diese Methoden in Ihren serverseitigen Skripts mit dem Namespace-Identifier sn_fd.

    API-Aufrufreihenfolge

    Erstellen Sie Flows, Subflows und Aktionen mit diesen APIs in der folgenden Reihenfolge, und führen Sie sie aus:

    1. FlowAPI: Erstellt ein Generatorobjekt
    Verwenden Sie getRunner(), um das ScriptableFlowRunner-Builder-Objekt zu instanziieren.
    2. ScriptableFlowRunner: Geben Sie Flow Designer Inhalt an, der ausgeführt werden soll
    Verwenden Sie diese Methoden in der folgenden Reihenfolge, um das Generatormuster zu erstellen:
    1. Verwenden Sie eine der Methoden action(), datastream(), flow()oder subflow(), um anzugeben, welcher Typ von Flow Designer -Objekt erstellt werden soll.
    2. Verwenden Sie eine oder mehrere Methoden wie addInput(), inDomain()oder quick(), um Ausführungsparameter anzugeben.
    3. Verwenden Sie die Methode run(), um die Aktion, den Flow oder den Subflow mit den angegebenen Parametern auszuführen und ein ScriptableFlowRunnerResult-Objekt zurückzugeben.
    3. ScriptableFlowRunnerResult: Ruft Flow Designer Ausführungsdetails ab
    Verwenden Sie eine oder mehrere Methoden wie getContextId(), getOutputs()und getDomainId(), um Ausführungsdetails anzuzeigen.

    Beispiel

    Dieses Beispiel zeigt, wie ein ScriptableFlowRunner-Generator-Objekt erstellt und verwendet wird, um eine Genehmigungsaktion für einen bestimmten Datensatz auszuführen. Ein ScriptableFlowRunnerResult-Objekt erfasst die Ausführungsargumente und Aktionsausgaben.

    
    (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);
      }
    	
    })();
       

    ScriptableFlowRunner – action(String scopedActionName)

    Identifiziert den Bereich und den Namen der auszuführenden Aktion.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    scopedActionName Zeichenfolge Umfang und Name der auszuführenden Aktion. Beispiel: global.actionName.
    Tabelle : 2. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.

    Dieses Beispiel zeigt, wie ein ScriptableFlowRunner-Generator-Objekt erstellt und verwendet wird, um eine Genehmigungsaktion für einen bestimmten Datensatz auszuführen. Ein ScriptableFlowRunnerResult-Objekt erfasst die Ausführungsargumente und Aktionsausgaben.

    
    (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);
      }
    	
    })();
       

    ScriptableFlowRunner – flow(String scopedFlowName)

    Identifiziert den Bereich und den Namen des auszuführenden Flow.

    Tabelle : 3. Parameter
    Name Typ Beschreibung
    scopedFlowName Zeichenfolge Umfang und Name des auszuführenden Flows. Beispiel: global.flowName.
    Tabelle : 4. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.

    Dieses Beispiel zeigt, wie ein Flow ausgeführt wird, der eine Nachricht protokolliert.

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

    Ausgabe:

    *** Script: FlowRunnerResult
    Flow Object Name: global.test_flow
    Flow Object Type: flow
    Domain: null
    Result Time: 2020-06-08 16:41:13
    ContextId: null
    Output count: 0

    ScriptableFlowRunner – subflow(String scopedSubflowName)

    Identifiziert den Bereich und den Namen des auszuführenden Subflows.

    Tabelle : 5. Parameter
    Name Typ Beschreibung
    scopedSubflowName Zeichenfolge Umfang und Name des auszuführenden Subflows. Beispiel: global.subflowName.
    Tabelle : 6. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.
    (function() {
      try {
    
        var result = sn_fd.FlowAPI.getRunner()
          .subflow('global.test_subflow')
          .inForeground()
          .run();
    
        gs.info(result);
    
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    
    })();

    Ausgabe:

    
    Flow Designer: Cloning a new session to run as as user id: [user_name] from original user session: [user_name]
    Flow Designer: Message to log
    Flow Designer: Reverting cloned session to original user session: [user_name]
    *** Script: FlowRunnerResult
    Flow Object Name: global.test_subflow
    Flow Object Type: flow
    Domain: null
    Result Time: 2020-06-08 16:41:13
    ContextId: null
    Output count: 0

    ScriptableFlowRunner – addInput(String name, Object value)

    Fügt eine einzelne Eingabe hinzu. Wenn der als Argument übergebene Name bereits als separate Eingabe vorhanden ist, ersetzt der neue Wert den bereits vorhandenen Wert.

    Diese Methode fügt eine einzelne Eingabe hinzu. Um ein Objekt zu erstellen und mehrere Eingaben hinzuzufügen, verwenden Sie die Methode withInputs().

    Tabelle : 7. Parameter
    Name Typ Beschreibung
    Name Zeichenfolge Der Name der Eingabe für den Flow, Subflow oder die Aktion.
    Wert Objekt Der Wert der Eingabe für den Flow, Subflow oder die Aktion.
    Tabelle : 8. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.

    In diesem Beispiel wird eine Aktion ausgeführt, die eine einzelne Eingabe namens table_name akzeptiert.

    (function() {
      try {
    
        var result = sn_fd.FlowAPI.getRunner()
          .action('global.test_action')
          .addInput('table_name', 'incident')
          .inForeground()
          .run();
    
        gs.info(result.debug());
    
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    
    })();

    Ausgabe:

    Flow Designer: TableName
    *** Script: FlowRunnerResult
    Flow Object Name: global.test_action
    Flow Object Type: action
    Domain: null
    Result Time: 2020-06-09 00:10:57
    ContextId: null
    Output count: 1

    ScriptableFlowRunner – asUser()

    Führt den Flow als Benutzer aus, der ihn ausgelöst hat, und nicht als System, um schnelle Ausführungen im Hintergrund zu ermöglichen.

    Wenn ein Flow mit schnell () zusammen mit der Methode asUser () ausgelöst wird, wird der Benutzer, der den Flow ausgelöst hat, abgerufen und für die Flow-Ausführung verwendet.

    Tabelle : 9. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 10. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner – Scoped Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.
    Dieses Beispiel zeigt, wie ein ScriptableFlowRunner-Generator-Objekt erstellt und verwendet wird, um eine Genehmigungsaktion für einen bestimmten Datensatz mit den Methoden asUser() und quick() auszuführen. Ein ScriptableFlowRunnerResult-Objekt erfasst die Ausführungsargumente und Aktionsausgaben.
    (function() {
        try {
    
            var outputs = sn_fd.FlowAPI.getRunner() // Create a ScriptableFlowRunner builder object.
            .flow('global.stry53225960_flow_asuser_test')
            .inForeground()
            .quick() //Run the flow from a server-side script.
            .asUser() //Run flow with the roles specified in the flow.
            .run(); // Run the action and return a FlowRunnerResult object.
    
        } catch (ex) {
            var message = ex.getMessage();
            gs.error(message);
        }  
    
    })();

    Fehler

    Diese Fehler können bei der Verwendung der asUser()- Methode auftreten:
    • Das Skript gibt einen Fehler zurück, wenn „asUser()“ nicht zusammen mit „quick()“verwendet wird.
    • Das Skript gibt einen Fehler zurück, wenn asUser() in einem Flow mit definierten Rollen aufgerufen wird.
    • Das Skript gibt einen Fehler zurück, wenn die Methoden withRoles() und asUser() gleichzeitig aufgerufen werden.

    ScriptableFlowRunner – datastream(String scopedDatastreamName)

    Identifiziert den Bereich und den Namen der auszuführenden Datenstromaktion.

    Weitere Informationen zu Datenstromaktionen finden Sie unter Datenstromaktionen und Paginierung.

    Tabelle : 11. Parameter
    Name Typ Beschreibung
    scopedDatastreamName Zeichenfolge Umfang und Name der auszuführenden Datenstromaktion. Beispiel: global.dataStreamActionName.
    Tabelle : 12. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.

    Dieses Beispiel zeigt, wie eine Datenstrom-Aktion ausgeführt wird.

    (function() {
      try {
    
        var result = sn_fd.FlowAPI.getRunner()
          .datastream('global.test_dsa')
          .inForeground()
          .run();
    
        gs.info(result.debug());
    
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    
    })();

    Ausgabe:

    *** Script: FlowRunnerResult
    Flow Object Name: global.test_dsa
    Flow Object Type: datastream
    Domain: null
    Result Time: 2020-06-08 16:41:13
    ContextId: null
    Output count: 0

    ScriptableFlowRunner – inBackground()

    Führt den Flow, den Subflow oder die Aktion asynchron aus. Sobald das Flow-Objekt ausgeführt wird, wird die Skriptausführung sofort fortgesetzt.

    Tabelle : 13. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 14. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.

    Dieses Beispiel zeigt, wie ein Flow asynchron ausgeführt wird.

    (function() {
      try {
    
        var result = sn_fd.FlowAPI.getRunner()
          .flow('global.test_flow')
          .inBackground()
          .run();
    
        gs.info(result.debug());
    
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    
    })();

    Ausgabe:

    
    Flow Designer: Cloning a new session to run as as user id: [user_name] from original user session: [user_name]
    Flow Designer: Message to log
    Flow Designer: Reverting cloned session to original user session: [user_name]
    *** Script: FlowRunnerResult
    Flow Object Name: global.test_flow
    Flow Object Type: flow
    Domain: null
    Result Time: 2020-06-08 16:41:13
    ContextId: null
    Output count: 0

    ScriptableFlowRunner – inDomain(String domainId)

    Führt den Flow, Subflow oder die Aktion in der angegebenen Domäne aus. Überprüft, ob die Domäne vorhanden und verfügbar ist.

    Tabelle : 15. Parameter
    Name Typ Beschreibung
    domainId Zeichenfolge Die sys_id oder der Name für die Ausführungsdomäne für den Flow.
    Tabelle : 16. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.

    Dieses Beispiel zeigt, wie ein ScriptableFlowRunner-Generator-Objekt erstellt und verwendet wird, um eine Genehmigungsaktion für einen bestimmten Datensatz auszuführen. Ein ScriptableFlowRunnerResult-Objekt erfasst die Ausführungsargumente und Aktionsausgaben.

    
    (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);
      }
    	
    })();
       

    ScriptableFlowRunner – inForeground()

    Führt den Flow, Subflow oder die Aktion synchron aus. Die Skriptausführung wird angehalten, während das Flow-Objekt ausgeführt wird.

    Hinweis:
    Diese Methode unterstützt das Anhalten der Aktion zum Warten auf Bedingungen nicht. Schritte, die für Wartebedingungen wie „Um Genehmigung bitten“ oder „Warten auf Bedingung“ angehalten werden, werden nicht unterstützt.
    Tabelle : 17. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 18. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.

    Dieses Beispiel zeigt, wie ein ScriptableFlowRunner-Generator-Objekt erstellt und verwendet wird, um eine Genehmigungsaktion für einen bestimmten Datensatz auszuführen. Ein ScriptableFlowRunnerResult-Objekt erfasst die Ausführungsargumente und Aktionsausgaben.

    
    (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);
      }
    	
    })();
       

    ScriptableFlowRunner – schnell()

    Führt einen Flow, Subflow, eine Aktion oder eine Datenstromaktion von einem serverseitigen Skript synchron oder asynchron aus, ohne Ausführungsdetails oder andere zugehörige Datensätze zu erstellen. Verbessert die Leistung, indem der Overhead für die Aufzeichnung eliminiert wird. Verwenden Sie diese API, um die Geschwindigkeit der Verarbeitung großer Mengen, z. B. mehrerer Ausführungen pro Sekunde, in einer Produktionsumgebung zu erhöhen.

    Berichterstellung und Datensätze generiert
    Diese Methode erstellt unabhängig von den Flow Designer -Einstellungen keine Ausführungsdetails und Kontextdatensätze.
    Unterstützung von Wartebedingungen
    Diese Methode unterstützt nicht das Anhalten einer Aktion oder eines Flows, um auf Bedingungen zu warten. Aktionen, Flow-Logik und Schritte, die für Wartebedingungen wie „Um Genehmigung bitten“, „Warten auf Bedingung“ oder „Warten auf eine Dauer“ angehalten werden, werden nicht unterstützt.
    MID-Server-Unterstützung
    Diese Methode unterstützt nicht das Anhalten einer Aktion oder eines Flows, die von einem MID Server ausgeführt werden sollen. Diese Einschränkung umfasst Vorverarbeitungsskripts für Datenstromaktionen, die eine Aktion anhalten, die von einem MID Server ausgeführt werden soll.
    Unterstützung für Datenstromaktionen
    Diese Methode unterstützt nicht das Anhalten einer Datenstromaktion, um ein Vorverarbeitungsskript von einem MID Server auszuführen.
    Tabelle : 19. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 20. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.

    Dieses Beispiel zeigt, wie ein Flow ausgeführt wird, ohne zugehörige Datensätze zu erstellen.

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

    Ausgabe:

    Flow Designer: Message to log.
    *** Script: [object FlowRunnerResult]

    ScriptableFlowRunner – run()

    Führt den Flow, Subflow oder die Aktion mit den angegebenen Parametern aus.

    Tabelle : 21. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 22. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunnerResultsScoped Objekt, das die Ausführungsdetails einer Flow Designer -Aktion, eines Flow oder eines Subflow enthält.

    Dieses Beispiel zeigt, wie ein ScriptableFlowRunner-Generator-Objekt erstellt und verwendet wird, um eine Genehmigungsaktion für einen bestimmten Datensatz auszuführen. Ein ScriptableFlowRunnerResult-Objekt erfasst die Ausführungsargumente und Aktionsausgaben.

    
    (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);
      }
    	
    })();
       

    ScriptableFlowRunner – timeout(Number timeout)

    Legt eine Zeitüberschreitung für die Ausführung eines Flow, Subflow oder einer Aktion fest.

    Tabelle : 23. Parameter
    Name Typ Beschreibung
    Zeitüberschreitung Nummer Zeitüberschreitung in Millisekunden.
    Tabelle : 24. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.

    Dieses Beispiel zeigt, wie ein Flow ausgeführt wird, und legt eine Zeitüberschreitung auf zwei Minuten fest.

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

    Ausgabe:

    Flow Designer: Cloning a new session to run as as user id: [user_name] from original user session: [user_name]
    Flow Designer: Reverting cloned session to original user session: [user_name]
    *** Script: FlowRunnerResult
    Flow Object Name: global.test_flow
    Flow Object Type: flow
    Domain: null
    Result Time: 2020-06-08 18:22:35
    ContextId: null
    Output count: 0

    ScriptableFlowRunner – validInputs(Boolean validInputs)

    Einen Fehler auslösen und die Ausführung der ScriptableFlowRunner-Klasse verhindern, wenn eine Methodeneingabe einen unerwarteten Wert hat. Diese Methode ist für jeden ScriptableFlowRunner-Aufruf standardmäßig auf „true“ festgelegt.

    Tabelle : 25. Parameter
    Name Typ Beschreibung
    validierenEingaben Boolean Kennzeichnung, die angibt, ob Eingaben der ScriptableFlowRunner-Methode validiert werden sollen.
    Es gibt zwei gültige Werte.
    • true: Gibt einen Fehler aus, wenn Eingaben unerwartete Werte haben, und beendet die Ausführung des Skripts.
    • false: Ermöglicht die Ausführung des Skripts mit unerwarteten Werten.

    Standardwert: True

    Tabelle : 26. Ergebnisse
    Typ Beschreibung
    Keine

    Dieses Beispiel zeigt, wie ein Flow ausgeführt wird, ohne die Eingabewerte der Methode zu validieren.

    (function() {
      try {
    
        var result = sn_fd.FlowAPI.getRunner()
          .flow('global.test_flow')
          .inForeground()
          .validateInputs(false)
          .run();
    
        gs.info(result.debug());
    
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    
    })();

    Ausgabe:

    *** Script: FlowRunnerResult
    Flow Object Name: global.test_flow
    Flow Object Type: flow
    Domain: null
    Result Time: 2020-06-08 16:41:13
    ContextId: null
    Output count: 0

    ScriptableFlowRunner – withConnectionAliasOverride(String aliasName, String overrideName)

    Überschreibt den Alias Verbindungen und Anmeldeinformationen, der dem Flow, der Aktion oder dem Subflow zugeordnet ist. Sie können den standardmäßigen übergeordneten Alias mit einem seiner untergeordneten Aliasse überschreiben.

    Weitere Informationen zum Überschreiben eines Verbindungen und Anmeldeinformationen -Alias finden Sie unter Mehrere Verbindungen unterstützen.

    Tabelle : 27. Parameter
    Name Typ Beschreibung
    parentAliasSysID Zeichenfolge Die sys_id des übergeordneten Alias, der Alias, den Sie überschreiben möchten.
    overrideAliasSysID Zeichenfolge Die sys_id des untergeordneten Alias, der Alias, den Sie beim Ausführen des Flow, Subflow oder der Aktion verwenden möchten.
    Tabelle : 28. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.

    Dieses Beispiel zeigt, wie ein Flow mit einem anderen Alias als dem dem Flow zugeordneten Standardalias ausgeführt wird.

    (function() {
      try {
    
        var result = sn_fd.FlowAPI.getRunner()
          .flow('global.test_flow')
          .withConnectionAliasOverride('sn_original_alias.spoke', 'x_new_alias.spoke')
          .inForeground()
          .run();
    
        gs.info(result.debug());
    
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    
    })();

    ScriptableFlowRunner – withInputs(Map inputs)

    Fügt eine Sammlung von Eingaben hinzu. Wenn ein Name in einem der Name-Wert-Paare bereits vorhanden ist, ersetzt der neue Wert den bereits vorhandenen Wert.

    Tabelle : 29. Parameter
    Name Typ Beschreibung
    inputs Objekt Kartenobjekt, das die Name-Wert-Paare enthält, die Eingaben für den Flow, Subflow oder die Aktion definieren.
    Tabelle : 30. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.

    Erstellt ein Eingabeobjekt und übergibt den Wert an die withInputs()- Methode.

    
    (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);
      }
    	
    })();
       

    ScriptableFlowRunner – withRoles()

    Führt den Flow als der Benutzer aus, der den Flow ausgelöst hat, oder führt den Flow mit Rollen aus, die in Flow Designerhinzugefügt wurden.

    Wenn ein Flow mit quick() zusammen mit der Methode withRoles() ausgelöst wird, werden die in den Flow-Eigenschaften definierten Rollen abgerufen, während der Flow-Ausführung übergeben und der Flow wird mit den Rollen ausgeführt.

    Tabelle : 31. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 32. Ergebnisse
    Typ Beschreibung
    ScriptableFlowRunner – Scoped Generatorobjekt, das zum Ausführen einer Flow Designer -Aktion, eines Flow oder eines Subflow verwendet wird.
    Dieses Beispiel zeigt, wie ein ScriptableFlowRunner-Generator-Objekt erstellt und verwendet wird, um eine Genehmigungsaktion für einen bestimmten Datensatz mit den Methoden withRoles() und quick() auszuführen. Ein ScriptableFlowRunnerResult-Objekt erfasst die Ausführungsargumente und Aktionsausgaben.
    (function() {
        try {
    
            var outputs = sn_fd.FlowAPI.getRunner() // Create a ScriptableFlowRunner builder object.
            .flow('global.stry53225960_flow')
            .inForeground()
            .quick() //Run the flow from a server-side script.
            .withRoles() //Run the flow as the user who triggered the flow.
            .run(); // Run the action and return a FlowRunnerResult object.
    
        } catch (ex) {
            var message = ex.getMessage();
            gs.error(message);
    
        }  
    
    })();

    Fehler

    Diese Fehler können bei Verwendung der withRoles()- Methode auftreten:
    • withRoles() führt keine Operation aus, wenn sie nicht zusammen mit quick()verwendet wird.
    • Das Skript gibt einen Fehler zurück, wenn withRoles() in einem Flow aufgerufen wird, der keine Rollen enthält.
    • Das Skript gibt einen Fehler zurück, wenn die Methoden withRoles() und asUser() gleichzeitig aufgerufen werden.