我有一个运行主报告的存储过程。
HPR rpt = new HPR();
rpt.SetDataSource(objdt.fetch("EXECUTE sp_hpr @DATE ='" + dateTimePicker1.Value.ToString("yyyy-MM-dd 00:00:00") + "'", objdt.strconnection));
crystalReportViewer1.ReportSource = rpt;
crystalReportViewer1.Refresh();
以上查询为我提供了相关细节。
现在,我想在主报表页脚中只显示一行,首先我在我的存储过程中添加另一个选择查询,但它没有工作然后有人告诉我使用SubReport
,我做了但我真的不知道:
每次运行程序时都会出现一个对话框并要求我输入参数值!之后,另一个出现在我的登录凭据上。
请帮忙!
答案 0 :(得分:0)
按照以下步骤将参数从主报告传递到子报告
答案 1 :(得分:0)
好的,我明白了,
HPR rpt = new HPR(); // Crystal Report Object
rpt.SetDataSource(objdt.fetch("EXECUTE sp_hpr @DATE ='" + dateTimePicker1.Value.ToString("yyyy-MM-dd 00:00:00") + "'", objdt.strconnection));
//This is how you run your sub report in main report while passing @date parameter in stored procedure. "rptSub" is your sub report name !
rpt.Subreports["rptSub"].SetDataSource(objdt.fetch("EXECUTE sp_hpr_avg @DATE ='" + dateTimePicker1.Value.ToString("yyyy-MM-dd 00:00:00") + "'", objdt.strconnection));
crystalReportViewer1.ReportSource = rpt;
crystalReportViewer1.Refresh();