Skip to main content

Run Workflow v2

Run Workflow v2 | Sybot Documentation

Run Workflow v.2

  • Task type: runworkflow_v2

Descrizione

Il task "Run Workflow v.2" permette di eseguire un workflow secondario (figlio) all'interno di un processo principale (padre). Questo task facilita la modularizzazione dei flussi di lavoro e lo scambio di dati tra workflow diversi.

run_wf_v2_config.png

Parametri di Configurazione

  • Filtra Workflow: Campo di ricerca per individuare rapidamente il processo desiderato.
  • Workflow da eseguire: Menu (Dropdown) che elenca i workflow a cui l'utente ha accesso.
  • Tabella Parametri (Parametro / Tipo / Valore): Questa sezione si popola dinamicamente con i parametri di input definiti nel workflow figlio selezionato.
  • Se il workflow figlio non prevede input, la tabella rimarrà vuota.
  • Permette di passare valori (statici o dinamici tramite tag come #>Param<#) dal padre al figlio.

Logica di Esecuzione e Fallimento

  • Indipendenza degli errori: Se l'esecuzione del workflow figlio fallisce, il task "Run Workflow v.2" nel workflow padre non fallisce.
  • Condizioni di fallimento del task: Il task fallisce se il workflow figlio non può essere avviato, ad esempio perché è attualmente bloccato/in modifica da un altro utente.

Parametri di Output

  • result: Messaggio informativo sull'esito della chiamata (es: Workflow wf_child eseguito con stato Success).
  • resultJSON: Risultato dell'esecuzione del task corrente in formato JSON.
  • targetWorkflowId: ID univoco del workflow figlio eseguito.
  • targetWorkflowName: Nome del workflow figlio eseguito.
  • resultJSONtarget: Stringa JSON contenente l'intero report di esecuzione del workflow figlio (inclusi i risultati di ogni singolo task interno). Questo parametro di output è utile per ottenere informazioni sulle esecuzioni dei workflow figli: i dati possono essere estratti direttamente utilizzando task con query JSONPath.
  • exitStatus: Codice di stato dell'operazione (0 indica che l'avvio è riuscito).

Esempio resultJson

{
"id": 18995,
"name": "Run Workflow v.2",
"description": "",
"type": "runworkflow_v2",
"type_name": "Run Workflow v.2",
"type_description": "Esegue un workflow",
"config": {
"overrides": {"test_child": "#>Date.datetime<#"},
"output_links": [
{
"to": "[TASK 1906_19215_40]",
"from": "[TASK 1906_18995_69]",
"text": "Condizione 19",
"color": "green",
"points": [...],
"toPort": "left3",
"fromPort": "port_1906_18995_1",
"isTraversed": true
}
],
"target_workflow_id": 2013,
"result_target_workflow": [
{
"id": 2013,
"name": "wf_child",
"run_info": {
"tasks": [
{
"id": 19038,
"name": "Unix Shell",
"type": "ssh",
"type_name": "Unix Shell",
"type_description": "Connessione SSH",
"config": {
"operation": "command",
"connection": {"ip": "", "port": "", "user": "", "hostname": "", ...},
"output_links": [...]
},
"run_info": {
"run_id": 1482340,
"status": "Completed",
"run_result": "Success",
"cmd_text": "echo 'test_child'",
"result_text": "test_child",
"start_datetime": "2026-03-31 14:29:16",
"end_datetime": "2026-03-31 14:29:16",
...
},
"output_parameters": {"exitStatus": "0"}
}
],
"run_result": "Warning",
"parameters": [{"name": "test_child", "value": "31/03/2026 14:29:16", "type": "string"}],
...
},
"description": ""
}
]
},
"run_info": {
"run_id": 1482309,
"start_datetime": "2026-03-31 14:29:16",
"end_datetime": "2026-03-31 14:29:16",
"duration": 0,
"status": "Completed",
"run_result": "Success",
"result_text": "Workflow wf_child eseguito con stato Success",
...
},
"output_parameters": {
"exitStatus": "0",
"resultJSONtarget": "{...}",
"targetWorkflowId": "2013",
"targetWorkflowName": "wf_child"
}
}