此示例说明如何使用客户机端验证,在客户机端人员服务中验证 Coach 中的数据。
关于此任务
以下示例演示如何验证 Coach 中用户输入的数据,以便在数据无效时,在 Coach 中显示错误消息。该示例还演示数据无效时如何防止用户继续执行下一步骤。
该示例包含“开始日期和结束日期提示”Coach,其中包括
开始日期字段、
结束日期字段和
确定按钮。开始日期必须早于结束日期。包含脚本和排他式网关的 Coach 验证模式用于验证 Coach 数据。
注: 此示例为您显示如何使用 IBM® Process
Designer 在客户机端人员服务中验证 coach。有关在 Heritage 人员服务中验证 Coach 的信息,请参阅
示例:验证遗留人员服务中的 Coach。
过程
- 创建将包含要验证的 Coach 的客户机端人员服务。请参阅构建客户机端人员服务。
- 在该人员服务的变量选项卡中,创建两个专用变量:startDate 和 endDate,并将每个变量的类型均设置为 Date。
- 在客户机端人员服务图中,将 coach 重命名为开始日期和结束日期提示。
- 在 Coach 选项卡中,从选用板的变量部分,将 startDate 和 endDate 参数拖到该 Coach 上。将缺省确定按钮保持不变。
- 在该 Coach 中,选择开始日期参数并确保它与常规选项卡的行为部分中的 startDate 变量绑定在一起。
- 针对结束日期参数重复步骤 5,以确保该参数已正确绑定到 endDate 变量,然后保存该 Coach 配置。
- 在图中,添加脚本、排他式网关和中间事件,它们将自动变为“留在页面上”事件。将脚本重命名为验证变量值,将排他式网关重命名为验证错误?。
按以下顺序连接这些元素:
- 删除 coach 与结束事件之间的流程线。
- 将 coach 连接到脚本。
- 将脚本连接到排他式网关。
- 将排他式网关连接到“留在页面上” 事件。将流程线重命名为 Yes。因为这是离开网关的第一个流程线,将通过 / 指示符来显示它是缺省流程。Stay On Page 事件将此流程返回到 coach。
- 将排他式网关连接到结束事件。
现在,人员服务流包含 coach 验证模式。流程将首先达到脚本。如果数据无效,那么脚本将创建验证错误并将错误添加到 tw.system.coachValidation 对象。
网关将确定流程所采用的路径。如果数据有效,那么将转至该流中的下一个步骤,即结束事件。
如果数据无效,那么会记录验证错误并且该流会循环回到该 Coach。
- 选择验证变量值脚本,在脚本选项卡中,输入以下 JavaScript 构造:
if (tw.local.startDate.getTime() > tw.local.endDate.getTime())
tw.system.coachValidation.addValidationError("tw.local.startDate", "The start date must precede the end date. Set the start date before the end date, and try again.");
在 coachValidation 对象中,第一个字符串包含到要验证其数据的元素的完整变量路径。
第二个字符串是面向用户的消息,此消息指定数据中存在哪些错误并告知用户如何纠正问题。
- 选择排他式网关,在其实施属性中,创建测试。 该测试为 tw.system.coachValidation.validationErrors.length==0。
该测试检查是否存在验证错误,如果没有,使其路由至流的其余部分。如果有错误,流转到“留在页面上”事件,以便 coach 显示含问题数据的控件和消息。
- 保存您的更改,然后单击运行
以运行该人员服务。
- 在显示 Coach 的浏览器中,通过完成以下步骤来测试验证:
- 将结束日期设置为早于开始日期的日期。单击确定。 浏览器将突出显示开始日期字段,并显示警告图标。如果将鼠标悬停在警告图标上,您将看到开始日期必须早于结束日期的消息。
- 将结束日期设置为晚于开始日期的日期。单击确定。 由于两个日期均有效,因此该人员服务将成功完成。