I had started a similar thread earlier, but i did not get any explanations. I hope i am not crossing any line by repeating.
My problem is this. every form in my application accesses the database through a connection string within the startup(Login) form. the login inturn gets the user parameters from an xml file.
Public Sub ReadfromXML()
Dim I As Integer
Dim ServerName As String
Dim DatabaseName As String
Dim UID As String
Dim PWD As String
For I = 0 To 2
Dim doc As XmlDocument = New XmlDocument()
doc.Load("data.xml")
Dim root As XmlElement = doc.DocumentElement
ServerName = root.Attributes.Item(0).Value
DatabaseName = root.Attributes.Item(1).Value
UID = root.Attributes.Item(2).Value
PWD = root.Attributes.Item(3).Value
cnString = "server=" & ServerName & ";database=" & DatabaseName & ";User ID=" & UID & ";Password=" & PWD & ""
CN = New SqlConnection
Try
With (CN)
If .State = ConnectionState.Open Then .Close()
.ConnectionString = cnString
.Open()
Exit For
End With
Catch ex As Exception
If Err.Number = 5 Then
MsgBox("Cannot connect to server. Make sure that the server is running. " & vbCrLf & vbCrLf & "Otherwise please check for the configuration.", MsgBoxStyle.Exclamation)
'Dim DBPath As New frmDBPath
'DBPath.ShowDialog()
End If
Finally
CN.Close()
End Try
Next (I)
End Sub
now i am using crystal reports and i want the rpt files to access this connection either through the xml file or through the login form.right now what i am doing is, i created a normal form, inserted a crystal report viewer and within that form i put the code
cmd.Connection = thisConnection
cmd.CommandType = CommandType.Text
cmd.CommandText = "Select * from ATA_Pending"
da.SelectCommand = cmd
da.Fill(ds, "test")
Dim strpath As String
Dim strpath1 As String
strpath = Application.StartupPath
strpath1 = strpath.Remove(strpath.Length - 9, 9) + "ATAP.rpt"
Dim cr As New ReportDocument
cr.Load(strpath1)
cr.SetDataSource(ds.Tables("test"))
Me.crv1.ReportSource = cr
the rpt file i manually take database expert and create a connection "sql native client" . this works on a normal basis. but if i run it anywhere else(the published copy), the reports wont open.