使用sql语句直接生成dataset做为水晶报表的数据源

  使用sql语句直接生成dataset做为报表的数据源(即push模式),这样就可以接受参数了。当然报表有设置参数的功能 这方面我还没有详细研究

  一.sql语句中没有使用表的相互关联(简单的查询语句)

  设计一个DataSet

  1) 右击“解决方案浏览器”,选择“添加”--“添加新项”-->“数据集”

  2) 从“服务器资源管理器”中的“SQL Server”中拖放“Stores”表(位于PUBS数据库中)

  3) 此时在数据集中就会有一个Stores表的结构图。xsd文件中仅仅包含一个结构图,但是不会有任何数据在里面

  创建一个.rpt文件crystalreport1.rpt同时将其指定给上一步建立的DataSet。

  4) 使用上面的介绍过的方法创建此文件,唯一的不同就是使用数据集来代替前面的直接连接数据。

  5)建立.rpt文件之后,右击“详细资料”-->"添加/删除数据库“profile.yahoo.com/337ZFW6LOECP4X7LM3HY2MNLN4/

  6) 在”数据库专家“窗口中,展开”项目数据“(代替以前的OleDb),展开“ADO.Net数据集”--"DataSet1“,选择”Stores“表。

  7) 将”Stores"表添加到“选定的表”中,点击“OK”

  8) 建立一个WebForm1.aspx 拖入一个Crystal Report Viewer 控件

  9)WebForm1.aspx.cs

  ReportDocument oRpt = new ReportDocument();

  string RptDir="f:\\bbs\\test\\crystal\\crystalreport1.rpt";

  oRpt.Load(RptDir);

  ...//根据sql语句得到DataSet 这个就不多说了

  oRpt.SetDataSource(ds);

  CrystalReportViewer1.ReportSource=oRpt;

  //注意push模式用不到设置logOnInfo参数

  10)运行试试看!应该没问题哦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值