简单来说:
collect
在非数值字段相同的情况下,起到了数值字段汇总作用,汇总所有数值字段。
非数值字段不同的情况下,效果和append相同执行插入内表操作,当非数值字段相同的时候,
则相当于modify的效果,只不过是将数值字段进行汇总相加后更新。
at end of
汇总字段之后的数值字段。汇总字段之后的非数值字段变成*
例按客户汇总金额。
collect用法
sort gt_alv by vkorg vtweg kunnr.
loop at gt_alv into gs_alv.
collect gs_alv into gt_alv1.
endloop.
at end of 用法
sort gt_alv by vkorg vtweg kunnr.
loop at gt_alv into gs_alv.
MOVE-CORRESPONDING GS_ALV TO GS_ALV1.“客户字段之后的字段汇总后会变成*,所以提前赋值
at end of kunnr.
sum.
gs_alv1-hsl = gs_alv-hsl.
append gs_alv1 to gt_alv1.
clear:gs_alv,gs_alv1.
endat.
endloop.