内部表的 MOVE-CORRESPONDING?

MOVE-CORRESPONDING for internal tables?

我想要 MOVE 个字段,从 itab1itab2,基于它们的 字段名称 。我试过以下:

CLEAR itab2.
MOVE-CORRESPONDING itab1 TO itab2.

这是可行的,但前提是 FIELDS 被命名为相等。

现在我想做类似的事情:

CLEAR itab2.
MOVE-CORRESPONDING itab1-field1 TO itab2-field2.
MOVE-CORRESPONDING itab1-field3 TO itab2-field4.

等等..但每次我尝试这样做时都会出现以下错误"itab1-field1" is not a structure or an internal table.

我也试过这样写MOVE-CORRESPONDING <itab1>-field1但是这个也不行

我怎样才能达到我想要的?感谢您尝试帮助我..

从 ABAP 7.4 开始,可以使用 CORRESPONDING ... MAPPING 语句完成:

itab_target = CORRESPONDING #( itab_source
                               MAPPING field2 = field1
                                       field4 = field3 ).

目标将基于源,其中字段具有相同的名称,否则将使用 MAPPING(目标字段 2 将是源字段 1,等等)这也适用于结构和内部表。

ABAP Help CORRESPONDING