“有效日期”属性

PeopleSoft Enterprise 通过使用名为“有效日期”(简写为 EFFDT)的特殊属性,提供了为项目制定计划和跟踪已计划项目的功能。 此类项目要么正在实施中要么只是已制定了计划,具体取决于其日期是在 PeopleSoft 当前日期之前还是之后。

如果组件接口的属性包含此类有效日期项(即,名为 EFFDT 的字段),则呼叫方可以使用适配器来检索完整的值组,或只检索尚未生效的值(仍可更改的值)。

getHistoryItems 参数

对于包含包含生效日期的属性的组件接口,适配器为 Get 操作提供名为 getHistoryItems的附加参数。 此参数为布尔型,如果将其设置为 True,则会返回所有有效日期项。 其中包括所有过去、当前和将来的有效日期项。

如果参数 getHistoryItems 设置为 False,则仅返回当前和将来的有效日期项。 如果您需要添加或更改这些项目,请选择 False(因为过去的项目无法更改)。

也可以出现多个有效日期项具有相同有效日期的情况。 在这种情况下,还必须提供一个附加属性:“有效序列”(EFFSEQ)。 EFFSEQ 的值必须唯一,以便区分具有相同有效日期的项目。 有关详细信息,请参阅 PeopleSoft 文档。

修改过去的 Effective-Dated 项

correctionModeUpdateExDeleteOnly 方法中的 参数控制是否可以修改过去的生效日期项。 如果将其设置为 True,则可以修改所有项目。 否则,修改过去的有效日期项会生成异常。

在具有有效日期的项的组件接口上调用已弃用 Update 的方法时,必须注意不要包括任何早于 PeopleSoft 当前生效日期的值的生效日期,否则调用会失败并出现异常。 但是,可以包含当前的有效日期项,因为在设置属性时会绕过该项目。 如果存在“有效序列”,则在设置属性时会跳过服务器中带有匹配的“有效序列”的所有当前有效日期项。

另请参阅

附录 A:组件接口方法