SAP Append和Collect的差异

差异:Collect会根据Key字段对I P F类型的数据进行汇总,Append只是向内表最后一行加入一条记录

演示代码:

DATA: GT_SFLIGHT TYPE TABLE OF SFLIGHT WITH HEADER LINE.

*COLLECT 只汇总 I P F类型字段,其他类型字段为KEY Field
GT_SFLIGHT-CARRID = ‘AB’.
GT_SFLIGHT-CONNID = ‘0014’.
GT_SFLIGHT-PRICE = ‘120.98’.
COLLECT GT_SFLIGHT.

GT_SFLIGHT-CARRID = ‘AB’.
GT_SFLIGHT-CONNID = ‘0014’.
GT_SFLIGHT-PRICE = ‘159.77’.
COLLECT GT_SFLIGHT.

CL_DEMO_OUTPUT=>DISPLAY( GT_SFLIGHT[] ).

*APPEND
CLEAR: GT_SFLIGHT,GT_SFLIGHT[].

GT_SFLIGHT-CARRID = ‘AB’.
GT_SFLIGHT-CONNID = ‘0014’.
GT_SFLIGHT-PRICE = ‘120.98’.
APPEND GT_SFLIGHT.

GT_SFLIGHT-CARRID = ‘AB’.
GT_SFLIGHT-CONNID = ‘0014’.
GT_SFLIGHT-PRICE = ‘159.77’.
APPEND GT_SFLIGHT.

CL_DEMO_OUTPUT=>DISPLAY( GT_SFLIGHT[] ).

输出效果:

1-1

1-2