常规的报表设计,如RDLC、水晶报表等,需要安装Visual Studio,通过VS提供的报表设计界面来设计报表,通过VS设计报表对.NET开发者而言非常方便,但是对于非开发人员,要安装4G的一个VS,且需要一个License,则成本显得有点高。本文提供另外一种方法,不使用VS也可以设计报表。
通过ActiveReports提供的免费报表设计器(绿色的exe可执行文件),我们也可以设计报表,下面就开始报表设计:
报表设计师
产品经理
需求分析师
安装了.NET Framework 4.0环境
MS Office Access 2007及以上版本
第1分钟:认识报表设计器
双击“GrapeCity.ActiveReports.Samples.EndUserDesigner.exe”,可打开如下的报表设计界面
整体风格和Visual Studio,非常方便上手,尤其熟悉Visual Stuido界面。
本文采用区域报表来实现。
在区域报表中,提供了14个报表控件,其中本文会用到6种控件:(有关区域报表、页面报表的区别,请参考)
Label: 标签用于显示说明性文本,可以帮助用户描述显示在报表中的数据。
TextBox :文本框是一个基本的报表控件,它允许直接显示和编辑未格式化的文本。
Picture:此控件用于在报表中显示图像文件,可以控制图像大小等属性。
Line: 线以可视方式绘制边界或突出显示报表中特定的区域。
ReportInfo:ReportInfo 控件允许您快速显示页码、页数和报表日期等信息。
Barcode:条形码是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符。
第2钟:配置数据源和布局
下面这张图是区域报表的数据映射说明,其中对应关系:数据库中一条记录对应报表的Detail一条信息。
了解了数据映射关系后,我们开始进行报表设计,首先配置数据源,我们这里提供了Access关系型数据库(下载地址在本文最下面)。
可打开如下的数据源视图:
配置完数据源后,选择DataSource1,右键添加数据集,即通过一条SQL语句,则可获得一个DataTable类似的数据集对象。
本博客使用的完整的SQL如下,数据源可通过这个路径下载 (下载附件后,解压文件,获得NWind_CHS_Small.mdb文件)
产品.产品ID, 产品.产品名称, 产品.供应商ID, 产品.类别ID, 产品.单位数量, 产品.单价, 产品.库存量, 产品.订购量,
产品.再订购量, 产品.中止, 产品.图片, 产品.产品描述, 类别.类别名称, 类别.说明 类别说明, 类别.图片 类别图片,
供应商.公司名称 供应商, 供应商.联系人姓名, 供应商.城市, 供应商.地址
((供应商
产品 供应商.供应商ID = 产品.供应商ID)
类别 产品.类别ID = 类别.类别ID)
供应商.供应商ID, 产品.类别ID
自此,数据源配置已经完成,完成了报表设计的入门,下面开始明确报表设计需求。
第3分钟:报表设计需求
我们希望报表呈现的结果是类似下面的布局,报表头、报表数据详情、报表尾,即整体风格和RDLC报表类似
同时,还可呈现二维码、图片展现格式、报表生成时间、报表页面等信息。
考虑到将来系统迁移的最低成本,我们希望可以在Winform、WPF、ASP.NET、HTML5等平台中能够最低成本的复用---一次性精心设计的报表。
第4分钟:拖动报表控件设计报表
在报表设计器的底部增加了多个设计器按钮,通过这些按钮可以快速的访问布局向导,为报表模板设计带来更多便利操作。
自动对齐线(Snap Lines):在报表设计界面上拖动某个控件,当该控件与其它控件(或者报表某个区域的边界)对齐时,被拖动控件和与之对齐的控件(或者报表某个区域的边界)之间将出现自动对齐线,让用户自由地布局控件变得更加容易。
自动网格对齐(Snap to Grid):在报表设计界面上拖动某个控件,该控件将自动和与之最近的网格线进行对齐,该功能可以根据设置开启或者关闭。
类似于Excel的自动滚动功能(Excel-like auto scrolling):在报表设计界面上拖动某个控件,当拖动的区域超出了设计界面当前显示的范围时,设计界面会根据您拖动方向进行自动移动,直到报表设计界面的边缘。
平移模式(Pan Mode):当切换到平移模式时会显示一个手形的光标,按下鼠标左键就可以自由拖动报表的设计界面。
自动尺寸线(Dimension lines):在报表设计界面上拖动控件、改变控件大小操作时,控件边缘会自动出现尺寸线,通过尺寸线可以清楚的知道控件与报表边界之间的距离。
报表控件对话框(Report Control Dialogs):提供简便的方法来设置报表控件的相关属性。
区域报表布局默认情况下显示三个区域: 页眉、明细和页脚。您可以添加或删除页眉和页脚,报表头和报表尾,还可以添加 32 级的分组页眉和页脚(在报表上单击右键并选择插入,可以插入报表头/报表尾和分组头/分组尾。)。将控件拖这些区域中,以此来显示报表数据。报表布局会被保存为 RPX 格式。
依次从数据字段,往报表上拖动字段,如供应商名称、联系人、地址、城市等
对于Line、BarCode和Picture,则需要从左侧的工具栏拖入。
其中BarCode和Picture需要在属性对话框修改数据---DataField字段。
第5分钟:预览结果、打印、导出
预览查看报表结果的效果如下
导出:在设计工具中,通过文件---Export--可导出多种文件格式(HTML、PDF、Excel等)。
打印功能,通过工具栏的打印按钮直接打印
怎么样,是否有想动手设计报表的冲动?
绿色报表设计工具(解压即可使用,含C#源码)
数据库下载地址(下载附件后,解压文件,获得NWind_CHS_Small.mdb文件)
在线参考文档
另外,对这款绿色的报表设计器提供源码,可供您和您的小伙伴再次定制,如添加公司logo等个性化需求。(源码编译则需要安装ActiveReports安装授权)
本文用的是C#.NET绿色版,如有需要VB.NET绿色设计器源码的,请留言告之您的邮箱,单独发给您。