B0B*_*BBY 2 abap internal-tables
我想要基于字段名称从到 的MOVE字段。我尝试过以下操作:itab1itab2
CLEAR itab2.
MOVE-CORRESPONDING itab1 TO itab2.
Run Code Online (Sandbox Code Playgroud)
这是可行的,但前提是FIELDS名称相同。
现在我想做类似的事情:
CLEAR itab2.
MOVE-CORRESPONDING itab1-field1 TO itab2-field2.
MOVE-CORRESPONDING itab1-field3 TO itab2-field4.
Run Code Online (Sandbox Code Playgroud)
等等..但是每次我尝试这样做时都会出现以下错误"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 ).
Run Code Online (Sandbox Code Playgroud)
目标将基于源,其中字段具有相同的名称,否则将使用映射(目标字段2将是源字段1等)这也适用于结构和内部表。