Tolong pilih kategori sesuai, jenis posting (diskusi atau bukan) dan sertakan tag/topik yang sesuai seperti komputer, java, php, mysql, dll. Promosi atau posting tidak pada tempatnya akan kami hapus!
- Bagi Anda yang ingin mendaftar, baca link berikut:
http://diskusiweb.com/discussion/50491/how-to-registrasi-diskusiweb-com-baca-ini-terlebih-dahulu
- Cara menyisipkan kode program supaya tampil rapi dan terformat dengan baik di diskusiweb.com: http://www.diskusiweb.com/discussion/50415/cara-menyisipkan-kode-program-di-diskusiweb-com
- Cara posting gambar/image di post Anda: http://www.diskusiweb.com/discussion/47345/cara-menyisipkan-menyertakan-image-pada-posting/p1

Data ngga mecing

[code]
Option Explicit

Dim Koneksi As ADODB.Connection
Dim DtPelanggan As ADODB.Recordset

Sub BukaDatabase()
Set Koneksi = New ADODB.Connection
Koneksi.CursorLocation = adUseClient
Koneksi.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=salon;", "loensaket", "lo3nsak3t"
End Sub

Sub Data()
BukaDatabase
Set DtPelanggan = New ADODB.Recordset
DtPelanggan.Open "SELECT * FROM pelanggan ORDER BY IdPelanggan ASC", Koneksi, adOpenDynamic, adLockOptimistic

txtIdPel.Text = DtPelanggan!IdPelanggan
txtIdMem.Text = DtPelanggan!IdMember
txtNamaPel.Text = DtPelanggan!NamaPelanggan
txtAlamat.Text = DtPelanggan!Alamat
txtKelamin.Text = DtPelanggan!JenisKelamin
txtNoTlp.Text = DtPelanggan!NoTelepon

Set DtGridCustomer.DataSource = DtPelanggan
End Sub

Private Sub cmdNext_Click()
Data
DtPelanggan.MoveNext
End Sub

Private Sub cmdPrev_Click()
Data
DtPelanggan.MovePrevious
End Sub

Private Sub Form_Load()
Data
End Sub
[/code]

code diatas salahnya dimana ya?? karena kalo saya klik tombol next atau previous cuma data yang didatagrid yang berubah, sedangkan di textbox tetap aja gitu terus..... nah saya minta bantuannya nih...... terima kasih semuanya

