如何在SCP属性中存储ArrayList?

2020-08-23 04:24发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我正在开发将EC与O...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我正在开发将EC与OnBoarding连接的接口。

我们正在尝试使用odata api-generateNextPersonId函数生成多个EmpId,将它们存储在数组列表中,并在OnBoarding端更新多个员工。

现在,我已经生成了ID,并能够使用Groovy脚本将其存储在ArrayList中。 现在,我想将其存储在属性部分中,以便以后可以访问它。

我该怎么做?

我尝试在properties部分中创建一个全局变量并将其存储。 没用 我可以创建全局变量,局部变量,常量,表达式,属性,标题,XPath。 我不能为XPath以外的其他任何类型设置类型,这很奇怪。 当我选择全局变量时,属性部分的"类型"字段显示为灰色。 我虽然可以将类型设置为java.Util.ArrayList。

任何输入将不胜感激。

2条回答
骆驼绵羊
2020-08-23 04:56 .采纳回答

Hello Kriba,

您可以在脚本本身中设置包含ArrayList的属性

脚本:

导入com.sap.gateway.ip.core.customdev.util.Message;
 导入java.util.HashMap;

 def消息processData(消息消息){
    //身体
     def主体= message.getBody();
   
     List  list =新的ArrayList ();
     list.add(" shri");
     list.add(" Prasad");
     list.add(" Praveen");

     def map = message.getHeaders();
     map = message.getProperties();
     message.setProperty(" P_ArrayData",list);
    
     message.setBody(body);
     返回消息;
 }
 

写变量:

Content Modifier检索存储的值(仅用于测试目的):

不幸的是,它不可能检索在Content Modifier中写为Property(在前面的步骤中)的ArrayList的各个元素,您必须再次编写脚本以逐个获取元素。但是您可以检索存储在一个元素中的完整元素列表 拍摄(如"内容修改器"中所示,将变量的值设置为"属性",以后再访问它。)

希望有帮助。

此致

Sriprasad Shivaram Bhat

一周热门 更多>