关于水晶报表的两种数据填充方式和SetDatabaseLogon的先后问题

1.执行了存储过程并且带有参数,例如:图A(存储过程)

那么在我们设计报表的时候已经将相对应的存储过程加入到水晶报表里面了。所以在报表自身浏览的时候只要输入参数的值就可以得到游览结果 例如 图B

所以这种方式,放到代码里面写的话只要填充相对应的参数(注意这里是执行存储过程的参数 例如上图A的 @inputmarket)

代码编写 图C

 

2.第二种是填充数据的方式就是ADO.NET常用的那种,此类一样可以填充参数但值得注意的是一定要在数据填充之后再设置参数 例如图D

看到这里分析一下两次参数的区别:

(1)第一种的参数他是这个存储过程的参数,所以需要填充之后等存储过程返回结果集;

(2)第二种情况是给报表填充了结果集之后将参数填充进报表里面。

所以得到的 图D的是  CrystalReportViewer1.ReportSource = rd;之后再填充参数进报表。

 

开发过程中遇到个问题值得注意,可能是本人不熟的原因吧:

rd.SetDatabaseLogon("writer", "testing", "DB1", "SO_RPT");

如果不加这一句的话处出现 图E的情况:

如果看了还是不知所云的话,请到这里找你需要的东西,比较基础。http://blog.csdn.net/xiaoshi0318/article/details/4058040

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值