水晶报表加载失败的问题
程序在我本机上,用VS2005直接编译运行,没任何问题。传到服务器上去,打开页面的时候,却提示报表加载失败。错误提示:
“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------
文件 UNKNOWN.RPT 内出错:
无法将请求提交给后台处理。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Runtime.InteropServices.COMException: 文件 UNKNOWN.RPT 内出错:
无法将请求提交给后台处理。
源错误:
行 105: ReportDocument myReport = new ReportDocument();
行 106: DataOperation myda = new DataOperation();
行 107: myReport.Load(ApplicationInfo.PhysicalApplicationPath + "/Report/001.rpt");
行 108: myReport.SetDataSource(myda.GetExeSqlDataSet(sqlstr, "Gysda"));
行 109: CrystalReportViewer1.ShowFirstPage();
源文件: d:\百科公司营运网站\百科公司营运\hf\FundamentalData\MaterialData.aspx.cs 行: 107
堆栈跟踪:
[COMException (0x800002ad): 文件 UNKNOWN.RPT 内出错:
无法将请求提交给后台处理。]
CrystalDecisions.ReportAppServer.ClientDoc.ReportClientDocumentClass.Open(Object& DocumentPath, Int32 Options) +0
CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.Open(Object& DocumentPath, Int32 Options) +87
CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened() +279
[Exception: 加载报表失败。]
CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened() +340
CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename, OpenReportMethod openMethod, Int16 parentJob) +870
CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename) +73
FundamentalData_MaterialData.PrintReport() in d:\百科公司营运网站\百科公司营运\hf\FundamentalData\MaterialData.aspx.cs:107
FundamentalData_MaterialData.Page_Load(Object sender, EventArgs e) in d:\百科公司营运网站\百科公司营运\hf\FundamentalData\MaterialData.aspx.cs:31
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +15
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +34
System.Web.UI.Control.OnLoad(EventArgs e) +99
System.Web.UI.Control.LoadRecursive() +47
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1061
--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:2.0.50727.42; ASP.NET 版本:2.0.50727.210
请问是什么问题呀,在线等, --------------------编程问答-------------------- myReport.Load(ApplicationInfo.PhysicalApplicationPath + "/Report/001.rpt");
估计是路径的问题,仔细检查. --------------------编程问答-------------------- 如果还不能解决的话可以看我的BLOG
关于水晶报表加载失败的解决办法.
http://www.cnblogs.com/daxia/archive/2007/04/11/TonnerTang.html --------------------编程问答-------------------- myReport.Load(ApplicationInfo.PhysicalApplicationPath + "/Report/001.rpt");
改為:
myReport.Load(Server.MapPath(".") + "/Report/001.rpt"); --------------------编程问答-------------------- 这个不是路径问题,我把路径打印出来看了的,都是正常的 --------------------编程问答-------------------- 要把报表放在bin目录下面才可以的 --------------------编程问答-------------------- 接分是王道! --------------------编程问答--------------------
我的是c/s的,也出现类似问题.
过去写的就没有事情!
怪哉!关注!
ReportDocument myReportDoc = new ReportDocument();
myReportDoc.Load("myR.rpt");
就提示加载失败!!! --------------------编程问答-------------------- ReportDoc.Load(Server.MapPath("CrystalReport.rpt"));
水晶报表文件放在根目录下 --------------------编程问答-------------------- 遇到同样的问题了 --------------------编程问答-------------------- 我也遇到同样的问题,用二楼提供的方法解决了。
补充:.NET技术 , 图表区