如何在运行时为子报表设置数据源 [英] how to set datasource for subreport at runtime

查看:75
本文介绍了如何在运行时为子报表设置数据源的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在为我的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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