方法一、水晶报表中有参数字段,你可以在报表中引用这些参数字段去得到你所要的记录。你可以把参数字段传到报表中。
方法二、向水晶报表传入DataSet。这里你可以先在程序中处理你的参数,得到相应的记录集,再传给报表。在水晶报表中放个文本字段世纪末 txtYears
((TextObject)reportDoc.ReportDefinition.ReportObjects["txtYears"]).Text =
"2003-1-1"
方法二、向水晶报表传入DataSet。这里你可以先在程序中处理你的参数,得到相应的记录集,再传给报表。在水晶报表中放个文本字段世纪末 txtYears
((TextObject)reportDoc.ReportDefinition.ReportObjects["txtYears"]).Text =
"2003-1-1"
解决方案 »
- 强烈高效正则。。。懂正则的大神速来报道!!!!
- VS2005 Repeater的一个问题,谢谢
- 页面定向问题!!
- 问个奇怪的问题!!
- 简单的应用程序确总是出现错误,不晓得错在哪里了
- 如CSDN技术社区这样,点击左边的TreeView,右边页面刷新是如何做到的
- 都郁闷死了,两天了,怎么也搞不出来,很难,高手来帮忙啊!!!!
- 怎么样才能控制弹出框的大小
- http://www.hexiesoft.net里这样的表格功能,请高手不吝赐教,跟贴有分,不够再加!
- 怎么把当前的时间格式化成“年年月月日日时时分分秒秒”的格式?
- 把数据库从sqlserver转成access后,出现了很多问题.
- web parts是什么?
1、构造选择公式
string selectFormula =
"{yourTableName.yourDateFieldName} = DateTime(2203,1,1)";
yourTableName是你的数据表名字,yourDateFieldName是你的表里的日期字段名字.
2、将选择公式赋值给CrystalReportViewer
CrystalReportViewer1.SelectionFormula = selectFormula;
3、显示报表
CrystalReportViewer1.Load(@"D:\xxx\xxx.rpt");
或者CrystalReportViewer1.ReportSource = reportDocument1;
总之用一种方法显示就好了.
至于把数据传到报表里也有很多方法,最简单你可以在报表里加个文本对象,然后在代码里面设定那个文本对象值为用户选择的日期.
还有一种方法是你做报表的时候就根据日期分组.