Crystal reports 更改多个crystal报表的数据库位置

Crystal reports 更改多个crystal报表的数据库位置,crystal-reports,Crystal Reports,我使用的是Crystal reports 9.2.0.448。我已经在我的机器上创建了50多个crystal报表。并将数据库位置设置为本地\u sql\u服务器\u名称。数据库\u名称。现在,我想在我的客户机上安装所有报告。因此,sql server名称肯定会更改。所以我必须手动设置所有crystal报表的数据库位置。所以我想知道有没有办法自动更改数据库位置? 我还尝试了通用数据链接(.udl)文件。我从该文件设置了数据库位置。但如果修改.udl文件,则不会影响crystal reports。这

我使用的是Crystal reports 9.2.0.448。我已经在我的机器上创建了50多个crystal报表。并将数据库位置设置为本地\u sql\u服务器\u名称。数据库\u名称。现在,我想在我的客户机上安装所有报告。因此,sql server名称肯定会更改。所以我必须手动设置所有crystal报表的数据库位置。所以我想知道有没有办法自动更改数据库位置?


我还尝试了通用数据链接(.udl)文件。我从该文件设置了数据库位置。但如果修改.udl文件,则不会影响crystal reports。

这是将更新的服务器保存在实际的crystal Report中还是仅保存在内存中的ReportDocument对象中?仅保存在内存中。您需要在crystal report中保存更新的服务器,还是只想在运行时更改连接?@AsifGhafoor我想在crystal reports中保存更新的服务器。这是我真正的问题,我从来没有遇到过。我只能在运行时更新它。这是将更新的服务器保存在实际的Crystal Report中还是仅保存在内存中的ReportDocument对象中?仅保存在内存中。您需要在crystal report中保存更新的服务器,还是只想在运行时更改连接?@AsifGhafoor我想在crystal reports中保存更新的服务器。这是我真正的问题,我从来没有遇到过。我只能在运行时更新它。
Private Sub RecurseAndRemap(ByVal CR As Engine.ReportDocument)
        For Each DSC As CrystalDecisions.Shared.IConnectionInfo In CR.DataSourceConnections
            DSC.SetLogon("YourUserName", "YourPassword")
            DSC.SetConnection("YouServerName", "YourDatabaseName", False)
        Next

        CR.SetDatabaseLogon("YourUserName", "YourPassword")

        For Each Table As Engine.Table In CR.Database.Tables
            Table.LogOnInfo.ConnectionInfo.UserID = "YourUserName"
            Table.LogOnInfo.ConnectionInfo.Password = "YourPassword"
        Next

        If Not CR.IsSubreport Then
            For Each SR As Engine.ReportDocument In CR.Subreports
                RecurseAndRemap(SR)
            Next
        End If
    End Sub