创建report报表中的子报表问题需要注意的是参数:
1、在主报表中Subreport 的属性
1.1、Subreport Expression 直接填写子报表名称(主报表和子报表在同一级目录)
1.2、Expression Class 为 java.lang.String
1.3、Parameters(向子报表传递参数)点击 Add - Name为参数名 - Expression 为绑定的字段(于子表中关联的字段)
1.4、在子报表中增加参数(名称和1.3中创建的Name一样)。
2、在子报表中的一些处理
1、创建和要查询的子报表字段一样,但内容是空的
2、内容如下:
declare @fcount int
declare @length int
SELECT @fcount =sum(1) FROM [childtable] where Main_Id=$P{ExpressionName}
set @length=(@fcount/15+1)*15-@fcount
exec('SELECT
................................
FROM
"dbo"."viewWebShiftAssetsDetail" viewWebShiftAssetsDetail
WHERE viewWebShiftAssetsDetail."Wbs_Id" = '+$P{viewWebShiftAssets_Wbs_Id}+'
UNION ALL
SELECT TOP '+@length+' 字段和子表一样的空记录表 FROM [table_Empyt]')
3、pdf打印时间注意的中文问题
1、lable的属性
1.1、Pdf Font name is now deprecated,you hould use Font when using。。。。改为 STSong-Light
1.2、pdf Encoding 改为 UniGB-UCS2-H (Chinese Simplified)