abap中取内表中每一类中的一行的方法
2016-08-09 13:02
134 查看
当一个内表有很多数据,并且每一类又有多条数据,而我们只要处理其中每一类中的一条数据,取得的这一条数据要有排序的。
比如取每个到货单号(xblnr) 的 第一次收货时间(budat)
1: 用 xblnr budat 进行排序(ascending)
然后 用 delete adjacent duplicates from itab comparing xblnr
sort itab descending by xblnr budat.
delete adjacent duplicates from itab comparing xblnr.
2: 在内表循环中用 at new xblnr,at end of xblnr 处理。把每一个xblnr 中最小的日期拿出来即可
data m type d.
loop at itab into ss.
at new xblnr .
m= '99999999'.
endat.
if ss-budat < m.
m = ss-budat.
endif.
at end of t.
ss2-t = ss-xblnr.
ss2-d = m.
append ss2 to itab2.
endat.
endloop.
比如取每个到货单号(xblnr) 的 第一次收货时间(budat)
1: 用 xblnr budat 进行排序(ascending)
然后 用 delete adjacent duplicates from itab comparing xblnr
sort itab descending by xblnr budat.
delete adjacent duplicates from itab comparing xblnr.
2: 在内表循环中用 at new xblnr,at end of xblnr 处理。把每一个xblnr 中最小的日期拿出来即可
data m type d.
loop at itab into ss.
at new xblnr .
m= '99999999'.
endat.
if ss-budat < m.
m = ss-budat.
endif.
at end of t.
ss2-t = ss-xblnr.
ss2-d = m.
append ss2 to itab2.
endat.
endloop.
相关文章推荐
- abap中取内表中每一类中的一行的方法
- 在ASP.NET中实现鼠标移动悬停在DataGrid时高亮显示这一行的方法
- table中動態刪除新增一行的方法
- 将DataTable中的一行复制到另一个DataTable的方法
- 鼠标移到GridView某一行时改变该行的背景色方法一
- abap 字符类型 和处理方法
- 鼠标移到GridView某一行时改变该行的背景色方法二
- 鼠标移到GridView某一行时改变该行的背景色方法一
- ABAP中控制windows剪贴板的方法
- SAP ABAP程序优化方法(搜集自论坛)
- 读取文本数据文件的某一行的方法
- 后台一行输入太多内容,使前台显示自动换行方法
- ABAP中控制windows剪贴板的方法
- 将DataTable中的一行复制到另一个DataTable的方法
- ABAP开发权限破解方法与注意问题
- 如何在DataGrid中新增一行(第一种方法)
- 让JScrollPanel显示其内的JTextArea的最后一行的方法
- 查询存储过程中的结果集.(顺便贴:一行折多行的方法)
- DataGridView的paint方法来绘制一行”假”Row来显示(转)
- MSSQL2005中将多行合并为一行的方法,此方法不再使用sql2000中函数转换的办法