2014-02-19 34 views
0

遠程MySQL數據源,我有一個服務器mysql數據庫,並與在vb.net創建vb.net 2010

Mysql.Data庫連接,我所有的東西的工作,但現在我有生產報表中的問題,使用水晶報告。

我在哪裏設定的晶體報告的數據源,以便我從遠程MySQL取出的數據。

回答

0

一個有很多方法可以做到這一點,但這個是我做的方式。順便說一句,我在一個庫中使用了多個應用程序。注:這假設一個SQL客戶端連接字符串,您可以更改此以滿足您的需要。

Public Shared Sub SetupReportConnections(ByVal rpt As CrystalDecisions.CrystalReports.Engine.ReportDocument, ByVal ConnString As String, Optional ByVal UpdateSubReport As Boolean = True) 
    If ConnString = "" Then Exit Sub 
    'First, parse the connection string for the parts we need 
    Dim CN As New SqlClient.SqlConnection(ConnString) 
    Dim sServer As String = CN.DataSource 
    Dim sDatabase As String = CN.Database 

    'Update the connection information for each table 
    Dim crtableLogoninfo As New CrystalDecisions.Shared.TableLogOnInfo 
    Dim CrTables As CrystalDecisions.CrystalReports.Engine.Tables 
    Dim CrTable As CrystalDecisions.CrystalReports.Engine.Table 

    CrTables = rpt.Database.Tables 
    For Each CrTable In CrTables 
     crtableLogoninfo = CrTable.LogOnInfo 
     crtableLogoninfo.ConnectionInfo.ServerName = sServer 
     CrTable.ApplyLogOnInfo(crtableLogoninfo) 
    Next 

    If UpdateSubReport Then 
     For Each subrpt As CrystalDecisions.CrystalReports.Engine.ReportDocument In rpt.Subreports 
      SetupReportConnections(subrpt, ConnString, False) 
     Next 
    End If 
End Sub