如何对B1IF中的数据列表执行SQL Atom

2020-09-12 05:00发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 通过使用第三方API...

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

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


专家们,

通过使用第三方API服务(使用HTTP调用),我可以获得业务合作伙伴数据列表。

现在,有了这个BP列表,使用for-each循环抛出,我想将业务伙伴数据更新到SAP B1(OCRD)表中。

这是业务合作伙伴xform原子列表(绿色框)。

 
          
          
         <!-xsl:value-of select =" $ length"> 
         
             <!-在变量中存储值->
              
              
              
           
             <!-SQL调用->
             
              -这里UPDATE查询
        例如:更新OCRD设置CardName ='XYZ'WHERE CARDCODE ='C0009'
            
             
         
         
             
                  
                  
             
         
      

使用SQL标记,我只能查看SQL查询(UPDATE OCRD SET CARDNAME ='XYZ'WHERE CARDCODE ='C0009'),无法执行查询。

如果我有任何遗漏,请建议我,

谢谢

Chenna。

(14.2 kB)
7条回答
奄奄一息的小鱼
2020-09-12 05:19 .采纳回答

Chenna

有两种方法可以实现此目标:对于每个处理原子和元素。 当您可以改用XSL元素时,不建议使用foreach处理原子。

1)使用处理原子:

在我的基本场景中,我有1个具有传入XML的原子

 <传入>
     
          782076 
         十-10-1 
          
          
          
          www.supportten.com 
          
          
          
          
         <状态> 
          
     
     
          796691 
         艺术与咨询
          
          
          
          www.vFx-consulting.co.in 
          
          
          
          
         <状态> 
          
     
     
          782077 
         客户公司
          +91 950 254 22 82 
          
          
          http://www.cccomp.com 
         工业大道1号
          
          MyCity 
          306345 
          StateRecord 
         印度
     
     
          782927 
          XYZ 
          
          
          
          
          
          
          
          
         <状态> 
          
     
 
 

场景流程和foreach XPath表达式如下:

然后,如果我调试场景,我可以看到有4个传入的对象有4个会话:

这是非(!)推荐的方法。

2)使用XSLT foreach转换:

在这里,您可以在xform原子中准备一个复杂的对象。 处理流程将非常简单:

其中的转换方式如下:

< pre> 2 <版本> 2 <业务伙伴> <行> <卡名> <卡类型> 客户

相同的逻辑可以应用于SQL Call原子。

一周热门 更多>

相关问答