如何在运行时为子报表设置数据源 [英] how to set datasource for subreport at runtime
本文介绍了如何在运行时为子报表设置数据源的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在为我的Crystal报表使用子报表.我正在使用以下编码来设置子报表.主报告已到,但子报告将不会显示.请帮帮我
I am using subreport for my Crystal report. I am using following coding for set subreports. Main report has come but the subreport will not display. Please help me
ReportDocument rptdoc = new ReportDocument();
rptdoc.Load(Server.MapPath("CUSTOMERWISEREPORT.rpt"));
//rptdoc.OpenSubreport("SALESTRANSACTION").SetDataSource(ds2.Tables[0]);
//rptdoc.OpenSubreport("RECEIPTTRANSACTION").SetDataSource(ds3.Tables[0]);
rptdoc.Subreports[0].SetDataSource(ds2.Tables[0]);
rptdoc.Subreports[1].SetDataSource(ds3.Tables[0]);
rptdoc.SetDataSource(ds.Tables[0]);
推荐答案
像这样使用
use like this
rptdoc.SetDataSource(ds.Tables[0]);
rptdoc.Subreports[0].SetDataSource(ds2.Tables[0]);
rptdoc.Subreports[1].SetDataSource(ds3.Tables[0]);
尝试一下,我的工作代码...
try this ,My working code...
Common.Common obj = new Common.Common();
ReportDocument RptDocument = new ReportDocument();
protected void Page_Load(object sender, EventArgs e)
{
DataSet dsFiiReport123 = obj.GetData("uspGetHeader", new object[] { });
DataSet dsFiiReport = obj.GetData("uspReportData", new object[] { });
if (dsFiiReport.Tables[0].Rows.Count > 0)
{
CrystalReportViewer1.DisplayGroupTree = false;
dsFiiReport.Tables[0].TableName = "uspReportData";
RptDocument.Load(Server.MapPath("~/Report/crvData.rpt"));
RptDocument.SetDataSource(dsFiiReport);
RptDocument.Subreports[0].SetDataSource(dsFiiReport123.Tables[0]);
CrystalReportViewer1.ReportSource = RptDocument;
CrystalReportViewer1.DataBind();
CrystalReportViewer1.Visible = true;
}
else
{
CrystalReportViewer1.Visible = false;
Response.Write("<script>alert('No Recordes Found')</script>");
}
}
http://msdn.microsoft.com/en-us/library/reportservice2005.reportingservice2005.setdatasourcecontents.aspx [ http://social.msdn.microsoft.com/Forums/zh/sqlreportingservices/thread/b9874ec7-f2da-40a1-9dc1-3523c0e81741 [ http://server/reportserver/ReportService2010.asmx?wsdl [
http://msdn.microsoft.com/en-us/library/reportservice2005.reportingservice2005.setdatasourcecontents.aspx[^]
http://social.msdn.microsoft.com/Forums/en/sqlreportingservices/thread/b9874ec7-f2da-40a1-9dc1-3523c0e81741[^]
You have to add web reference of
http://server/reportserver/ReportService2010.asmx?wsdl[^]
这篇关于如何在运行时为子报表设置数据源的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文