可以将等待定时器元素的 timer.date 变量设置为相对时间和日期,方法是将其绑定到 Date 对象。您可在脚本函数中定义 Date 对象。

到达给定日期的时间时,基于定时器的长时间运行工作流将重新激活并继续运行。例如,您可以将工作流设置在 2 月 12 日中午重新激活。或者,您可以创建工作流元素,根据定义的函数计算并生成相对 Date 对象。例如,您可以创建将 24 小时添加到当前时间的相对 Date 对象。

前提条件

  • 创建工作流。
  • 在工作流编辑器中打开要编辑的工作流。
  • 向工作流架构添加一些元素。

过程

  1. 可编辑脚本任务元素从左侧窗格中的通用菜单拖放到工作流架构中需要相对 Date 对象作为 timeout.date 变量的元素之前。
  2. 单击可编辑脚本任务元素。
  3. 在右侧窗格中的详细信息属性选项卡中,输入脚本工作流元素的名称和说明。
  4. 输入/输出属性选项卡上,创建一个工作流变量。
    1. 将该变量命名为 timerDate
    2. 从变量类型列表中选择 Date
    3. 将“变量值”文本框留空。脚本函数提供了此值。
    4. 单击创建
  5. 单击脚本工作流元素的脚本选项卡。
  6. 脚本选项卡的脚本编辑器中,定义一个函数来计算并生成名为 timerDateDate 对象。

    例如,您可以实现以下 JavaScript 函数来创建 Date 对象,其中超时时间段是以毫秒为单位的相对延迟。

    timerDate = new Date();
    System.log( "Current date : '" + timerDate + "'" );
    timerDate.setTime( timerDate.getTime() + (86400 * 1000) );
    System.log( "Timer will expire at '" + timerDate + "'" );

    上述示例 JavaScript 函数定义了 Date 对象,该对象使用 getTime 方法获取当前日期和时间,并添加 86,400,000 毫秒或 24 小时。可编辑脚本任务元素会生成该值作为其输出参数。

  7. 单击保存并确认您的选择。

结果

您即创建了用于计算并生成 Date 对象的函数。等待定时器元素会接收该 Date 对象作为输入参数,挂起某个长时间运行的工作流,直到到达该对象中封装的日期为止。工作流在到达等待定时器元素时会挂起运行并等待 24 小时后继续运行。

后续步骤

您必须向工作流中添加等待定时器元素,才能实施基于定时器的长时间运行工作流。