List初级学习总结

刚学abap,最早接触的怎么生成一个list,作为输出。所以,在abap里面,最熟悉的可以说是list方面的知识。List最熟悉的另一个原因,是相对其他来说,最为简单,光用一句write,就可以在list上面涂鸦点看得见的东西,这比什么内表啊,类型什么的要到debug里面看的要直观的多,也方便的多。

也就因为此,list的方面的知识,很多都是作为一个程序员的基本功,而不是abap专有的东西。所以也在此我也就不再复述了。毕竟我水平也不咋地。

而在一个list生成的过程中,专属于abap的么,就是要分清一个用来出力的内表的结构(很不好意思,现在做对日开发,习惯用出力了,不知道正规说法怎么说,还请各位赐教)。以及分清楚什么是header,什么是details。以便在定义出力用了内表结构的时候,要把作为header的项目和details的项目分开,一遍在循环内表,输出的时候,能够方便的用at new 和 at end of这两个事件。

如果再深入一点,那就是其实list是有page这个"概念"的。可能是从小到大不用打印机,外加用管了office这个软件。所以第一次,在abap里面用TOP-OF-PAGE的时候,我楞是没看出换页了,以为自己哪里出了错。在这里,要请和我一样刚刚接触abap的初学者们了解的一点的是,at new page事件是每页都触发。end of page是只有在定义了页脚,且输出行数超过一页的行数时,只触发满页的页,最后一页往往是不会触发的。如果要硬性除发,其实这在很多情况下都会发生。可以用RESERVE x lines 这语句,其中x最好是你定义page 的行数。

这里说到了两个事件。其实要想想,abap关于list方面的初级知识,有点技术含量我想也只有要理清各个事件的关系了。如果要了解各个事件之间的关系。我建议还是去看sap的标准教程。因为人家说的那可是图文并茂。并不像我这样干巴巴的。

最后,就是list的分类。分为basic list 和detail list的区别。Basic list是最先出来的一张list。这张list由于是最先出来的,所以abap给予其很多关照,给了其很多事件,可以说几乎贯穿了整个出力过程。而detail list就可怜的多,十几个list共用着AT LINE-SELECTIONTOP-OF-PAGE DURING LINE-SELECTION(不知道拼对了没有。)。而靠着SY-LSIND来区分着彼此。

好了,这就是我在看了bc405之后,对于各个list之间的想法,搞规矩,希望各位前辈们能指出我之中错误和不足的地方。谢谢大家。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14927513/viewspace-442239/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/14927513/viewspace-442239/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值