如何使用多个过程在 Crystal 报告上设置数据源

How To SetDataSouce on Crystal Report WIth Multiple Procedures

现在我正在尝试通过 Asp 页面上的 C# 代码设置报表数据源。 使用具有表的数据集作为报告中添加的两个过程。

代码如下

                strPath = HttpContext.Current.Server.MapPath("~/Reports/") + RptName + ".rpt";
                rptDoc.Load(strPath);
                DataSet DS = new DataSet();
                DS = objCommon.FillDataSetMTG(SqlConn, "USP_Report_ExecProcs", Convert.ToInt32(ViewState["Id"]), "JobEntryId");
                rptDoc.SetDataSource(DS);

但是报告没有获取数据。 有什么建议吗?

添加

rptDoc.Refresh();

如果数据获取正确

您可以为报表中的每个表设置不同的数据源,试试这个,您必须同时调用 "USP_Report_JobCardDet" 和 "USP_Report_JobCard" 存储过程

            strPath = HttpContext.Current.Server.MapPath("~/Reports/") + RptName + ".rpt";
            rptDoc.Load(strPath);

            DataSet DS1 = new DataSet();
            DS1 = objCommon.FillDataSetMTG(SqlConn, "USP_Report_JobCardDet", Convert.ToInt32(ViewState["Id"]), "JobEntryId");
            rptDoc.Tables["USP_Report_JobCardDet"].SetDataSource(DS1);

            DataSet DS2 = new DataSet();
            DS2 = objCommon.FillDataSetMTG(SqlConn, "USP_Report_JobCard", Convert.ToInt32(ViewState["Id"]), "JobEntryId");
            rptDoc.Tables["USP_Report_JobCard"].SetDataSource(DS2);