报表要求:(见下表)
要求:
1、不是套打,表格线也需要输出
2、每张报表打印8行记录,不足的空白行也需要输出
3、按凭证号打印单据,可以连续打印多张报表。
一、创建样式:
在创建Form之前,需要创建多种段落和字体样式,供Form中的文字使用。需要设置多种“段落格式”,并且必须在“表头数据”中设定“标准段落”
1.创建段落格式,一般有RH(Report Header),PD(Page Header), PB(Page Bottom),LD(Line Header and Details),字体:CNSONG,9pt。注意最好在各段落的“首行缩”中设定1mm的缩进,否则,在Form中表格线和文字之间会没有任何间隙。
2.设置“表头数据”中“标准段落”
3、保存并激活样式文件。
二、创建SmartForm
1、在“全局设置”-〉“表格属性”-〉“输出选项”中
设定“页格式”:即纸张的大小
“样式”:设定本Form使用的默认样式文件,这里指定为第一步创建的样式文件。
2、在“全局设置”-〉“表格接口”-〉“导入”
设置两个参数:
ptr_header type c
ptr_items type c
这两个参数用来传入我们在Report中Export内表数据的句柄(ID key)。
3、在“全局设置”-〉“全局定义”中进行多项设定
a、“类型”设定,在这里需要定义4个类型,一个用来保存表头数据的工作区和内表,一个用来保存明细数据的工作区和内表,它们的结构必须与Report中Export到数据库中的内表的结构完全对应一致,否则,我们将不能从传入的句柄(ID key)中恢复内表数据。
TYPES:
BEGIN OF TYP_header_ROW ,
mblnr LIKE mseg - mblnr, " 凭证号
bldat LIKE rkpf - rsdat, " 凭证日期
c_so( 16 ) TYPE c, " 销售订单号
c_issdt LIKE sy - datum, " 发货日期
werks LIKE mseg - werks, " 地点
PLNAT_NAME LIKE t001w - name1, " 出货单位名称
kokrs LIKE mseg - kokrs, " 控制范围
kostl LIKE mseg - kostl, " 成本中心
cc_name LIKE cskt - ktex