2/04/2013

Belajar pengkodean M. Access ( Coding )


M
elanjutkan Pembelajaran Microsoft access tutorial ( Part1 ) pada artikel sebelumnya, berikut akan saya paparkan langkah pemberian kode pada sebuah Form M. Access atau sering di sebut dengan Proses Peng-Coding-an, yaitu proses memberikan beberapa perintah pada sebuah Command Button agar dapat di fungsikan seperti yang diinginkan. Namun saya sarankan agar anda benar-benar mencermati artikel padaMicrosoft Access tutorial ( Part1 ) agar anda tidak bingung saat melakukan peng-kode-an

Pada tutor sebelumnya kita telah membuat sebuah table dengan nama table_barang dan sebuah form dengan nama formbarang. Pada form Barang telah kita berikan 4 command Button yaitu New, Save, Delete dan Exit, namun belum terdapat kode apapun didalamnya
Sebagai catatan : sebenarnya ada dua cara untuk memasang tombol / Command Button,  Pertama dengan mengikuti perintah command button sampai proses Finish, cara ini akan membuat sebuah command button terbentuk lengkap dengan perintahnya dan bisa digunakan. Kedua dengan meng-cancel pembuatan command button, sehingga command button yang terbentuk masih kosong ( belum terdapat kode ) dan kita harus mengisikan kode perintah agar command button tersebut dapat berfungsi. Tutorial ini menganjurkan kita untuk menggunakan langkah kedua, tujuanya agar kita bias tahu bagaimana sebenarnya penyusunan perintah pada Microsoft access.

Mari mulai pembelajaran Part2 kita :

  • Pada formbarang yang telah kita bentuk, aktifkan desaign view, bukan pada form view, klik kanan pada command button New – pilih Build Event
  • Maka akan muncul jendela Choose builder, pilih Code Builder dan klik tombol Ok. Lihat gambar 1
  • Maka akan muncul jendela Microsoft Visual Basic perhatiakan gambar 2
Penting untuk di perhatikan :
    1. Lingkaran no 1 menunjukkan name dari command button yang akan kita berikan Kode
    2. Lingkaran no 2 menunjukkan Action yang kita pilih, Action artinya langkah yang dilakukan pada command button untuk menjalankan perintah didalamnya
    3. lingkaran no 3 artinya jika kita lakukan Click pada command button dengan name cmd1 maka perintah akan di lakukan
    4. lingkaran no 4 menunjukkan label dari command button yang sedang di tempati oleh pointer mouse

  • tepat di bawah kalimat Private Sub cmd1_Click(), ketikkan kode berikut

text1  = ” ” ( tanda petik dua tanpa spasi )
Text2 = ” ” ( tanda petik dua tanpa spasi )
Text3 = ” ” ( tanda petik dua tanpa spasi )
Text4 = ” ” ( tanda petik dua tanpa spasi )
Text1.setfocus

Keterangan : text1 = “ “ artinya perintah untuk mengosongkan Textbox dengan nama Text1 dan seterusnya, sedangkan text1.setfocus artinya mengarahkan pointer ke kotak textbox text1
  • sekarang tekan Alt+F11, untuk berpindah pada jendela Microsoft access
  • ubah tampilan form pada mode Form View, isi semua text box yang ada kemudian tekan tombol New, jika semua kotak menjadi kosong dan pointer berpindah pada kotak kode barang artinya kode yang anda buat sudah Benar ( penulisan kode yang kurang akan membuat Debug Pada Program, meskipun hanya kurang spasi )
  • berikutnya kembalikan tampilan Form pada Desaign View, klim kanan pada area Form yang kosong, pilih Build Event kemudian Code Buiderdan klik OK
  • pada jendela Visual Basic, ubah Detail manjadi Form dan tepat di bawahPrivate Sub Form_Load() ketikkan kode berikut

Text5 = Format(Date, "dd/mm/yyyy")

tujuanya agar saat program dijalankan kotak tanggal akan langsung terisi dengan tanggal sesuai tanggal yang di set pada system computer anda lihat gambar 3
  • klik kanan pada Command Button Save – pilih Build Event , pada kotakChoose buider pilih Code builder, hingga tampil seperti gambar 4
  •  tepat di bawah Private Sub cmd2_Click() ketikkan kode barikut

Dim a As Object
If Len(text1) > 0 Then
    Set a = Nothing
    Set a = CurrentDb.OpenRecordset ("select * from tabel_barang where kdbrg='" + text1 + "'")
    If a.recordCount > 0 Then
        MsgBox ("kode Sudah Terpakai"), vbOKOnly
        text1.SetFocus
    Else
        CurrentDb.Execute "insert into tabel_barang values('" + text1 + "','" + Text2 + "'," + Str(CLng(Text3)) + "," + Str(CLng(Text4)) + ",#" + Text5 + "#)"
        List14.Requery
        cmd1_Click
    End If
