关于水晶报表的两种数据填充方式和SetDatabaseLogon的先后问题
2013-01-16 15:31
465 查看
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
那么在我们设计报表的时候已经将相对应的存储过程加入到水晶报表里面了。所以在报表自身浏览的时候只要输入参数的值就可以得到游览结果 例如 图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
相关文章推荐
- [原创]水晶报表数据填充(一种推模式,两种拉模式)类库
- 水晶报表数据填充(一种推模式,两种拉模式)类库
- [ZT]水晶报表数据填充(一种推模式,两种拉模式)类库
- [ZT]水晶报表数据填充(一种推模式,两种拉模式)类库
- 关于水晶报表10 的字报表数据填充和显示
- [转贴]水晶报表数据填充(一种推模式,两种拉模式)类库
- 关于在asp.net中使用showDialogModal方式输入数据中存在的问题
- Android 开发学习手记(三):关于PullToRefresh的setOnTouchListener()无效的问题。
- 关于2010以上版本水晶报表的引用问题
- 关于mysql-connector-net-6.3.4 MySqlDataAdapter 在空数据的情况下填充DataSet后tables[0] 找不到的问题
- 关于水晶报表中CrystalDecisions.CrystalReports.Engine.LogOnException问题的解决方法
- 关于水晶报表多表连接显示问题的实现!
- 关于VS2003.NET打包水晶报表十的问题
- 关于使用TCP或者其他链接方式时数据接收问题
- 关于水晶报表-逐个或多个从列表中选择数据并添加到其他列表框中
- tiptop GP5复制程式时CR报表的处理方式(关于数据源更新的问题)
- 关于润乾报表里SQL执行速度的问题处理方式
- 水晶报表 Pull方式 数据库登录问题 解决方式1(推荐)
- 使用水晶报表不刷新数据的问题
- 关于Scrollview嵌套ListView,使用setListViewHeightBasedOnChildren(ListView listView) ,在小米手机上崩溃问题