0

我创建了一个 PeopleTools 应用程序引擎程序来插入/更新 PS_PERS_NID 表中的员工国民身份证数据。我正在使用 PeopleTools 文件布局定义将数据插入临时表,然后使用 Application Engine Do Select 从说明表中读取数据,并通过 PeopleCode 通过 PeopleTools 组件接口 (CI) 定义加载。当数据干净时,它工作正常。我在异常人员代码中编写了一个查询,以使用处理状态和错误消息更新临时表中的数据。

当我使用无效的 SSN 对其进行测试时,它会返回 message Error changing value,并导致应用程序引擎失败。我在默认创建的 try-catch 块中拥有所有人员代码。

有人可以通过我可以在暂存记录中捕获错误消息而无需异常处理来提供示例逻辑代码。

4

2 回答 2

0

我采用这种方法来解决这种情况:

  1. 创建新字段以捕获暂存记录中的错误文本。

  2. 在调用 Component 接口代码之前,请检查提供的 SSN 值是否有效。我使用了交付的功能check_nid。如果该值不满足条件,则将该行标记为“错误”行并在暂存字段中捕获错误文本。

  3. 忽略“错误”行。

于 2022-02-15T10:29:51.693 回答
0

Application Engine Definition中,您的 Step 是否将“On Error”选项设置为“Abort”?

将其设置为“忽略”或“抑制”并处理人员代码中的错误。

检查Application Engine PeopleBooks中的“设置属性”部分以获取有关这些选项的更多信息。

于 2022-01-11T14:20:27.860 回答