AT NEW 和 AT END OF

假设内表gt_ab有 col1,col2,col3三个字段。

DATA gt_ab TYPE STANDARD TABLE OF ty_ab.”内表

DATA gs_ab TYPE ty_ab. ”结构

第一条记录:col1=’1000’,col2=’AAA1’,col3=1
第二条记录:col1=’1000’,col2=’AAA2’,col3=2
第三条记录:col1=’2000’,col2=’AAA2’,col3=3
第四条记录:col1=’2000’,col2=’AAA2’,col3=4
第五条记录:col1=’2000’,col2=’AAA3’,col3=5
第六条记录:col1=’3000’,col2=’AAA3’,col3=6

AT NEW col1:以col1为分组条件,在每组的第一条记录时执行,在上述例子里会在在第一条,第三条,第六条记录时会执行。

AT END OF col1:以col1为分组条件,在每组的最后一条记录时执行,在上述例子里会在在第二条,第五条,第六条记录时会执行。

AT NEW col2:以col1和col2为分组条件,在每组的第一条记录时执行,在上述例子里会在第一条,第二条,第三条,第五条,第六条记录时会执行。

AT END OF col2:以col1和col2为分组条件,在每组的最后一条记录时执行,在上述例子里会在在第一条,第二条,第四条,第五条,第六条记录时会执行。

扫描二维码关注公众号,回复: 5846075 查看本文章

AT NEW或者AT END OF xxx以xxx以及其左边的所有字段为分组条件,在每组的第一条记录或者最后一条记录时执行。

进入AT NEW和AT END OF语句后,工作区里的数字型会清零,字符型会变成*,所以不能直接使用工作区进行数据操作。可以使用READ TABLE gt_ab INTO gs_ab INDEX SY-TABIX语句重新读到该行数据。
 

猜你喜欢

转载自blog.csdn.net/qq_37968127/article/details/88786706
end