刚开始学习ABAP时,总是对Like / Like table of / Like line of 定义的东西不是很清楚!
现在把自己的理解记下来,以备后查,不对之处请各位指正!
data: beginof itab OCCURS0,
col1 typei,
col2 typei,
endof itab.
*&*&*可跟内表,结构
data: itab1a like itab. "定义一个结构
data: itab1b like itab occurs0." 定义一个没有表头的内表
data: itab1c like itab occurs0WITHHEADERLINE." 定义一个有表头的内表
*&*&可跟内表结构
data: itab2b liketableof itab . "定义一个没有表头的内表
****data: itab2b like table of itab occurs 0.
data: itab2c liketableof itab withHEADERLINE ."定义一个有表头的
****&**只能跟内表, 不能跟结构
data: itab4a likelineof itab. "定义一个结构
data: itab4b likeLINEOF itab occurs0. "定义一个没有表头的内表
data: itab4c likelineof itab occurs0WITHHEADERLINE. "定义一个有表头的
do7times.
itab-col1 = sy-index.
itab-col2 = sy-index ** 2.
APPEND ITAB.
enddo.
move itab to itab1a.
move itab[] to itab1b[].
move itab to itab1c.
move itab[] to itab2b[].
move itab to itab2c.
move itab to itab4a.
move itab[] to itab4b[].
move itab to itab4c.
*&***
补充 LIKE RANGE OF 的用法:
定义: DATA: ITAB LIKE RANGE OF MARA-MATNR.
说明:上句定义了一个表,结构是RANGES表结构,LOW跟HIGH值的类型就是MARA-MATNR的类型。