首页 > 代码库 > AT NEW 和 AT END OF 的用法

AT NEW 和 AT END OF 的用法

第一条记录: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为分组条件,在每组的最后一条记录时执行,在上述例子里会在在第一条,第二条,第四条,第五条,第六条记录时会执行。

注意点:at new/end of 字段1A,字段A 以后的值全部变为*。

解决策:1.使用指针,loop at lt_itab1 assigin <ls_itab1>,使用指针可以避免出现*

               2. 定义变量,把构造里的值赋值给变量,进行保存。

AT NEW 和 AT END OF 的用法