将 Crystal 报告连接到 SQL 服务器时出现问题
Problem with connecting Crystal Reports to SQL Server
我有问题
我是一名项目工作者vb.net 2015 with sql
我清空项目后在客户端试用了项目
crystal 报告
显示报告时出现错误
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim rpt As New WaznRep
For Each DSC As CrystalDecisions.Shared.IConnectionInfo In rpt.DataSourceConnections
DSC.SetLogon(muser, mpass)
DSC.SetConnection(mserver, mdb, False)
Next
ReportV1.CrystalReportViewer1.ReportSource = rpt
ReportV1.ShowDialog()
End Sub
而
mserver = 服务器
mdb = 数据库名称
muser = 用户名sql
mpass = sql 密码
它们是从文本文件中检索的
当运行客户端不打开报表时的程序
出现此消息且数据库名称为空
我用花药连接
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button3.Click
Application.DoEvents()
Dim rpt1 As New WaznRep
Dim ConInfo As New CrystalDecisions.Shared.TableLogOnInfo
ConInfo.ConnectionInfo.ServerName = mserver
ConInfo.ConnectionInfo.DatabaseName = mdb
ConInfo.ConnectionInfo.UserID = muser
ConInfo.ConnectionInfo.Password = mpass
rpt1.Database.Tables(0).ApplyLogOnInfo(ConInfo)
ReportV1.CrystalReportViewer1.ReportSource = rpt1
ReportV1.CrystalReportViewer1.RefreshReport()
ReportV1.ShowDialog()
End Sub
花药
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
Dim cryRpt As New ReportDocument
Dim crtableLogoninfos As New TableLogOnInfos
Dim crtableLogoninfo As New TableLogOnInfo
Dim crConnectionInfo As New ConnectionInfo
Dim CrTables As Tables
Dim CrTable As Table
Dim rpt1 As New WaznRep
cryRpt.Load("D:.rpt")
With crConnectionInfo
.ServerName = mserver
.DatabaseName = mdb
.UserID = muser
.Password = mpass
End With
CrTables = cryRpt.Database.Tables
For Each CrTable In CrTables
crtableLogoninfo = CrTable.LogOnInfo
crtableLogoninfo.ConnectionInfo = crConnectionInfo
CrTable.ApplyLogOnInfo(crtableLogoninfo)
Next
ReportV1.CrystalReportViewer1.ReportSource = cryRpt
ReportV1.CrystalReportViewer1.RefreshReport()
ReportV1.ShowDialog()
End Sub
所有代码都可以在我的电脑上运行但不能在客户端电脑上运行
在我的PC和客户端PC相同Crystal报告版本
编辑----
Dim rpt As New WaznRep
For Each DSC As CrystalDecisions.Shared.IConnectionInfo In rpt.DataSourceConnections
DSC.SetConnection(mserver, mdb, False)
DSC.SetLogon(muser, mpass)
Next
rpt.SetDatabaseLogon(muser, mpass)
ReportV1.CrystalReportViewer1.ReportSource = rpt
ReportV1.ShowDialog()
当我使用集成安全时=false
数据库名称未显示
当我使用集成安全时=true
Dim rpt As New WaznRep
For Each DSC As CrystalDecisions.Shared.IConnectionInfo In rpt.DataSourceConnections
DSC.SetConnection(mserver, mdb, True)
DSC.SetLogon(muser, mpass)
Next
rpt.SetDatabaseLogon(muser, mpass)
ReportV1.CrystalReportViewer1.ReportSource = rpt
ReportV1.ShowDialog()
数据库名称显示但在客户端 pc 中不起作用
问题已解决
必须安装 NATIVE SQL 驱动程序才能访问 Crystal 报告。
我有问题
我是一名项目工作者vb.net 2015 with sql
我清空项目后在客户端试用了项目
crystal 报告
显示报告时出现错误 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim rpt As New WaznRep
For Each DSC As CrystalDecisions.Shared.IConnectionInfo In rpt.DataSourceConnections
DSC.SetLogon(muser, mpass)
DSC.SetConnection(mserver, mdb, False)
Next
ReportV1.CrystalReportViewer1.ReportSource = rpt
ReportV1.ShowDialog()
End Sub
而
mserver = 服务器
mdb = 数据库名称
muser = 用户名sql
mpass = sql 密码
它们是从文本文件中检索的
当运行客户端不打开报表时的程序
出现此消息且数据库名称为空
我用花药连接
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button3.Click
Application.DoEvents()
Dim rpt1 As New WaznRep
Dim ConInfo As New CrystalDecisions.Shared.TableLogOnInfo
ConInfo.ConnectionInfo.ServerName = mserver
ConInfo.ConnectionInfo.DatabaseName = mdb
ConInfo.ConnectionInfo.UserID = muser
ConInfo.ConnectionInfo.Password = mpass
rpt1.Database.Tables(0).ApplyLogOnInfo(ConInfo)
ReportV1.CrystalReportViewer1.ReportSource = rpt1
ReportV1.CrystalReportViewer1.RefreshReport()
ReportV1.ShowDialog()
End Sub
花药
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
Dim cryRpt As New ReportDocument
Dim crtableLogoninfos As New TableLogOnInfos
Dim crtableLogoninfo As New TableLogOnInfo
Dim crConnectionInfo As New ConnectionInfo
Dim CrTables As Tables
Dim CrTable As Table
Dim rpt1 As New WaznRep
cryRpt.Load("D:.rpt")
With crConnectionInfo
.ServerName = mserver
.DatabaseName = mdb
.UserID = muser
.Password = mpass
End With
CrTables = cryRpt.Database.Tables
For Each CrTable In CrTables
crtableLogoninfo = CrTable.LogOnInfo
crtableLogoninfo.ConnectionInfo = crConnectionInfo
CrTable.ApplyLogOnInfo(crtableLogoninfo)
Next
ReportV1.CrystalReportViewer1.ReportSource = cryRpt
ReportV1.CrystalReportViewer1.RefreshReport()
ReportV1.ShowDialog()
End Sub
所有代码都可以在我的电脑上运行但不能在客户端电脑上运行
在我的PC和客户端PC相同Crystal报告版本
编辑----
Dim rpt As New WaznRep
For Each DSC As CrystalDecisions.Shared.IConnectionInfo In rpt.DataSourceConnections
DSC.SetConnection(mserver, mdb, False)
DSC.SetLogon(muser, mpass)
Next
rpt.SetDatabaseLogon(muser, mpass)
ReportV1.CrystalReportViewer1.ReportSource = rpt
ReportV1.ShowDialog()
当我使用集成安全时=false
数据库名称未显示
当我使用集成安全时=true
Dim rpt As New WaznRep
For Each DSC As CrystalDecisions.Shared.IConnectionInfo In rpt.DataSourceConnections
DSC.SetConnection(mserver, mdb, True)
DSC.SetLogon(muser, mpass)
Next
rpt.SetDatabaseLogon(muser, mpass)
ReportV1.CrystalReportViewer1.ReportSource = rpt
ReportV1.ShowDialog()
数据库名称显示但在客户端 pc 中不起作用
问题已解决
必须安装 NATIVE SQL 驱动程序才能访问 Crystal 报告。