VB.Net|Crystal报表:如何避免Crystal报表要求数据库登录



我正试图生成一个报告,但当我加载报告时,crystal报告要求我登录数据库。

这是我到目前为止的代码:

Dim crTable As CrystalDecisions.CrystalReports.Engine.Table
Dim crTableLogonInfo As CrystalDecisions.Shared.TableLogOnInfo
Dim ConnInfo As New CrystalDecisions.Shared.ConnectionInfo()
cryRpt.SetDataSource(ds1)
ConnInfo.ServerName = ConnectionString.SERVER
ConnInfo.DatabaseName = ConnectionString.database
ConnInfo.UserID = ConnectionString.UserID
ConnInfo.Password = ConnectionString.password
For Each crTable In cryRpt.Database.Tables
crTableLogonInfo = crTable.LogOnInfo
crTableLogonInfo.ConnectionInfo = ConnInfo
crTable.ApplyLogOnInfo(crTableLogonInfo)
Next
Report.CrystalReportViewer1.ReportSource = cryRpt
Report.CrystalReportViewer1.LogOnInfo(0).ConnectionInfo.IntegratedSecurity = True
Report.CrystalReportViewer1.Refresh()
Report.ShowDialog()

任何帮助都将不胜感激,TIA!

在做了一些彻底的研究之后。我想出了这个解决方案:

我更换了这个

For Each crTable In cryRpt.Database.Tables
crTableLogonInfo = crTable.LogOnInfo
crTableLogonInfo.ConnectionInfo = ConnInfo
crTable.ApplyLogOnInfo(crTableLogonInfo)
Next

cryRpt.SetDatabaseLogon(ConnInfo.UserID, ConnInfo.Password, ConnInfo.ServerName, ConnInfo.DatabaseName)

最新更新