datahub:使用具有不同值的相同idoc属性

2020-09-26 18:07发布

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

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

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


大家好,

我们正在根据BillTo/shipTo/soldTo等场景映射一些ORDERS05 iDoc字段。 在我们的自定义原始扩展程序中,我们将如下映射shipTo和biilTo字段:表达式将基于Partner Function值(billTo或shipTo

)评估关联的Partner。
    E1EDKA1-PARVW   <!-合作伙伴功能->
                     E1EDKA1-PARTN   <!-合作伙伴->
 
   <属性>
                       shipTo 
                      <转换>
                          <转换>
                               RawORDERS 
                              ('WE'.equals(#root.getField('E1EDKA1-PARVW'))?#root.getField('E1EDKA1-PARTN'):#root.getField('E1EDKA1-PARTN'  ))
                          
                      
                  
                   <属性>
                       billTo 
                      <转换>
                          <转换>
                               RawORDERS 
                              ('RE'.equals(#root.getField('E1EDKA1-PARVW'))?#root.getField('E1EDKA1-PARTN'):#root.getField('E1EDKA1-PARTN'  ))
                          
                      
                  

  

根据上述映射,两个表达式的发布过程中,E1EDKA1-PARTN的值相同。 而应该有各自的值。

我们如何使用原始表达式来操纵正确的合作伙伴值?

谢谢, 矢天

3条回答
昵称总是被占用
2020-09-26 18:43 .采纳回答

if else值语句之一应为 null

  'WE'.equals(#root.getField('E1EDKA1-PARVW'))吗?  #root.getField('E1EDKA1-PARTN'):null 
  'RE'.equals(#root.getField('E1EDKA1-PARVW'))吗?  #root.getField('E1EDKA1-PARTN'):null 
  
合成期间会忽略

null 值。 目的是忽略具有不正确匹配的PARVW代码的行中的PARTN值。

一周热门 更多>