0

我有一个 vb.net 应用程序,它目前使用 VS 的水晶报表并连接到 SQL Server 2008 数据库。该应用程序现在需要使用 SQL Azure 数据库,但是当连接到 SQL Azure 数据库时,我的所有水晶报告都会出现以下错误:-

找不到表 ''。文件中的错误。找不到该表。设置数据库连接时,Crystal 报表会引发此错误。堆栈跟踪是从我的代码中引发的,但使用以下 Crystal 报告跟踪:-

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

该报告实际上使用了一个我已经验证在 Azure 数据库上的存储过程。

为了尝试解决这个问题,我去了报表设计器中的数据库专家,连接到数据库并打算检查存储过程是否实际显示在报表中,但是当连接时,数据库专家只显示表和视图而没有存储程序。我使用的用户名实际上是 Azure SQL 数据库的主用户,当使用任何其他工具(例如使用 Microsoft SQL Server 管理工作室或 SQL Server 对象资源管理器)时,存储过程可见且可访问,并且可以毫无问题地运行.

一旦我切换回 SQL Server 2008 数据库,报告就会运行良好。我通常会认为这是一个数据库权限问题,但鉴于上述证据,我不认为是这样。是否有人使用 Crystal 报表 for Visual Studio 从应用程序中连接到 Azure SQL 数据库?

我正在为 Visual Studio 13.2 库使用水晶报告。

4

2 回答 2

1

我发现在使用 Azure 数据库时出现错误“找不到表 %s”,并且报告选项“首次刷新时验证存储过程”已打开。

将其关闭,错误不再发生。非 Azure 数据库不会发生这种情况。

但是,另一个问题是 SAP Crystal Reports,Visual Studio 版本 (SP 10) 和完整的 Crystal 2013 (SP4) 都无法在设计器中看到 Azure SQL 存储过程。

我必须通过从 Azure 导出数据库并将其还原到本地 SQL 服务器来解决此问题,针对本地服务器构建报告。然后我可以针对 Azure 数据库运行报告。

编辑:应该注意 SAP 的官方立场是 Crystal Reports 不支持 Azure SQL,目前没有计划这样做。来源:http ://scn.sap.com/thread/3430662

于 2014-10-30T02:14:08.240 回答
0

检查 Azure 中的防火墙规则。

在面板 -> 配置

以色列

于 2013-11-14T00:07:22.677 回答