0
我正在使用visual studio 2005开发一个窗体,其中一个组合框将一个值传递给嵌入式水晶报表的参数。我试图找出为什么每次尝试使用不同的组合框选择运行报表时,为什么它会一直提示我进行数据库登录。visusal studio嵌入式水晶报告保持提示数据库登录?
这里是我的代码:
private Sub Form1_load...
Dim ConnName As String
Dim ServerName As String
Dim DBName As String
Dim user As String
Dim pass As String
Dim gDBA As ADODB.Connection
Dim records As ADODB.Recordset
Dim datver As ADODB.Recordset
Dim query As String
'---OPEN THE DATABASE CONNECTIONS
gDBA = New ADODB.Connection ': gDBA.CursorLocation = adUseServer
'Added to prevent time out error
gDBA.CommandTimeout = 1000 : gDBA.ConnectionTimeout = 1000
gDBA.ConnectionString = "Server=svr13;Database=subscribers;User ID=KViews;Password=Solution;Trusted_Connection=True;"
gDBA.Open("Data Source=Kaseya;Initial Catalog=subscribers;User Id=KViews;Password=Solution;", "KViews", "Solution")
records = New ADODB.Recordset
query = "select distinct groupname from _v_k order by groupname desc"
'records.ActiveConnection = gDBA.ConnectionString
records.CursorType = CursorTypeEnum.adOpenForwardOnly
records.LockType = LockTypeEnum.adLockReadOnly
records.Open(query, gDBA)
Do While Not records.EOF
ComboBox1.Items.Add(records.Fields("groupname").Value)
records.MoveNext()
Loop
end Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim selected As String
selected = ComboBox1.Text
Dim cryRpt As New ReportDocument
cryRpt.Load("C:\Visual Studio 2005\Projects\WindowsApplication1\WindowsApplication1\CrystalReport1.rpt")
cryRpt.SetDatabaseLogon("KViews", "Solutions", "svr13", "subscribers")
cryRpt.SetParameterValue("companyname", selected)
CrystalReportViewer1.ReportSource = cryRpt
CrystalReportViewer1.Refresh()
End Sub
我看着这个以前发布database login prompt with crystal reports
但这不是非常有帮助。我无法找到CMC要禁用提示的位置。
任何想法?在此先感谢
因此,当您第一次运行报表时,它不会提示您,但当您更改组合框的选择以再次运行报表时会提示您? – Crispy 2009-10-21 17:34:10
它提示我两次..当我第一次尝试运行它,当我选择不同的组合框值再次运行。 – phill 2009-10-21 18:58:36