在ABAP 7.40 SP0019中修改同一内部表

2020-09-10 16:47发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我正在学习使用ABAP....

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

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


嗨,

我正在学习使用ABAP.C的新功能进行编码,任何人都可以通过逻辑帮助我

我有一个包含3列的内部表,我想基于条件与新功能7.40一起使用的列修改同一内部表

 SELECT ebeln AS po,
          bukrs AS ccode,
          ernam AS uname
          从ekko
          ernam = @uname到表@DATA(result1)最多10行。

 * ~~~~老方法
 *将公司代码更改为0005,公司代码为0001
 在ccode eq为'0001'的地方在result1 ASSIGNING 处循环。
    -ccode ='0005'。
  结局。
 --------------------------------------------------  ------------------------------------

 * ~~~~~我正在尝试新的方法,如何在下面的代码中添加where子句。
 result1 = VALUE#(LET lt_temp = result1 IN FOR ls_temp IN lt_temp
                                 (po = ls_temp-po
                       ccode ='0221'
                       uname = ls_temp-uname))。
 *显示


   cl_demo_output => display(result1)。
6条回答
哎,真难
2020-09-10 17:27 .采纳回答

如果您在谈论构造函数表达式,则将使用它们来构造而不是更新。

因此,请继续按照"旧方法"进行操作。

在您的情况下,您应该使用其他"旧"语法,该语法要快一些:

 DATA ls_result1类似于result1的行。
 ls_result1-ccode ='0005'。
 修改结果1来自ls_result1传输ccode,其中ceq等于'0001'。

一周热门 更多>