2020-08-27 11:20发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
为什么在使用存储过程用sql适配器填充其连接的数据集后,Crystal Viewer仍向我显示数据库提示(在 Asp.net )
我解决了它,结果表明您不应该静态定义(由 asp.net中的aspx代码或设计器定义) )Crystal Report Viewer的报表源,尤其是当您使用SQL调用存储过程并将其与数据源关联之前将其填充到数据表或Sql数据适配器中时。
相反,应该在调用存储过程并填充DataTable之后在运行时为Viewer动态定义报表源,换句话说,问题是Crystal Report Viewer在页面加载时调用了空的DataSet,这会自动导致 错误。
----------------------------------------------- ----------------------
con = DBServices.openAndReturnDBConnection()
da = DBServices.executeAndReturnDataAdapter(con," RETRIEVE_ULS_FAID_PERSONAL_INFO",{" @STUDENTID"},{" inf0000"})dt.Rows.Add(dr)da.Fill(ds," dtPersonal")
以字符串= Server.MapPath("〜/FinancialCrystalReport.rpt")的昏暗路径
rptDoc.Load(path)
rptDoc.SetDataSource(ds.Tables(0))
CrystalReportViewer.ReportSource = rptDoc
CrystalReportViewer.DataBind()
最多设置5个标签!
我解决了它,结果表明您不应该静态定义(由 asp.net中的aspx代码或设计器定义) )Crystal Report Viewer的报表源,尤其是当您使用SQL调用存储过程并将其与数据源关联之前将其填充到数据表或Sql数据适配器中时。
相反,应该在调用存储过程并填充DataTable之后在运行时为Viewer动态定义报表源,换句话说,问题是Crystal Report Viewer在页面加载时调用了空的DataSet,这会自动导致 错误。
----------------------------------------------- ----------------------
con = DBServices.openAndReturnDBConnection()
da = DBServices.executeAndReturnDataAdapter(con," RETRIEVE_ULS_FAID_PERSONAL_INFO",{" @STUDENTID"},{" inf0000"})dt.Rows.Add(dr)da.Fill(ds," dtPersonal")
以字符串= Server.MapPath("〜/FinancialCrystalReport.rpt")的昏暗路径
rptDoc.Load(path)
rptDoc.SetDataSource(ds.Tables(0))
CrystalReportViewer.ReportSource = rptDoc
CrystalReportViewer.DataBind()
一周热门 更多>