博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Crystal Reports第一张报表
阅读量:6250 次
发布时间:2019-06-22

本文共 1533 字,大约阅读时间需要 5 分钟。

新建一个网站项目,
1.   
设置数据库
从服务器资源管理器中,数据连接中添加新连接,用Microsoft Access数据库文件作为数据提供程序,连接上Crystal Reports的用例的数据库Xtreme
2.   
创建新Crystal Reports报表
在工程项目中添加一个Crystal Reports的报表,名称为CR1.rpt.
3.   
添加XML架构文件
在工程中添加一个xml架构文件,因为xml架构文件本身也是一个xml文件,名称为订单.xsd,为了便捷操作,可以选择该文件,在打开方式中选择数据集编辑器.然后选择xtreme库中的订单表,拖放到本xml架构文件中,就会自动生成一个订单的文件,在这里,只用到该表的架构,也就是字段框架的信息,所以自动生成的TableAdapter是没有用处的,可以删掉.
4.   
添中字段到字段资源管理器上
打开字段资源管理,右键数据库字段,选择数据库专家,在这里我们用ADO.NET来做数据源,双击创建新连接下的ADO.NET先项,在弹出的ADO.NET面板上,选择文件路径,选择上面创建的订单.xsd,然后添加到数据库字段中,这时我们会看到,在字段资源管理器下多了一个订单,展开订单,会看到所有字段.(xsd文件是为了设计报表时,能利用字段,所以xsd在这时百作为表字段的一个架构文件)
 
打开建好的CR1.rpt,来开始真正的设计报表,现在要出一个合部订单的详细报表.
在报表设计时,字段资源管理器是一个非常重要的面板,因为大部分数据都是通过这里的实现的,不但有数据库字段,还有一些公式,参数,组名,运行总计,还有特殊的字段.关于字段,在以后的文章中去说.
现在我们在订单中,选择订单地ID,订单金额,订单日期,已发货,已收货款几个字段,分别放入CR1.rpt报表的详细资料节中,系统会自动在页眉处理添加相同的字段,如下图
图1
CR1.rpt
中其实就是一个设计报表的环境,如果采用ADO.NET连接数据库,CR1.rpt就能成为报表的架构设计了(数据是采用拉模式实现的),具体的数据,要在页面中去实现.
 
在aspx页面中,放一个CrystalReportViewer控件,命名为CRV1,在页面的Load事件订阅的方法中写入下列代码:
            string path = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|"xtreme.mdb;Persist Security Info=True";
            string sql = "select * from 
订单 "
;
            OleDbDataAdapter DA = new OleDbDataAdapter(sql, path);
            DataTable DT = new DataTable();
            DA.Fill(DT);
            Session["dt"] = DT;
            ViewState["d"] = 0;       
            ReportDocument doc = new ReportDocument();
            doc.Load(Server.MapPath(@"CR1.rpt"));
            doc.SetDataSource((DataTable)Session["dt"]);
       CrystalReportViewer1.ReportSource = doc;
这样,就实现了一个简单的界面来预览报表的样式.
报表设计的思路就是用rpt文件来设计报表样式,报表的数据在单独的类中实现.
本文转自桂素伟51CTO博客,原文链接: http://blog.51cto.com/axzxs/149695,如需转载请自行联系原作者
你可能感兴趣的文章
快速搭建maven环境
查看>>
SQL连接——笛卡尔积
查看>>
spring MVC原理
查看>>
CentOS6搭建LAMP环境
查看>>
软件开发中团队的重要性
查看>>
Windows下使用GTK接口gdk_pixbuf_new_from_file加载图片失败
查看>>
记录一个MySQL的复杂的更新SQL
查看>>
kmp算法实现
查看>>
vs2012 输出窗口报错 “无法查找或打开 PDB 文件”
查看>>
关于卷一中DR/BDR选举过程解释
查看>>
三分技术,七分管理
查看>>
考题:为什么 Shell 脚本自动把字符串 10001 当成二进制,输出 17?
查看>>
Java的finally语句不会被执行的唯一情况
查看>>
UITableView 基本使用[二] 基本属性
查看>>
mysqldump 常用参数
查看>>
理解tomcat之搭建简易http服务器
查看>>
Storm Spark Scala 混合代码快速编译打包jar方式,然后java风格使用(朋友咨询)
查看>>
设置Static 文本字体方法
查看>>
Java并发之AQS详解
查看>>
TI OMAP MUX configure
查看>>