组件接口用户定义的方法
用于 PeopleSoft Enterprise 的 Microsoft BizTalk 适配器在组件接口中支持用户定义的方法。 签名形式如下:
myRet=myCI.myMethod(parameter1, parameter2, ...)
其中:
parameter1
是parameter2
输入参数。myRet
为返回值。这些参数只能是该方法的输入参数。 可能从该方法返回一个值作为返回参数。
注意
包含用户定义的方法的组件接口应仅启用 PeopleSoft Get
函数。 如果组件接口具有密钥,则自定义方法将不起作用。
自定义 CI 限制
用于 PeopleSoft Enterprise 的 BizTalk 适配器可以处理自定义 PeopleSoft 方法(假设组件接口不具有密钥)。 如果组件接口具有键,则自定义方法将不起作用。
解决方法
创建一个不具有密钥的新组件接口,并编写一个将密钥合并为调用参数一部分的新自定义方法。 例如,可以在 USER_PROFILE 组件接口中使用 SetPassword 自定义方法;但是,USER_PROFILE 具有密钥。 您可以创建一个不具有密钥的新组件接口,然后在新组件接口中创建一个自定义方法。 此方法将接受两个参数,用户 ID 和密码。 然后,自定义方法可以使用 调用 USER_PROFILE, Get
然后调用 SetPassword
。 有关详细信息,请参考 PeopleSoft 文档。
由于 PeopleSoft 中的限制, Date
在用户定义的方法中显示的 、 DateTime
和 Time
类型在客户端代码中映射为字符串。
集合限制
用户定义的方法通常无法返回一个或多个集合以及任何 API 对象。 这意味着只能返回字符串和数字等简单类型。 您可以解除此限制,方法是将集合作为 XML 字符串发送并对客户端进行编程以解析字符串,从而将项目提取到正确的格式。 您可以检查 GET_CI_INFO 自定义组件接口,以查看此解决方法的示例。
示例自定义方法
您可以使用以下基本自定义方法,SayHello,以便使用自定义方法来测试组件接口的功能。
以下 PeopleCode 函数是 PeopleSoft 组件接口的一个用户定义的方法,名为 ACB_EMPLOYEE。 此示例返回一个字符串,其中返回值为 Hello ,后跟输入参数的值。
Function SayHello(&sName As string) Returns string
&EOL = Char(10);
&sResult = "Hello " | &sName | &EOL;
Return &sResult;
End-Function;
注意
若要使用一个命令同时对多个表进行修改,可以创建另一个组件接口,或创建组件接口用户定义方法。