如何将具有多个TDLINES的特定文本TDID的SOAP IDOC映射到一个目标XML字段中

2020-09-20 22:59发布

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

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


我有一个要求,对于特定的E1EDKT1 TDID值,我需要将多个E1EDKT2 TDLINE连接到一个定义为字符串的目标字段中。 目标字段定义为:

我需要选择正确的TDLINES集,然后循环通过它们以将它们连接在一起,或者将它们连接到目标字段。 我看起来好像在使用变量,但是不确定是否可以使用。

发件人数据如下:

 
        0102 
        E 
        EN 
       
         测试运输信息文本
          * 
       
       
         多行文本测试
          * 
       
     
     
        ZFGP 
        E 
        EN 
       物料运费组
       
         参考
       
     
 

仅当TDID = 0102时,结果应为:

测试运输信息文本多行文本测试

我没有PI映射的经验,所以所有这些对我来说都是很新的。 有人能够提供解决方案或将我带到一个博客,该博客可以帮助我确定如何实现此要求?

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

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


我有一个要求,对于特定的E1EDKT1 TDID值,我需要将多个E1EDKT2 TDLINE连接到一个定义为字符串的目标字段中。 目标字段定义为:

我需要选择正确的TDLINES集,然后循环通过它们以将它们连接在一起,或者将它们连接到目标字段。 我看起来好像在使用变量,但是不确定是否可以使用。

发件人数据如下:

 
        0102 
        E 
        EN 
       
         测试运输信息文本
          * 
       
       
         多行文本测试
          * 
       
     
     
        ZFGP 
        E 
        EN 
       物料运费组
       
         参考
       
     
 

仅当TDID = 0102时,结果应为:

测试运输信息文本多行文本测试

我没有PI映射的经验,所以所有这些对我来说都是很新的。 有人能够提供解决方案或将我带到一个博客,该博客可以帮助我确定如何实现此要求?

付费偷看设置
发送
2条回答
代楠1984
1楼-- · 2020-09-20 23:25

你好

当然,自从我爱XSLT以来,我一直抱有偏见,但是XSLT在 确实非常有用,例如您所描述的情况:-)

假定以下简化输入:

 <?xml version =" 1.0" encoding =" UTF-8"?>
 
     
          0102 
          E 
          EN 
         
             测试运输信息文本
              * 
         
         
             多行文本测试
              * 
         
     
     
          ZFGP 
          E 
          EN 
         物料运费组
         
             参考
         
     
 
 

您可以实现以下输出:

 <?xml version =" 1.0" encoding =" UTF-8"?>
 测试运输信息文本多行文本测试 

有了这个超级简单的XSLT样式表:

 <?xml version =" 1.0" encoding =" UTF-8"?>
 
     
         <评论>
             
         
     
 
 

非常整洁,不是吗?

此致

Morten

ZJXianG
2楼-- · 2020-09-20 23:14

我能够通过创建两步映射过程来完成此任务。 通过修改目标xsd以将" comment"标记更改为复杂的结构,我能够成功地对特定的E1EDK01-TDID值执行串联。 然后,我将此地图的结果传递到具有原始目标xsd的下一张地图,以完成该过程。

一周热门 更多>