Else
    MsgBox ("Data Input Belum Lengkap"), vbOKOnly
End If

Lihat penempatan hasil penulisan kode pada gambar 5
Keterangan : kode '" + nama text + "' untuk mengisi colom table dengan type  text dan kode  " + Str(CLng(namatext)) + " untuk mengisi Colom pada table dengan type Number atau Currency, sedangkan Kode  #" + Text5 + "#  untuk mengisikan colom table dengan type Date/Time
List14 adalah name dari listBox yang kita buat di dalam Form untuk mengetahui

Kode diatas akan melakukan proses sebagai berikut :
Program akan memeriksa apakah kotak Kode sudah terisi atau belum jika belum maka akan tampil pesan “ Data Input Belum Lengkap “, jika sudah maka program akan memeriksa ke dalam table apakah kode yang ada pada text1 sudah pernah ada pada table_barang, jika sudah maka program akan memberi tahu kita bahwa “ Kode sudah Terpakai “ jika belum maka program akan memasukkan Data input ke setiap kolom yang di tuju

  • Berikutnya silahkan tekan Alt+F11 untuk loncat ke jendela Microsoft Access, ubah tampilan Form pada Form View dan isikan semua textbox yang ada ( untuk kotak Stok Barang dan Harga Pembelian harus di isi dengan Angka ), kemudian klik tombol simpan, jika Data input anda tampil pada kolom list artinya kode sudah ditulis dengan Benar, jika keluar Debug maka anda harus memeriksa kembali Kode yang anda tulis, lihat contoh hasil tombol Save pada Gambar 6
  • Sekarang kita akan buat  data yang ada pada lixtbox akan berpindah ke kotak text box saat di double klik
  • Pastikan form pada tampilan Desaign View kilk kanan Listbox yang ada di dalam Form – pilih Build Event – Code Builder dan OK
  • Pada Jendela Microsoft Visual Basic , Ganti BeforeUpdate menjadiDblClick
  • Tepat di bawah Private Sub List14_DblClick(Cancel As Integer) ketikkan kode berikut

Dim s As Object
Set s = Nothing
Set s = CurrentDb.OpenRecordset ("select * from tabel_barang where kdbrg='" + List14.Column(0) + "'")
With s
    text1 = s!kdbrg
    Text2 = s!nmbrg
    Text3 = s!jumlah
    Text4 = s!hrg
    Text5 = s!Date
End With

Lihat gambar 7

  • Sekarang jalankan program pada mode Form View dan klik 2 kali pada salah satu data di dalam listBox , jika terjadi Debug berarti seperti biasa, ada kesalahan saat mengetikkan kode
  • Selanjutnya kita berikan kode perintah untuk tombol Delete
  • Pastikan Form pada mode desaign View klik kanan cmd3 atau tombol Delete, pilih Build Event – Code Builder dan OK
  • Tepat di bawah Private Sub cmd3_Click() Ketikkan Kode Berikut

Dim a As Object
If Len(text1) > 0 Then
    Set a = Nothing
    Set a = CurrentDb.OpenRecordset ("select * from tabel_barang where kdbrg='" + text1 + "'")
    If a.RecordCount > 0 Then
        CurrentDb.Execute "delete * from tabel_barang where kdbrg='" + text1 + "'"
        List14.Requery
        cmd1_Click
    Else
        MsgBox ("Data Dengan Kode '" + text1 + "' tidak ada dalam DataBase"), vbOKOnly
    End If
Else
    MsgBox ("Parameter Kosong, Double Klik Data Dari Daftar untuk Dihapus"), vbOKOnly
End If

Lihat gambar 8

  • Kembali pada jendela Microsoft Access dan jalankan Form, klik 2 kali salah satu Data dari kotak Daftar barang dan tekan tombol Delete, coba Juga klik tombol Delete saat kotak Kode Barang kosong serta berikan  kode Barang yang belum pernah terpakai dan klik tombol Delete, periksa kembali kode yang anda ketikkan jika terjadi Debug
  • Selanjutnya kita akan memasang kode untuk menutup Form pada tombol Exit
  • Kembalikan Form pada Mde Desaign View , klik kanan Tombol Exit  - Pilih build Event – Code Builder dan tekan Tombol OK
  • Tepat dibawah Private Sub cmd4_Click() ketikkan kode berikut
 DoCmd.Close acForm, Me.Name, acSaveYes

Lihat gambar  9

  • Tekan Alt+F11 untuk loncat ke jendela Microsoft Access dan jalankan Form Pada mode Form View, tekan Tombol Exit , jika keluar peringatan untuk menyimpan perubahan Form Pilih Yes

Sampai disini Form yang kita buat Sudah dapat menyimpan Data input dari User / operator, mengenai tampilan Form silahkan sesuai kreatifitas anda, kita sering melihat Winamp, Setiap tombol yang dimiliki akan menyimpan kode perintah layaknya yang telah kita pelajari disini, namun lebih rumit.