反正在写代码的时候遇到有一个东西需要一个新的定义,就尝试着用DATA(TEMP)或者FIELD-SYMBOL(<TEMP>).能激活就没问题,不能激活就自己定义一个,具体有以下这些语句
描述 | 7.40前 | 7.40后 |
Data statement | DATA text TYPE string. | DATA(text) = `ABC`. |
Loop at into work area | DATA wa like LINE OF itab. | LOOP AT itab INTO DATA(wa). |
Call method | DATA a1 TYPE … DATA a2 TYPE … oref->meth( IMPORTING p1 = a1 IMPORTING p2 = a2 ). | oref->meth( IMPORTING p1 = DATA(a1) IMPORTING p2 = DATA(a2) ). |
Loop at assigning | FIELD-SYMBOLS: <line> type … LOOP AT itab ASSIGNING <line>. … ENDLOOP. | LOOP AT itab ASSIGNING FIELD-SYMBOL(<line>). |
Read assigning | FIELD-SYMBOLS: <line> type … READ TABLE itab ASSIGNING <line>. | READ TABLE itab ASSIGNING FIELD-SYMBOL(<line>). |
Select into table | DATA itab TYPE TABLE OF dbtab. SELECT * FROM dbtab INTO TABLE itab WHERE fld1 = lv_fld1. | SELECT * FROM dbtab INTO TABLE DATA(itab) WHERE fld1 = @lv_fld1. |
Select single into | SELECT SINGLE f1 f2 FROM dbtab INTO (lv_f1, lv_f2) WHERE … WRITE: / lv_f1, lv_f2. | SELECT SINGLE f1 AS my_f1, F2 AS abc FROM dbtab INTO DATA(ls_structure) WHERE … WRITE: / ls_structure-my_f1, ls_structure-abc. |