2013-09-29 99 views
0

我有一個vb.net應用程序,它目前使用VS的水晶報表並連接到SQL Server 2008數據庫。該應用程序現在需要使用SQL Azure數據庫,但是當連接到SQL Azure數據庫時,會爲我的所有Crystal報告引發以下錯誤: -Crystal報告連接到Azure SQL數據庫。表x無法找到

無法找到表''。文件中出錯。該表無法找到。數據庫連接設置時,Crystal報告正在拋出此錯誤。堆棧跟蹤是從我的代碼,但與下面的Crystal報表提出跡: -

CrystalDecisions.ReportAppServer.Controllers.DatabaseControllerClass.SetTableLocation(ISCRTable CurTable,ISCRTable newtable的) 在CrystalDecisions.CrystalReports.Engine.Table.set_Location(字符串值)

該報告實際上使用我已驗證的存儲過程位於Azure數據庫上。

爲了嘗試解決這個問題,我去了報表設計器中的數據庫專家,連接到數據庫並且打算僅檢查存儲過程實際上是否顯示報表,但是當連接時數據庫專家僅顯示錶和視圖和沒有存儲過程。我使用的用戶名實際上是Azure SQL數據庫的主用戶,並且在使用任何其他工具(例如使用Microsoft SQL Server管理工作室或SQL Server對象資源管理器)時,存儲過程是可見和可訪問的,並且可以在沒有任何問題的情況下運行。

只要我切換回SQL Server 2008數據庫,報表運行良好。 我通常會認爲這是一個數據庫權限問題,但鑑於上述證據,我不相信它是如此。有沒有人使用Crystal報表進行Visual Studio從應用程序內部連接到Azure SQL數據庫?

我正在使用Visual Studio 13.2庫的水晶報表。

回答

0

檢查Azure中的防火牆規則。

在面板 - >配置

以色列

1

我發現我得到錯誤「表%s不能找到」使用Azure數據庫和報告選項時,「驗證在第一存儲過程刷新「已打開。

將其關閉並且不再發生錯誤。這在非Azure數據庫中不會發生。

但是,另一個問題是SAP Crystal Reports,Visual Studio版本(SP 10)和完整的Crystal 2013(SP4)無法在設計器中看到Azure SQL存儲過程。

我不得不通過從Azure導出數據庫並將其恢復到本地SQL服務器來解決該問題,並針對本地服務器生成報告。然後,我可以針對Azure數據庫運行報告。

編輯:應該指出,從SAP的官方立場是,水晶報表不支持Azure SQL,目前沒有計劃這樣做。來源:http://scn.sap.com/thread/3430662