开发基础 报表教程 数据字典 对话编程 表单打印 增强出口 SAP接口 S/4 HANA
实战案例 实战笔记 资料下载 CRM
问答互助 会员分享 俱乐部 广告区
论坛指南、建议和投诉
Twilight发表于 2014-07-30 20:02Twilight 最后回复于 2014-07-30 20:02 [复制链接] 4962 0
使用道具 举报
Twilight
管理员
发表回复 回帖后跳转到最后一页
Step 1: 在新页中显示新凭证
下面的过程是用来填充REUSE_ALV_GRID_DISPLAY参数IT_SORT 的,当遇到一个新凭证记录时,alv就会自动插入一个page break
Step 2:将每个新凭证的page number重置为1
对于ALV function module,我们不能控制页码,因为当一个新页被打印出来时,计数器就会自动增加页码,所以为了获得这种效果,就不得不在TOP_OF_PAGE过程里在定制化代码。
在我们的例子中,我们使用ALV grid展示报表,所以在报表展示界面是看不见页码的,他仅仅在打印预览或者在打印时可见。
Step 3: Display report
效果:
ALV grid展示报表时,没有展示页码,现在点击预览按钮
在打印预览中,显示了页码
局限性:
1、页码在报表中的位置,我们是依据报表的宽度计算出来的,在该例中我们使用下面的计算公式
Page number position = sy-linsz – 10.
2、在打印预览中,仅第一页的页码对每个凭证来说是可见的。例如,一个凭证被分散在多页面,那么仅仅第一个页码将会可见,你在打印时能看见所有的页码