在FOR,THEN和UNTIL | WHILE中使用相应的

2020-09-12 06:40发布

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

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


专家们,

DATA(lv_len)=行(poitem)。
poitem [] =值#(FOR i = 10 THEN i + 10 UNTIL i GT lv_len * 10
(po_item = i acctasscat ='W') )。

在上述语法中,我尝试嵌入相应的内容,以便仅填充表poitem的两个字段,但遇到错误

DATA(lv_len)=线(poitem)。
poitem [] =值#(FOR i = 10 THEN i + 10直到i GT线(poitem)* 10
(po_item = i acctasscat =' W'))。

我也尝试给出正则表达式的长度,以便它能运行表行数但不成功

所以请您在这两点上帮我

此致

湿婆

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

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


专家们,

DATA(lv_len)=行(poitem)。
poitem [] =值#(FOR i = 10 THEN i + 10 UNTIL i GT lv_len * 10
(po_item = i acctasscat ='W') )。

在上述语法中,我尝试嵌入相应的内容,以便仅填充表poitem的两个字段,但遇到错误

DATA(lv_len)=线(poitem)。
poitem [] =值#(FOR i = 10 THEN i + 10直到i GT线(poitem)* 10
(po_item = i acctasscat =' W'))。

我也尝试给出正则表达式的长度,以便它能运行表行数但不成功

所以请您在这两点上帮我

此致

湿婆

付费偷看设置
发送
5条回答
小c菟菟
1楼-- · 2020-09-12 07:02

ad 1)您正在使用构造函数表达式VALUE创建仅填充po_item和acctasscat的新内部表。

您遇到了哪些错误? 编码工作正常!


ad 2)没有正则表达式! 这只会在表格中添加1行!


如果您尝试更改表的项目-我想您想这样做...-您需要使用其他一些编码和命令!


感谢多米

悻福寶寶
2楼-- · 2020-09-12 07:00

我在两个代码中都没有看到错误。 您遇到什么错误?

土豆飞人
3楼-- · 2020-09-12 07:07

poitem []中已经有6行。

poitem [] = VALUE#(for i = 10 THEN i + 10 UNTIL i GT lines(poitem)* 10

(po_item = i acctasscat ='W'))。

1)在这种语法中,没有错误,但理想情况下,考虑到UNTIL i GT lines(poitem)* 10,它应该运行6次迭代,但它只能运行一次迭代

2)假设表中已经填充了一些字段,因此它们被清除了,只有po_item和acctasscat两个字段被填充了

那么如何处理这种情况

亦是此间程序员
4楼-- · 2020-09-12 07:04

您好,Shiva,如果我理解正确,您想根据其中的订单项数量来循环poitem,仅将两个字段移动到另一个poitem表中

然后,您可以直接循环poitem并使用CORRESPONDING将想要的字段移动到其他内部表。 请检查示例。

类型:
   ty_tab1的开头,
     matnr类型matnr,
     mbrsh类型mbrsh,
   ty_tab1的结尾,
   tt_tab1使用默认密钥输入ty_tab1的标准表。

 数据:lt_tab1键入tt_tab1。

 选择*从mara到表@data(lt_mara)最多100行。

 lt_tab1 =值tt_tab1(lt_mara中的wa(对应于#(wa)))。
 cl_demo_output => display(lt_tab1)。
Violet凡
5楼-- · 2020-09-12 06:53

嗨,SN,

您是正确的,但我不想构造新表,而是在现有poitem表中更新其中已有记录的两个字段,其中一个字段的值恒定,而另一个字段的值递增。

(po_item = i acctasscat ='W')

此致

湿婆

一周热门 更多>