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