好的這裏是我有一個VB6應用程序正在重寫爲asp.net 3.5的情況。我有一大堆水晶報表正在升級到Crystal Reports 10.5(包含在Visual Studio 2008中)。所有的舊報告都使用OLEDB。我正在做的是將報表中使用的sql語句放入數據庫中。接下來我運行一個自動化流程,從這些select語句創建一個Dataset,然後序列化DataSet並將模式和數據保存爲XML文檔。然後我進入舊報告將其更新到Crystal Reports 10.5並更改數據源位置,以便它使用XML文檔。Crystal Reports - 提供了無效的參數。無法打開行集。 ADO.Net xml
當運行報表創建相同的數據集,並代替其序列爲XML我把它分配給報告(見下文)
rd.Database.Tables(0).SetDataSource(ds)
我已經測試過這一點,如果沒有得到任何錯誤我創建新的報告,但是如果我採用現有報告並更改數據庫位置,我會收到以下錯誤
提供了無效的參數。無法打開行集。文件C:\ DOCUME〜1 \ username \ LOCALS〜1 \ Temp \ R-302 {D49E0C73-47AC-4363-AAD5-E925DFCF446E} .rpt中的錯誤:數據庫的參數無效。 在CrystalDecisions.ReportAppServer.ConvertDotNetToErom.ThrowDotNetException(例外五)在CrystalDecisions.ReportSource.EromReportSourceBase.ExportToStream(ExportRequestContext reqContext)在CrystalDecisions.CrystalReports.Engine.FormatEngine.ExportToStream
看起來好像報告仍在嘗試連接使用OLEDB到舊的數據庫。如果我使用完全相同的邏輯重寫它,但通過上述錯誤更新了報告,我能夠得到一份工作報告。我如何解決它?