Comments

  • Originally posted by v_qie17
    fungsi data taronya setelah di move mas... coba deh...

    malah ngga jalan sama sekali baik yang di datagrid maupun yang di textbox....
  • fungsi data taronya setelah di move mas... coba deh...
  • @zeffli
    mungkin mas loensaket masih kuliah dan ini mata kuliah visual basic mas. jadi nanyanya ya visual basic (mengingat masa kuliah dulu). tp saran dari mas zeffli bagus banget... ga ada salahnya mencoba vb.net juga. sapa tau lebih mudah dan lebih tertarik. kalau ada kesulitan tenang aja... ada masternya tuh (mas Zeffli) --> racun mode on :p
  • @loensaket
    Ini saran aja.
    Kalo msh belajar vb, knp ga' langsung belajar ke vb.net aja.
    Di .net, ada suatu class namanya dataset.
    dataset itu gunanya utk menampung data2 query dari database.
    Nah kalo kita teken next, maka akan melakukan pencarian didataset (hanya didalam memory komp).
    Ini akan sangat meringankan traffic lintas data antara client ke server karena bekerjanya di komp lokal.

    Kalo di vb 6 jika ada fungsi semacam dataset ini, gunakan saja.
    daripada bolak-balik ke db.


    (Mulai ngeracunin orang lagi). :D
  • Originally posted by Zeffli
    @loensaket
    Sori, mo nanya.
    Kalo setiap tekan tombol next dia bolak-balik manggil ke database, apa ga' bikin loadnya jadi lama?

    trus ada baiknya harus seperti apa ya mas/mba??? tolong diberi pencerahan gimana baiknya...
  • Originally posted by v_qie17
    jadi gini... buat beberapa fungsi. yaitu:

    1. fungsi koneksi ke database dan sekalian execute query
    2. fungsi buat nampilin ke textbox
    3. fungsi navigasi.

    fungsi execute query jangan digabungin dengan yang buat nampilin ke textbox

    Bisa dikasih gambaran ngga kira2 penulisan pemisahan kode diatas harus seperti apa??? maklum mas masih baru liat VB.
  • Option Explicit
    
    Dim Koneksi As ADODB.Connection
    Dim DtPelanggan As ADODB.Recordset
    
    Sub BukaDatabase()
    Set Koneksi = New ADODB.Connection
    Koneksi.CursorLocation = adUseClient
    Koneksi.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=salon;", "loensaket", "lo3nsak3t"
    
    Set DtPelanggan = New ADODB.Recordset
    DtPelanggan.Open "SELECT * FROM pelanggan ORDER BY IdPelanggan ASC", Koneksi, adOpenDynamic, adLockOptimistic
    
    Set DtGridCustomer.DataSource = DtPelanggan
    End Sub
    
    Sub Data()
    txtIdPel.Text = DtPelanggan!IdPelanggan
    txtIdMem.Text = DtPelanggan!IdMember
    txtNamaPel.Text = DtPelanggan!NamaPelanggan
    txtAlamat.Text = DtPelanggan!Alamat
    txtKelamin.Text = DtPelanggan!JenisKelamin
    txtNoTlp.Text = DtPelanggan!NoTelepon
    End Sub
    
    Private Sub cmdNext_Click()
    DtPelanggan.MoveNext
    Data
    End Sub
    
    Private Sub cmdPrev_Click()
    DtPelanggan.MovePrevious
    Data
    End Sub
    
    Private Sub Form_Load()
    BukaDatabase
    Data
    End Sub
    

    bener ga ya? soalnya lagi ga di depan komp :D
  • @loensaket
    Sori, mo nanya.
    Kalo setiap tekan tombol next dia bolak-balik manggil ke database, apa ga' bikin loadnya jadi lama?
  • jadi gini... buat beberapa fungsi. yaitu:

    1. fungsi koneksi ke database dan sekalian execute query
    2. fungsi buat nampilin ke textbox
    3. fungsi navigasi.

    fungsi execute query jangan digabungin dengan yang buat nampilin ke textbox
  • @v_qie17
    Hehehe....engga' lah, gw juga msh belajar kok.

    Emang di vb6 ada fungsi kaya' dataset ga' sih?
    Kalo ada, khan jauh lbh efisien di pake.
    Bayangkan kalo datanya udah ribuan !!!
  • bener mas.... tengkiyu ya..... trus gimana dengan pendapat tentang Kalo setiap tekan tombol next dia bolak-balik manggil ke database, apa ga' bikin loadnya jadi lama? kira2 ada solusi yang lebih efektif ngga??
  • @v_qie17
    Yep, betul sekali.
    Itu tidak akan bolak-balik ke db.
    Pemanggilan ke db hanya di dipanggil sekali saja (di fungsi bukadatabase())

    Sori, gw cuma bisa ngasih saran n pandangan aja.
    Soalnya gw ga' bisa vb 6. :P
  • dengan ditampung di variabel juga bisa berlaku kaya dataset kok mas. tinggal gimana cara memperlakukannya aja sih...
  • @v_qie17
    ic.
    Mungkin pake semacam arraylist gitu.
  • itu di code lama kamu kan menggabungkan pemanggilan ke textbox dengan pemanggilan query. itu masalahnya. dengan memanggil fungsi "data" maka akan meng-execute query lagi. itu maksud dari mas zeffli. nah... di code yang saya kasih itu kan memisahkan antara pemanggilan ke textbox dengan execute query. gitu bos... betul mas zeffli?
  • sebaiknya metod "Data" dipangil pada saat form load jangan ditempatkan pada cmdNext_Click() atau cmdPrev_Click() karna ini akan di panggil setiap waktu tombol ini di klik

    terus untuk merefresh perubahan data gunakan properties DtPelanggan.Requery
Sign In or Register to comment.