Sekedar masukkan saja... kalau saya buatnya seperti ini...
untuk koneksinya kita buat file text file, sehingga jika ada perubahan
kita hanya merubah koneksi melalui text file tersebut.
Misal nama text filenya setting.txt yang isinya :
=====================================================================
Server,database,user,password
=====================================================================
Lalu kita buat module untuk membaca text file tersebut:
'Module===================================================================================
Public gsConnect As String
Public gsServer As String
Public gsPassword As String
Public gsUser As String
Public gsDatabase As String
Public Sub AmbilDataFromFileSetting()
On Error GoTo ErrHandle
Dim xServer As String
Dim xDataBase As String
Dim xUser As String
Dim xpwd As String
Dim File1 As String
File1 = FreeFile
Open App.Path & "\Setting.Txt" For Input As File1
If Not EOF(File1) Then
Input #File1, xServer, xDataBase, xUser, xpwd
End If
Close File1
gsConnect = "Provider=SQLOLEDB;uid=" & xUser & ";pwd=" & xPwd & _
";data source=" & xServer & ";initial catalog=" & _
xDataBase & ""
gsServer = xServer
gsUser = xUser
gsPassword = xPwd
gsDatabase = xDataBase
Exit Sub
ErrHandle:
err.Raise err.Number, , "Module (AmbilDataFromFileSetting), " &
Chr(13) & err.Description
End Sub
'===========================================================================================
'Form untuk menampilkan report
=============================================================
Private Sub Form_Load()
For i = 1 To Report.Database.Tables.Count
With Report.Database
.Tables(i).SetLogOnInfo gsServer, gsDatabase, gsUser, gsPassword
If InStr(.Tables(i).Location, ".") = 0 Then
.Tables(i).Location = gsDatabase & ".dbo." &
.Tables(i).Location
Else
.Tables(i).Location = gsDatabase &
Mid$(.Tables(i).Location, InStr(.Tables(i).Location, "."))
End If
End With
Next i
End Sub
'=====================================================================
Itu masukkan dari saya semoga membantu..
--- In [email protected], "cahyo kusworo" <[EMAIL PROTECTED]>
wrote:
>
> teman2 vbers yth,
>
> saya membuat report pake CR yang mengakses ke tabel fisik di SQL
> Server. Report tsb saya masukkan di bagian Designer di project saya (
> bukan menggunakan file .rpt, karena saya nggak mau mendistribusikan
> file .rpt tsb).
>
> Report tsb bisa berjalan dg baik, tetapi ketika saya merubah koneksi
> ke database lain (copy dari database yg lama), report error. Setelah
> desain report saya perbaiki, saya rubah dg set location, report dpt
> berjalan dg baik lagi.
>
> Mohon pencerahan adakah cara utk merubah set location dari kode vb,
> atau ada cara lain supaya report yg saya buat lebih fleksibel terhadap
> perubahan database?
>
> trims sebelumnya.
>
> cahyo.
>