组件接口用户定义的方法

用于 PeopleSoft Enterprise 的 Microsoft BizTalk 适配器在组件接口中支持用户定义的方法。 签名形式如下:

myRet=myCI.myMethod(parameter1, parameter2, ...)  

其中:

  • parameter1parameter2 输入参数。

  • myRet 为返回值。

    这些参数只能是该方法的输入参数。 可能从该方法返回一个值作为返回参数。

注意

包含用户定义的方法的组件接口应仅启用 PeopleSoft Get 函数。 如果组件接口具有密钥,则自定义方法将不起作用。

自定义 CI 限制

用于 PeopleSoft Enterprise 的 BizTalk 适配器可以处理自定义 PeopleSoft 方法(假设组件接口不具有密钥)。 如果组件接口具有键,则自定义方法将不起作用。

解决方法

创建一个不具有密钥的新组件接口,并编写一个将密钥合并为调用参数一部分的新自定义方法。 例如,可以在 USER_PROFILE 组件接口中使用 SetPassword 自定义方法;但是,USER_PROFILE 具有密钥。 您可以创建一个不具有密钥的新组件接口,然后在新组件接口中创建一个自定义方法。 此方法将接受两个参数,用户 ID 和密码。 然后,自定义方法可以使用 调用 USER_PROFILE, Get 然后调用 SetPassword。 有关详细信息,请参考 PeopleSoft 文档。

由于 PeopleSoft 中的限制, Date在用户定义的方法中显示的 、 DateTimeTime 类型在客户端代码中映射为字符串。

集合限制

用户定义的方法通常无法返回一个或多个集合以及任何 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;  

注意

若要使用一个命令同时对多个表进行修改,可以创建另一个组件接口,或创建组件接口用户定义方法。

另请参阅

附录 A:组件接口方法