1

如何将旧的 BW3.x 代码(带标题的表格)更改为 BW7.x(不带标题的表格)

旧代码:

LOOP AT p_package.
  gv_tabix = sy-tabix.
  " changing header ... and more
  MODIFY p_package INDEX gv_tabix.

此处标题行发生更改,表格使用modify和更新index

不幸的是,我看不到如何index在没有标题的表上使用关键字。

到目前为止,我编码:

LOOP AT p_package into p_package_line.
  gv_tabix = sy-tabix.
  " changing p_package_line ...
  MODIFY table p_package from p_package_line

但我不确定它是否正确。

4

1 回答 1

3

使用字段符号。这消除了MODIFY完全显式表的需要:

LOOP AT p_package ASSIGNING FIELD-SYMBOL(<package_line>).
  <package_line>-foo = 'bar'.
ENDLOOP.

(或旧版本)

FIELD-SYMBOLS <package_line> TYPE LINE OF p_package.
LOOP AT p_package ASSIGNING <package_line>.
  <package_line>-foo = 'bar'.
ENDLOOP.

如果你想坚持使用MODIFY

MODIFY p_package FROM p_package_line INDEX foobarhyperprefixstuffthingy_tabix.

(是的,它在文档中:-))。

于 2016-08-09T10:12:04.977 回答