- 排版
1. 可以利用表格来布局,以避免调整固定宽度的麻烦。
2. 一个表的表头里还可以嵌套表格。
3. 设置rdlc报表打印格式。首先打开RDLC报表设计器页面。在灰色部分点右键 -> 报表属性。报表的默认设置都可以在此界面修改。当选择纵向时,报表宽度21cm,高度29.7cm。当选择横向时,宽度29.7cm,高度21cm。
InteractiveSize设置纸张大小,Margin设置页边距,PageSize是设置报表的大小。适当减小边距来调整排版以供打印。
- 数据展示
1. 可以使用Hide Duplicates属性和Visibility表达式配合来隐藏重复的、不需要显示的数据。
- Hide Duplicates
- Visibility
2. CountDistinct函数可以忽略重复计算总数。
3. 数据源绑定出现问题时,可以用XML方式打开rdlc修改/删除数据源。
4. 用ReportItems这个属性来取value值。细节如下:
=ReportItems!textbox1.Value + ReportItems!textbox12.Value
注意,页头页脚可以取Body里的值,但是Body里不可以取页头与页脚的值
5. 针对于C/S结构,需要特殊处理的数据如果很难在报表中处理好,那么最好是在SQL语句中实现,或者在客户端获取DataSet后进行处理。避免对服务端造成额外负荷。
6. 主报表传参数给子报表时,且报表存在按分组传参时,要保证分组依据的字段不能为null,所以在sql语句中要用 ISNULL(xxx, '')函数来避免出现NULL值。否则会在报表窗体显示错误 “an error occurred during local report processing. An internal error occurred on the report server. See the error log for more details. ” 当然,DataSet的列要跟sql获取的列一致。