首页 文章

无法将表添加到Crystal Reports

提问于
浏览
1

背景:我有一个旧的报告,我试图添加一个表和一个字段 . 该报告在我的Web应用程序中运行得非常好 . (Crystal报告版本11.5.9.1076)

添加表后我收到错误:

System.Runtime.InteropServices.COMException: Failed to open connection

无论是向报表添加表,命令还是存储过程,都会发生这种情况 . (连接到Oracle数据库)

我试过的事情:

  • 添加表(崩溃),删除表(再次工作)

  • 单击“数据库”菜单中的"Verify database"按钮

  • 设置数据库位置并更新新添加的表

  • 预览报告似乎有效

至于我如何提供数据:

  • 创建并加载ReportDocument(VB.net)

  • 填充数据集

  • 使用DataSet作为参数调用SetDataSource方法

  • ExportToHttpResponse为PortableDocFormat

1 回答

  • 2

    以下是我们必须要做的事情,以便在我们的水晶报告中完成这项工作:在加载报告后,我们遍历报告中的每个 DataSourceConnections 并更新连接信息 .

    For Each oConnection As IConnectionInfo In oReport.DataSourceConnections
        If fUseIntegratedSecurity Then
            oConnection.SetConnection(sServerName, sDatabaseName, True)
        Else
            oConnection.IntegratedSecurity = False
            oConnection.SetConnection(sServerName, sDatabaseName, sUserLogon, sUserPassword)
        End If
    Next
    

    实际的连接细节在我们的应用程序的其他地方提供,所以我只是在上面的代码中显示占位符 .

相关问题