mas betmen, sebaiknya proses pembuatan koneksi dan recordset itu dipisah.
 
contoh aplikasi:
'-----MODUL-----

Public conn As ADODB.Connection
Public Const const_cnString As String = "...."

Public Sub OpenConnection()
    'open connection disini
End Sub

Public Function OpenRecordset(sQuery As String) As Recordset
    Dim rs As Recordset
    Set rs = conn.Execute(sQuery) 'beserta dg options2 yg diinginkan (cursor type, location, open dynamic/forward only)
    If Not rs Is Nothing Then Set OpenRecordset = rs
End Function

'-----CONTOH PENGGUNAAN----- 

Private Sub Test()
    Dim rs As Recordset, rs2 As Recordset
    Set rs = OpenRecordset("select * from alsdjflajdf;")
    '--pake disini
   
    Set rs2 = OpenRecordset("select * from asd;lfkja;sdf")
    '--pake disini
   
    Set rs = Nothing
    Set rs2 = Nothing
End Sub
 
best regards
[wwn]
 
On 2/6/06, su_betmen nusaputra <[EMAIL PROTECTED]> wrote:
alo mas robby,
terima kasih buat tanggapannya
 
saat ini saya membuat koneksi di modul sbb:
Public Kon as ADODB.Connection
Public Rek as ADODB.Recordset
Public Qry as String
 
Sub Konek(sQry as string)
      Dim StrKon as string
      Set Kon = New ADODB.Connection
      Set Rek = New ADODB.Recordset
      StrKon ="Provider ... dst"
      Kon.Open StrKon
      Rek.Open sQry, StrKon
End Sub
 
Sub Tutup()
    On Error Resume Next
   
    If Rek.State = adStateOpen Then
        Rek.Close
    End If
   
    Kon.Close
   
    Set Rek = Nothing
    Set Kon = Nothing
End Sub
 
jd tiap kali butuh koneksi, saya tinggal buat
      Qry = "Select ... dst"
      Konek Qry
      Tutup
 
begitu seterusnya, kadang antara konek dan tutup diselingi bbrp prosedur dst.
nah masalahnya, saat ini saya sedang buat program klien-server yg memungkinkan perintah konek dilakukan bersamaan (lebih dari 1 koneksi) pd saat yg bersamaan.
misal :
server membuat koneksi utk A dan B dan C pd saat bersamaan dgn perintah
konek qry spt tsb di atas
cuman saya kesulitan utk membedakan yg mana Rek milik A, B dan C. takutnya ketuker-tuker ...
 
cara plg gampang sih buat prosedur Konek jgn di Modul tp di masing2 prosedur even-nya. tp rasanya kok ngga efisien. jd byk ngetik Set Kon = bla bla bla
 
