如何使用多个过程在 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);
现在我正在尝试通过 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);