dear programmers,

sebelumnya makasih buat moderator atas supportnya begitu juga dgn members yg 
lain.
ok kali ini, aku coba share bagaimana membuat fungsi dan prosedur utk koneksi
database di level modul. kali ini aku coba ambil contohnya menggunakan
database access dan sql server.
semoga ada someone yg berbahagia dg kode ini  ;-)

ok pertama-tama, 
'--buat dulu reference microsoft activeX Data Object Library 2.7
'--kalo ga ada yg versi 2.7 yg 2.5 juga ga masalah.
'--tambahkan 1 command button ke form utk tombol login
'--tambahkan 3 textbox utk nama server, user dan password
'--tambahkan 1 modul
'--buat variabel (di deklarasi general) di modul
'--silahkan copy paste kode ini


'-------------------ini contoh fungsi di modul dg database sql 
server--------------

Public cn As adodb.Connection

Public Function Koneksi(server As String, User As String, Pass As String) As 
Boolean
  On Error GoTo errCn
    Set cn = New ADODB.Connection
    cn.Provider = "SQLOLEDB.1"
    cn.Open "Server=" & server & ";Database=Northwind;" & _
    "UID=" & User & ";" & _
    "PWD=" & Pass & ";"
    cn.CursorLocation = adUseClient
    Koneksi = True
  Exit Function
errCn:
    If Err.Number = -2147217843 Then
        MsgBox "Password untuk user ini salah"
    End If
End Function



'--setelah modul dibuat maka cara penggunaanya seperti ini


Private Sub Command1_Click()  '--tombol save
    Dim NamaServer As String
    Dim UserName As String
    Dim PassWord As String
    
    NamaServer = Text1.Text
    UserName = Text2.Text
    PassWord = Text3.Text
        
    Call Koneksi(NamaServer, UserName, PassWord)  '--ini fungsi yg dipanggil yg 
tlh dibuat di
modul.
                                                  '--dgn 3 parameter yg diambil 
dari object
textbox
    
    If cn.State = adStateOpen Then
        MsgBox "Database terkoneksi"
    End If
End Sub


'-------------------ini contoh prosedur di modul dg database sql 
server--------------

Public Sub KoneksiDb(server As String, User As String, Pass As String)
    Set cn = New ADODB.Connection
    cn.Provider = "SQLOLEDB.1"
    cn.Open "Server=" & server & ";Database=Northwind;" & _
    "UID=" & User & ";" & _
    "PWD=" & Pass & ";"
    cn.CursorLocation = adUseClient

End Sub

'--penggunaanya sama spt fungsi diatas, hanya dirubah nama fungsinya menjadi 
KoneksiDb (nama
prosedurnya)



'-------------------ini contoh prosedur di modul dg database 
access--------------


'--buat kode ini di level modul

Public cn As ADODB.Connection


Sub Koneksi()
    Set cn = New ADODB.Connection
    
    cn.Provider = "Microsoft.Jet.OleDB.4.0"
    cn.CursorLocation = adUseClient
    cn.Open App.Path & "\GL.mdb"
End Sub



'--untuk mengkoneksikan contohnya spt ini

Dim rs As ADODB.Recordset  '--deklarasi general

Private Sub Form_Load()
    Call Koneksi  '--memanggil prosedur koneksi database
    If cn.State = adStateOpen Then
        MsgBox "OK"
    End If
    rs.Open "Acc1", cn, adOpenDynamic, adLockOptimistic    
End Sub


Private Sub Command1_Click() '--tombol simpan

        '--ini cara menggunakan recordsetnya utk menginput data
        '--caranya ga ada bedanya kalo sudah terkoneksi databasenya

    rs.AddNew
    rs!kode1 = Text1.Text
    rs!nama1 = Text2.Text
    rs.Update
End Sub




'--trik spy database access terhubung terus dan tidak perlu dipanggil-panggil 
lagi   :-)
'--buat prosedurnya dgn nama sub main di modul dan ganti startup object menjadi 
sub main
'--tambahkan 1 baris kode lg utk membuka form (dlm hal ini biasanya form menu)


ok friends aku rasa ini udah bisa menambah wawasan gimana cara koneksi database
baik server maupun access utk desktop.

Salam
Lilis Suryani ArjaMaya


      
____________________________________________________________________________________
Fussy? Opinionated? Impossible to please? Perfect.  Join Yahoo!'s user panel 
and lay it on us. http://surveylink.yahoo.com/gmrs/yahoo_panel_invite.asp?a=7 

Kirim email ke