最近在公司实习,由于公司需要用到的一种叫做水晶报表的神奇的东东,老大就叫我们学习学习。怕自己以后忘了,也为了以后阅读方便,将其记录下来。

使用工具:vs2008

 

基本方法一、使用水晶报表的推模式

步骤1、当前解决方案,右键->添加->新建项,选择数据集

 

步骤2、更改数据集名后选择添加,为了方便我这里没有改名,得到如下的数据集设计界面

 

步骤3、在上面界面的左面有一个工具栏点击datatable,在右面空白处单击左键,得到一个table,可以对该table进行重名。

 

步骤4、我们选择添加该数据集的内容,如下在table的界面上右键出现如下的情况,添加列。可以根据实际情况进行添加。这样一个数据集就建立好了,接下来我们添加报表。

 

步骤5、当前解决方案,右键->添加->新建项,选择如下的:命名为,CrystalReport2.rpt(可自定义)

 

点击添加,进行确认

 

步骤6、出现如图情况:可以根据实际情况选择各种报表的类型,为了方便演示就选择如下的类型,点击确认

 

步骤7、得到如下图情况,这是数据源的选择界面,我们选择我们刚才所建立的数据集,选择项目数据

 

步骤8、我们选中我们建立的数据集,点击选择,图中的右箭头

 

步骤9、选择要在报表中显示的所有信息

 

没有特殊要求,一直点击下一步,直到最后部分。

 

步骤10、点击完成,得到如下的报表,我们报表就建立完成了

 

步骤11、接下来就是回到form的设计界面,选择工具箱中的如图所示的控件,拖到你想要显示的地方。

 

步骤12、在该控件的有上角有一个三角形,点击出现如图所示的情况,选择选择crystal报表

 

步骤13、选择我们刚建立的水晶报表,确认

 

步骤14、出现如下图的情况,说明我们的框架已经搭建好了,接下来就是数据的问题了

步骤15、数据添加:添加类似于下面的代码,下面的只是测试数据,主要有的为下面红色标记,其中的黑色情况为为数据集添加数据,根据实际情况来添加。

           //填充dataset
            DataSet1 ds1 = new DataSet1();
            ds1.test.AddmytableRow("a1", "a2");
            ds1. test.AddmytableRow("a1", "a2");
            ds1. test.AddmytableRow("a1", "a2");
            ds1. test.AddmytableRow("a1", "a2");
            CrystalReport2 cr2= new CrystalReport2();
            cr2SetDataSource(ds1);
            crystalReportViewer1.ReportSource = cr2

以上为推模式下的数据的处理,如果程序没有出错,就能看到你想要的数据了,哈哈。

二 、拉模式下的水晶报表的建立

步骤1、拉模式在上面其他步骤都不要的情况下,在界面上选择crystal控件,在其右上角选择新建crystal报表得到如下的情况,如果我们已经有了数据连接就直接选择,跟之前的步骤是一样的,如果没有数据连接就要建立新的数据连接,选择下图中的蓝色选项,

 

步骤2、选择连接方式,选择蓝色选项

 

步骤3、连接服务,下面的三项分别为,服务为数据库的连接字符串,用户为该数据库中能够操作数据库的用户,密码为该用户的登陆密码。填好后就点击下一步或者完成

 

步骤4、这步可以操作,也可以不用操作。就是添加一些连接的属性,如果前面已经填好了就没有必要再填写。

 

步骤5、点击完成,如果所有的都填好了就会得到下面的情况,这是不是很熟悉,那么久继续按照之前的步骤做吧,建立自己的第一个水晶报表。

 

基本上到此就建好了你的第一个水晶报表了,也是非常的开心。

说明:上面的方法是在参考了网络上许多大神的文章后自己实现的,再次对各位大神表示感谢

总结:之前完全不知道怎么去写博客,与博客最多的接触就是去看看人家的博客,看了也就是看了。今天我开始了我的博客之旅,不知道能够坚持到多久,但是我会努力的。看了大家对待博客的态度,我也明白了这样一个道理,总是去别人那里得到一些东西而自己不知道去给予这样是及其不好的,也许我写的东西并不是最好的,但是只要有人从中得到了一丁点益处我都会觉得非常的开心。所以我会努力坚持写下去的。也希望正在看这篇文章的您,也着手一起写写博客吧。

     写这篇之前我看到了我之前写的两篇博客,竟然还是有人看,这更加让我充满了激情。开始在公司实习了,我会努力加油,争取早日成为一名合格的程序员。额,这怎么像我在写入党申请书啊。哈哈哈

jaykb 2014-12-24