ada pencerahan? selama ini sih lancar, krn saya msh coba sendiri. cuman jaga2 saja, takut kejadian :(


Robby <[EMAIL PROTECTED]> wrote:
untuk masalah koneksi ini mudah2an saya tidak salah tanggap
Public Kon as ADODB.Connection <--diletakkan di Modul sebagai global variabel
sebaiknya untuk deklarasi Set Kon = New ADODB.Connection hanya pada saat form load saja
Public Rek as ADODB.Recordset <--diletakan di form2
Set Rek = New ADODB.Recordset <-didalam sub di form2
 
Semoga ga ngaco ^_^
----- Original Message -----
Sent: Monday, February 06, 2006 1:52 PM
Subject: Re: [Programmer-VB] load object berkali-kali

 
alo mas,
itu Public F --> ngga perlu spt ini ya Public F ( ) as Form2
cuman klo pake ReDim F(x), mnrt saya ada sdkt mslh yaitu sbb :
1. jk datanya byk, mk menggunakan ReDim ini akan sangat boros memori
2. saya ingin load sesuai kebutuhan saja. jk butuh 5 form ya load 5 saja (ReDim F(5)
3. cuman cara no.2 ini ada sdkit kesulitan, jk array no 3 misalnya sudah di unload, mk kita tdk bisa redim jd F(4) krn takut datanya jd hilang
 
saya sih sementara mengakalinya dgn cara
Public F as Form2
 
Sub LoadForm2(sTag as String)
      Dim Fo as Form
      For Each Fo in Forms
            If Fo.Name = "Form2" AND Fo.Tag=sTag then
                  Fo.Zorder 0
                  exit sub
            End If
      Next
      Set F = New Form2
      F.Tag = sTag
      F.Show
End Sub
 
sejauh ini sih OK, cuman saya msh pengen yg lbh efisien krn ini mesti looping data dulu. butuh cukup waktu dan memori jk datanya banyak.
 
trs skr, gmn dgn mslh koneksi saya? yg ini saya msh blm ada pencerahan sama sekali nih :(
 
semua komentar dan saran akan sangat dihargai. btw, temen2 yg lain mungkin punya solusi yg berbeda dgn ! saya mslh koneksi itu
 
Robby <[EMAIL PROTECTED]> wrote:
untuk menghindari meload form yang sama bisa dilakukan dengan cara seperti ini
Public F, Fstatus
 
dideklarasikan didalam sub/function setelah listbox terisi data mahasiswa
    ReDim F(List1.ListCount)       
    ReDim Fstatus(List1.ListCount) As Byte
Private Sub List1_Click()
    x = List1.ListIndex
    If Fstatus(x) = 0 Then
        Set F(x) = New Form2
        Fstatus(x) = 1
    End If
    F(x).Show
    F(x).Caption = List1
End Sub
----- Original Message -----
From: Robby
Sent: Monday, February 06, 2006 11:46 AM
Subject: Re: [Programmer-VB] load object berkali-kali

 
mas betmen gimana kalo buat dinamik array,  (saya akan coba ilustrasikan)
 
Public F <--- buat satu variabel public data variant
 
ReDim F(list1.listcount) <--dideklarasikan didalam sub/function setelah listbox terisi data mahasiswa

Private Sub list1_Click()
    dim x as integer
    x = list1.listindex
    Set F(x) = New Form2
    F(x).Show
    F(x).Caption = list1.text (atau text pada kolom nim)
End Sub
 
 
mungkin kira2 begitu CMIIW
semoga membantu
 
 
----- Original Message -----
Sent: Monday, February 06, 2006 9:45 AM
Subject: Re: [Programmer-VB] load object berkali-kali

 
alo mas purwedi,
makasih buat tanggapannya.
maksud saya yg di show adalah F-nya (bukan Form2-nya)
--> F.Show
 
nah, mslhnya saya tdk bisa menggunakan cara mas purwedi krn jmlh form2 yg di load tdk bisa ditentukan. misal penggunaan : ada daftar nama mahasiswa (list box), jk nama di double klik mk akan muncul form2 yg isinya biodata mhs tsb. jk form2 yg berisi data mhs tsb sdh di load, mk tinggal di tampilkan di plg muka. jk blm di load mk akan di load dgn cara tsb dibwh. cuman kesulitan ya itu, membedakan masing2 form2 tsb.
 
utk koneksi, saya membutuhkannya di saat yg bersamaan utk hal yg berbeda2 utk database yg sama (utk multi user / multi threading) .. kasusnya mirip dgn kasus Form2 tsb di atas. gmn ya?
 
binun nih. skr ! sih ngga ada mslh. tp takutnya, begitu dipake byk user dan byk koneksi .. ntar datanya ketuker-tuker antar user lagi

Purwedi Kurniawan < [EMAIL PROTECTED]> wrote:
mas betmen, tiap kali mas mau load form2 dg tujuan yg berbeda2 cukup set masing2 object form ke form2 tadi
 
dim f1 as form2, f2 as form2, f3 as form2
set f1 = new form2
f1.show
 
set f2 = new form2
f2.show
 
set f3 = new form2
f3.show
 
nah buat mengenalinya kan gampang banget tuh, misal, buat ngubah caption f2
f2.caption = "this is f2"
 
perbedaannya dg yg mas pake, yg mas betmen show adalah Form2 sedangkan object F itu sendiri masih belum di show baru diset aja ke Form2.
 
buat pertanyaan ttg koneksi, ini koneksinya ke server database yg sama atau berbeda2? kalau koneksi yg diperlukan hanya ke satu server db yg sama, kita cukup buat 1 object koneksi saja, yg dipakai bersama2 u. banyak object recordset/command, ga perlu bikin banyak object koneksi.
 
best regards
[wwn]
 
On 2/6/06, su_betmen nusaputra <[EMAIL PROTECTED] > wrote:
dear pakar vb,
mohon pencerahan sekali lagi (semoga tdk bosan ya)
 
saya mendesain sebuah form (sebut saja form2), dimana kmdn form ini saya load berkali-kali sesuai dgn kebutuhan dgn cara
 
di module : Public F as Form2
 
kmdn prosedur panggilnya
Set F = New Form2
Form2.Show
 
dgn dmkn form2 tsb bisa dimunculkan lebih dr satu kali pd saat yg sama. nah mslhnya, saya kesulitan membedakan antara form2 yg 1 dgn yg lainnya krn namanya Form2 semua. apa saya ada yg salah ya? ada yg punya solusi?
 
selain itu, saya jg membuat koneksi ke database sbb
di module :
Public Kon as ADODB.Connection
Public Rek as ADODB.Recordset
 
Sub Konek()
     Set Kon = New ADODB.Connection
     Set Rek = New ADODB.Recordset
End SUb
 
jd begitu mau konek, saya tinggal panggil prosedur konek. cuma mslhnya, jk saya ingin memiliki 2 atau lebih koneksi dan memanggil prosedur konek lebih dr satu kali, saya kesulitan membedakan antada koneksi yg 1 dan lainnya. ada pencer! ahan kah atas mslh ini?
 
terima kasih


Wahana Programmer Groups Links

<*> Untuk mengunjungi sponsor milis ini, klik link berikut:
    http://wahanaprogrammer.net

<*> Untuk menghubungi owner milis ini, kirim email ke:
    [EMAIL PROTECTED]

<*> Konsultasi pemrogramman bisa chat disini:
    Yahoo! Messenger: wahanaprogrammer




SPONSORED LINKS
Programmer Indonesia Basic programming language
Computer programming languages Programming languages Java programming language


YAHOO! GROUPS LINKS




Kirim email ke