关键字CORRESPONDING的用法

ABAP7.5下的CORRESPONDING用法:用于实现结构和内表之间的动态赋值操作,可以实现动态的赋值,默认值,lookup等功能。
简单案列:

*&---------------------------------------------------------------------*
*& Report Z_ZHANGM_002
*&---------------------------------------------------------------------*
*&关键字CORRESPONDING的用法:需要在ABAP7.5环境下使用
*&否则会报错:字段 "CORRESPONDING" 未知。它既不在其中一个指定表中,也没有通过 "DATA" 语句定义。
*&---------------------------------------------------------------------*
REPORT Z_ZHANGM_002.
DATA:
  BEGIN OF struct1,
    col1 TYPE i VALUE 1,
    col2 TYPE i VALUE 2,
  END OF struct1.
DATA:
  BEGIN OF struct2,
    col2 TYPE i VALUE 3,  "
    col3 TYPE i VALUE 4,
  END OF struct2.

*MOVE-CORRESPONDING struct2 TO struct1.
"struct2按照struct1重新赋值,相同字段赋值struct1的值,不同字段重新定义
struct2 = CORRESPONDING #( struct1 ).

"直接赋值
DATA itab TYPE TABLE OF i.
itab = VALUE #( ( 1 ) ( 2 ) ( 3 ) ). "itab此时赋值为1,2,3
itab = VALUE #( ( 4 ) ( 5 ) ( 6 ) ). " itab被覆盖,重新赋值4,5,6

WRITE:'关键字CORRESPONDING用法'.

在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43734184/article/details/112915872