Inbound接口 一次解析外部IO报文中多个节点值

我们之前做Inbound接口的时候,解析外部IO节点时常用

PRM ANI Utility Service/GetProperty 

获取节点值,但是每次只能获取一个,如果一个报文过长,那么这么BS就要执行多次才可以把目标节点解析全,

现在发现OOTB有个BS:

 FINS Industry XML Query Service/Execute 

他是基于路径的(Xpath)的语法解析方式,可以一次执解析出多个层次的多个节点值

比如
'/*/@Id'

'/*/@Account Name '。

所以强烈推荐使用这个BS解析数据,解析效率高。

但是也有一个缺点,如果某个节点重复出现,取值也很麻烦,下次再深入看看。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个CVI_EI_INBOUND_MAIN的 ABAP 代码示例: ``` REPORT z_cvi_ei_inbound_main. * 定义数据对象 DATA: ls_ei_inbound_data TYPE crm_cvi_ei_inbound, lt_ei_inbound_data TYPE TABLE OF crm_cvi_ei_inbound, lt_return TYPE TABLE OF bapiret2. * 填充EI Inbound数据 ls_ei_inbound_data-type = 'ZBP'. "BP or CVI ls_ei_inbound_data-object_id = 'OBJECT_ID'. "BP or CVI ID ls_ei_inbound_data-object_guid = 'OBJECT_GUID'. "BP or CVI GUID ls_ei_inbound_data-object_type = 'BUS1006'. "Object Type ls_ei_inbound_data-action = 'U'. "Create, Update or Delete ls_ei_inbound_data-client = sy-mandt. "SAP Client * 将EI Inbound数据添加到表 APPEND ls_ei_inbound_data TO lt_ei_inbound_data. * 调用CVI_EI_INBOUND_MAIN函数 CALL FUNCTION 'CVI_EI_INBOUND_MAIN' EXPORTING it_ei_inbound_data = lt_ei_inbound_data TABLES et_return = lt_return. * 打印返回消息 IF lt_return IS NOT INITIAL. LOOP AT lt_return INTO DATA(ls_return). WRITE: / ls_return-type, ls_return-id, ls_return-number, ls_return-message. ENDLOOP. ENDIF. ``` 该代码使用 CVI_EI_INBOUND_MAIN 函数处理 EI Inbound 数据。在代码,您需要替换示例数据(如 OBJECT_ID,OBJECT_GUID 等)为您希望处理的 EI Inbound 数据的实际。该代码还打印返回消息以提供反馈。 请注意,这只是一个简单的示例代码,您可能需要根据您的实际情况进行修改。此外,您需要配置 SAP 系统以允许使用 CVI_EI_INBOUND_MAIN 函数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值