sf 抬头多好号填充空格 并计算每页的页数
思路:
1、定义参数,注意初始值
2、同样确定输出几行
CLEAR:itab3[]. b = b + 1. "计算空行时需要的总行数 IF A > 7. CLEAR A. ENDIF. A = A + 1. IF A > 7. PAGE02 = PAGE02 + 1. ENDIF.
这里的B 为每个抬头好对应的内存循环表的行数,之力只能在这给他计算总行数了。
A 则是控制输出几行 PAGE02 是每个抬头好对应的内存循环表的输出每页翻页的页码。
3、达到一定行数是跳页
4、计算行数并出入空行
IF B MOD 8 <> 0. C = B MOD 8. D = 8 - C. CLEAR ITAB2. DO D TIMES. APPEND itab2 to itab3 . ENDDO. ELSEIF B MOD 8 = 0. DO 8 TIMES. APPEND itab2 to itab3 . ENDDO. ENDIF. CLEAR: b.
注意这里的CLEAR ITAB2. 很重要,不清楚的话,会把每一页的空行加到下一页去。
5、加空行
6、计算每个抬头的页数
num = num + 1. CLEAR F. LOOP AT itab1 WHERE belnr = itab-belnr. f = f + 1. ENDLOOP. IF F MOD 8 = 0. F = F + 1. ENDIF. DO 100 TIMES. IF f > 0. IF f - 8 > 0. f = f - 8. page01 = page01 + 1. ENDIF. ENDIF. ENDDO.
CLEAR:A,B.
6.清空
7、OK