您可以在 Date 对象中计算用户交互超时的相对时间和日期。

关于此任务

您可以在 Date 对象中设置绝对时间和日期。达到给定日期的时间后,用户交互的请求即超时。或者,您可以创建工作流元素,根据定义的函数计算并生成相对 Date 对象。例如,您可以创建将 24 小时添加到当前时间的相对 Date 对象。

先决条件

  • 打开要在工作流编辑器中编辑的工作流。

  • 向工作流架构添加用户交互元素。

  • 设置用户交互的 security.group 属性。

过程

  1. 可编辑脚本任务元素从通用菜单拖放到工作流的架构中,放在需要相对 Date 对象作为自己 timeout.date 属性的元素之前。
  2. 单击工作流架构中可编辑脚本任务元素的编辑图标 (编辑图标)。
  3. 信息属性选项卡中,为脚本工作流元素输入名称和说明。
  4. 单击输出属性选项卡,然后单击绑定到工作流参数/属性图标 (绑定到工作流参数或属性)。
  5. 单击在工作流中创建参数/属性以创建工作流属性。
    1. 为属性 timerDate 命名。
    2. 从属性类型列表中选择 Date
    3. 选择创建同名的工作流属性
    4. 将属性值设置保留为未设置,因为脚本函数会提供该值。
    5. 单击确定
  6. 单击脚本工作流元素的脚本选项卡。
  7. 脚本选项卡的脚本编辑器中,定义一个函数来计算并生成名为 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 小时。可编辑脚本任务元素会将该值生成为其输出参数。

  8. 单击关闭
  9. 单击保存

结果

您即创建了可计算相对于当前时间和日期的相对时间和日期并生成 Date 对象的函数。用户交互元素可以以输入参数的形式接收该 Date 对象,从而设置等待用户输入的截止超时时间段。工作流到达用户交互元素时,会挂起其运行并等待用户提供所需信息或等待 24 小时后超时。

下一步做什么

您必须将 Date 对象绑定到用户交互元素的 timeout.date 参数。请参见将 timeout.date 属性设置为相对日期