完成工作流程

当一个工作流由另一个现有工作流启动时,现有工作流将在子工作流开始运行时暂停。完成子工作流后,当第一个工作流恢复并再次变为活动状态时,子工作流将终止。

但是,如果子工作流恰好是根工作流,则无法终止该工作流。

标识符:finish_workflow

属性

  • 延迟: 设置转换的延迟,直到它被触发。延迟以毫秒为单位。
    • 必填:
    • 默认值: -1
  • sound_feedback_enabled: 默认情况下,过渡会触发声音以向用户发出信号。可以通过将此属性设置为 false 来禁用此功能。
    • 必填:
    • 默认值:

元素

  • 输出: 将参数传递给目标步骤,该步骤调用工作流。
    • 必填:
    • 默认值: 空列表

例子

极小

<finish_workflow id=“finish_without_error”/>

所有选项

<finish_workflow id=“finish_without_error” delay=“500” sound_feedback_enabled=“false”>
    <output>
        <param name=“error” type=“bool”>false</param>
    </output>
</finish_workflow>

阶跃过渡

启动从工作流中的一个步骤到同一工作流中的另一个步骤(如果存在)的转换。

标识符: step_transition

属性

  • to: 同一工作流中应启动的步骤的名称。
    • 必需: 是
    • 默认值: 无
  • delay: 设置转换的延迟,直到它被触发。延迟以毫秒为单位。
    • 必需: 否
    • 默认值: -1
  • sound_feedback_enabled: 默认情况下,过渡会触发声音以向用户发出信号。可以通过将此属性设置为 false 来禁用此功能。

元素

  • output: 将参数传递到目标步骤
    • 必需: 否
    • 默认值: 空列表

例子

极小

<step_transition id=“start_login” to=“login”/>

所有选项

<step_transition id=“start_login” to=“登录” delay=“2000” sound_feedback_enabled=“false”>
   <output>
      <参数名称=“timeout_ms” type=“long”>5000</param>
      <参数名称=“skip_scan” type=“bool”>1</param>
      <参数名称=“区域”>#{位置}</参数>
      <参数名称=“域”>#{客户端。USER_DOMAIN}</param>
   </output>
</step_transition>

启动工作流

在暂停当前工作流的同时启动子工作流。子工作流完成后,初始工作流将再次变为活动状态。

通过将其与start_task_from_template结合使用,可在组件中使用。

标识符: start_workflow

属性

  • WF: 将启动的子工作流的 ID
    • 必需: 是
    • 默认值: 空
  • start_step: 这允许用户覆盖子工作流定义的开始步骤。
    • 必需: 否
    • 默认值: 空
  • stop_current_workflow: 如果当前工作流不是根工作流,并且该值设置为 true。然后,呼叫工作流将停止。
    • 必需: 否
    • 默认值: False
  • 延迟: 设置转换的延迟,直到它被触发。延迟以毫秒为单位。
    • 必需: 否
    • 默认值: -1
  • sound_feedback_enabled: 默认情况下,过渡会触发声音以向用户发出信号。可以通过将此属性设置为 false 来禁用此功能。
    • 必需: 否
    • 默认值: True

元素

  • 输出: 将参数传递到调用子工作流的起始步骤。
    • 必需: 是
    • 默认值: 空列表

例子

极小

<start_workflow id=“start_login” wf=“登录”/>

所有选项

<start_workflow id=“start_login” wf=“登录” start_step=“login_area” delay=“2000” sound_feedback_enabled=“false” stop_current_workflow=“true”>
   <output>
      <参数名称=“skip_scan” type=“bool”>1</param>
      <param name=“area”>#{location}</param>
   </output>
</start_workflow>

从模板启动任务

根据您为工作流创建的模板创建新任务。

标识符: start_task_from_template

元素

  • wf: 为工作流创建的模板的名称。
    • 必需: 是
    • 默认值: 空
  • close_ongoing: 决定是否应将正在进行的任务设置为“完成”。
    • 必需: 否
    • 默认值: False
  • cancel_ongoing: 决定是否应将正在进行的任务设置为“已取消”。
    • 必需: 否
    • 默认值: False

例子

此操作可用于从当前工作流启动子工作流。尝试根据您在 Frontline Command Center 中为子工作流创建的模板创建新任务:

<action id=“start_task_from_template” type=“start_task_from_template”>
    <param name=“wf”>Templatename</param>
    <param name=“cancel_ongoing” type=“bool”>false</param>
    <param name=“close_ongoing” type=“bool”>false</param>
</action>

然后,该操作将使用命令“FOUND”或“NOT_FOUND”给出一个事件,具体取决于是否可以在服务器上找到模板名称。这两种情况都需要相应地处理:

<规则 id=“template_not_found”>
    <表达式><![CDATA[ #{event(start_task_from_template):command} == 'NOT_FOUND' ]]> </expression>
    <actions>
        <action ref=“finish_workflow_failed” />
    </actions>
</rule>

如果可以找到模板,则该操作将设置一个包含要传递给start_workflow操作的 URI 的步骤上下文变量 workflow 。

<rule id=“template_found”>
    <expression><![CDATA[ #{event(start_task_from_template):command} == 'FOUND' ]]> </expression>
    <actions>
        <action id=“startworkflow” type=“start_workflow”>
            <参数名称=“wf”>#{workflow}</param>
        </action>
    </actions>
</rule>

暂停任务

暂停任务并将用户返回到任务列表。任务状态不会丢失,可以稍后完成。

标识符: pause_task

极小

<pause_task id=“pause”/>