“Form Transaksi Pembelian adalah form yang digunakan untuk pengisian transaksi
pembelian barang atau bisa disebut juga nota pembelian barang.” (mangkulo,Hengky
Alexander,2016:139)
Data-data barang akan disimpan di database Microsoft Access . Jadi form ini harus
terintegrasi dengan tabel dari database PRA2 yang telah dibuat sebelumnya. Sebelum
membuat form, yang kita harus lakukan yaitu membuat tabel bernama “trans_pembelian”
pada database PRA2.
1
Isi field-field sebagai berikut:
2
MEMBUAT FORM TRANSAKSI PEMBELIAN
Sebelum membuat form sebaiknya mengetahui objek-objek yang harus ada pada form
tersebut. Objek yang digunakan dalam pembuatan Form Transaksi Pembelian adalah
TextBox, Command Button, ComboBox, Label, dan juga Data Grid.
• TextBox adalah kontrol yang mengandung string yang dapat diperbaiki oleh pemakai
dapat berupa satu baris tunggal, atau banyak baris.
• Command Button merupakan kontrol yang hampir ditemukan pada setiap form, dan
digunakan untuk membangkitkan event proses tertentu ketika pemakai melakukan
klik padanya.
• ComboBox merupakan kombinasi dari text box dan suatu list box dimana pemasukan
data dapat dilakukan dengan pengetikan maupun pemilihan
• Label adalah kontrol yang digunakan untuk menampilkan teks yang tidak dapat
diperbaiki oleh pemakai.
• DataGrid (berbentuk tabel untuk menampung data dari database)
• Simpan form tersebut dengan menekan CTRL+S atau klik Save kemudian beri nama
frmTransPembelian
3
• Desain form seperti gambar dibawah ini:
7 8 9 12 13
15 20 25
2
16 21 26
3
4 17 22
5 18 23 32
6 19 24
14 27
31 11 10 28
29
30
• Objek-objek seperti Text Box, Label, Command Button, Data Grid atau yang
lainnya dapat diambil dengan cara (drag and drop) dari toolbar:
4
• Atur properties tiap-tiap objek pada jendela properties sesuai tabel dibawah ini
( sesuaikan dengan nomor 2 pada gambar diatas)
No Object Name Caption MDIChild
1 Form frmTransPembelian Transaksi Pembelian True
2 Label Label1 No. Bukti
3 Label Label2 Tgl. Pembelian
4 Label Label3 Kode Pemasok
5 Label Label4 Nama Perusahaan
6 Label Label5 Alamat
7 Label Label7 Kode Barang
8 Label Label8 Harga
9 Label Label9 Jumlah Pesan
10 Label Label10 Jumlah Terima
11 Label Label11 Jml Dlm Perjalanan
12 Label Label12 Nama Barang
13 Label Label13 Saldo
14 Label Label6 (dd/mm/yyyy)
15 TextBox txtBukti
16 TextBox txtTgl
17 ComboBox cboKodePemasok
18 TextBox txtNamaPemasok
19 TextBox txtAlamatPemasok
20 ComboBox cboKodeBarang
21 TextBox txtHarga
22 TextBox txtJmlPesan
23 TextBox txtJmlTerima
24 TextBox txtJmlPerjalanan
25 TextBox txtNamaBarang
26 TextBox txtSaldo
27 CommandButton cmdAdd Add
28 CommandButton cmdSave Save
29 CommandButton cmdEdit Edit
30 CommandButton cmdDelete Delete
31 DataGrid Table
32 Frame Frame1
5
Gambar: Jendela Properties
6
• Atur Data Grid (tampilkan field-field data grid) caranya:
1. Dilihat dari desain form diatas bahwa kolom berjumlah 9, secara default datagrid
hanya menyediakan 2 kolom
2. Tambahkan kolom dengan klik kanan pada objek datagrid lalu pilih Edit
3. Klik kanan lagi pada objek datagrid lalu pilih Append
4. Ulangi langkah ke-3 sampai sesuai dengan jumlah kolom yang diinginkan
5. Lalu Klik kanan pada objek data grid lalu pilih Properties
7
LABORATORIUM AKUNTANSI LANJUT A PRA 2
FAKULTAS EKONOMI UNIVERSITAS GUNADARMA
• Lakukan kembali langkah-langkah diatas dengan beberapa caption dan DataField sbb:
Collumn Caption DataField
Collumn 0 No. Bukti no_bukti
Collumn 1 Tgl. Pembelian tgl_pembelian
Collumn 2 Kode Pemasok kd_prsh
Collumn 3 Kode Barang kd_brg
Collumn 4 Nama Barang nama_brg
Collumn 5 Harga harga_brg
Collumn 6 Jum. Pesan j_pesan
Collumn 7 Jum.Terima j_terima
Collumn 8 Jml Dlm Perjalanan j_perjalanan
Collumn 9 Saldo Total
Tabel: Caption & Data field pada Column Datagrid
• Selanjutnya masukan coding ke jendela coding dengan klik kanan pilih view code
Sub setKode1()
Call bukaKoneksi
rsPemasok.Open "select kd_prsh from pemasok", conn, adOpenStatic,
adLockOptimistic
rsPemasok.MoveFirst
Do Until rsPemasok.EOF
cboKodePemasok.AddItem rsPemasok!kd_prsh
rsPemasok.MoveNext
Loop
End Sub
8
Sub setKode2()
Call bukaKoneksi
rsBarang.Open "select kd_brg from barang", conn, adOpenStatic, adLockOptimistic
rsBarang.MoveFirst
Do Until rsBarang.EOF
cboKodeBarang.AddItem rsBarang!kd_brg
rsBarang.MoveNext
Loop
End Sub
9
cboKodeBarang.Text = Tabel.Columns(3)
txtNamaBarang.Text = Tabel.Columns(4)
txtHarga.Text = Tabel.Columns(5)
txtJmlPesan.Text = Tabel.Columns(6)
txtJmlTerima.Text = Tabel.Columns(7)
txtJmlPerjalanan.Text = Tabel.Columns(8)
txtSaldo.Text = Tabel.Columns(9)
If Not rsTransPembelian.BOF Then
rsTransPembelian.MoveFirst
While Not rsTransPembelian.EOF
If (rsTransPembelian!no_bukti = Tabel.Columns(0)) Then
txtNamaPemasok.Text = rsTransPembelian!nama_prsh
txtAlamatPemasok = rsTransPembelian!alamat_prsh
End If
rsTransPembelian.MoveNext
Wend
End If
End With
End Sub
Sub setData()
Call bukaKoneksi rsTransPembelian.Open "select
no_bukti,tgl_pembelian,kd_prsh,kd_brg,nama_brg,harga_brg,j_pesan,j_terima,j_perja
lanan,total from trans_pembelian", conn, adOpenForwardOnly, adLockOptimistic
With rsTransPembelian
If Not (.BOF And .EOF) Then
mvBookMark = .Bookmark
End If
End With
Set Tabel.DataSource = rsTransPembelian.DataSource
End Sub
10
!j_pesan = txtJmlPesan.Text
!j_terima = txtJmlTerima.Text
!j_perjalanan = txtJmlPerjalanan.Text
!total = txtSaldo.Text
rsTransPembelian.Update
End If
rsTransPembelian.MoveNext
Wend
End With
MsgBox "Data berhasil disimpan!", vbInformation, vbOKOnly
clean
kontenStatus (False)
cmdEdit.Caption = "Edit"
cmdAdd.Caption = "Add"
cmdEdit.Enabled = False
Tabel.Enabled = True
Call setData
Else
MsgBox "Masukkan data dengan lengkap!", vbExclamation, vbOKOnly
End If
End Sub
11
End Sub
12
rsTransPembelian!kd_prsh = cboKodePemasok.Text
rsTransPembelian!kd_brg = cboKodeBarang.Text
rsTransPembelian!nama_brg = txtNamaBarang.Text
rsTransPembelian!harga_brg = txtHarga.Text
rsTransPembelian!j_pesan = txtJmlPesan.Text
rsTransPembelian!j_terima = txtJmlTerima.Text
rsTransPembelian!j_perjalanan = txtJmlPerjalanan.Text
rsTransPembelian!total = txtSaldo.Text
rsTransPembelian.Update
MsgBox "Data berhasil disimpan!", vbInformation, vbOKOnly
clean
kontenStatus (False)
cmdSave.Enabled = False
cmdAdd.Caption = "Add"
Tabel.Enabled = True
Call setData
Else
MsgBox "Masukkan data dengan lengkap!", vbExclamation, vbOKOnly
End If
End Sub
13
End With
Call kontenStatus(False)
Call setData
Call clean
Else
Exit Sub
End If
cmdAdd.Caption = "Add"
cmdEdit.Enabled = False
cmdDelete.Enabled = False
End Sub
14
Berikut tampilan form Transaksi Pembelian:
15
FORM PEMBELIAN
16
Gambar: Isi record pada tabel pembelian
➢ Selesai!
17
Gambar: Isi record pada tabel TREK
➢ Selesai!
18
Membuat Tabel Utang
➢ Pilih menu Create lalu Tabel lalu klik kanan pada Tabe1 lalu pilih Design View
19
MEMBUAT FORM PEMBELIAN
➢ Simpan form dengan menekan CTRL+S lalu beri nama frmPembelian lalu Save
➢ Desain form seperti gambar dibawah ini
20
Gambar: Desain form pembelian
➢ Objek-objek seperti TextBox, Label, Command Button, datagrid, dll dapat diambil
dengan cara (drag and drop) dari toolbar, sbb:
➢ Atur properties tiap-tiap objek pada jendela properties sesuai table dibawah ini
(sesuaikan dengan nomor-nomor pada gambar diatas)
21
No Object Name Caption MDIChild Text
2 Frame Frame1
3 Label Label1 No. Bukti
4 Label Label2 Tgl. Pembelian
5 Label Label3 Kode Perusahaan
6 Label Label4 Nama Perusahaan
7 Label Label5 Kode Barang
8 Label Label6 Nama Barang
9 Label Label7 Tunai/Kredit
10 Label Label8 Debet/Kredit
11 Label Label9 Transaksi
12 Label Label10 Saldo
13 Label Label11 (dd/mm/yyyy)
14 ComboBox cboNoBukti
15 TextBox txtTgl
16 TextBox txtKodePemasok
17 TextBox txtNamaPrsh
18 TextBox txtKodeBrg
19 TextBox txtNamaBarang
20 ComboBox cboTunaiKredit
21 ComboBox cboDK
22 TextBox txtTransaksi
23 TextBox txtSaldo
24 CommandButton cmdAdd Add
25 CommandButton cmdSave Save
26 CommandButton cmdEdit Edit
27 CommandButton cmdDelete Delete
28 DataGrid Table
22
Gambar: Jendela Properties
6. Pilih tab Collumns lalu Ubah Caption & Data Field lalu klik OK
23
7. Lakukan kembali langkah-langkah diatas dengan beberapa caption dan DataField sbb:
Collumn Caption DataField
Collumn 0 No.Bukti no_bukti
Collumn 1 Tgl.Transaksi tgl_transaksi
Collumn 2 KodePemasok kd_prsh
Collumn 3 KodeBarang kd_brg
Collumn 4 Keterangan Transaksi
Collumn 5 Debet Debet
Collumn 6 Kredit Kredit
24
Sub setData()
Call bukaKoneksi
rsPembelian.Open "select no_bukti,tgl_transaksi,kd_prsh,kd_brg,transaksi,iif(dk =
'Debet',saldo) as debet, iif(dk = 'Kredit',saldo) as kredit from pembelian", conn,
adOpenForwardOnly, adLockOptimistic
With rsPembelian
If Not (.BOF And .EOF) Then
mvBookMark = .Bookmark
End If
End With
Set Tabel.DataSource = rsPembelian.DataSource
End Sub
Sub setKode()
Call bukaKoneksi
rsTransPembelian.Open "select no_bukti from trans_pembelian", conn, adOpenStatic,
adLockOptimistic
rsTransPembelian.MoveFirst
Do Until rsTransPembelian.EOF
cboNoBukti.AddItem rsTransPembelian!no_bukti
rsTransPembelian.MoveNext
Loop
End Sub
25
txtKodePemasok.Enabled = state
txtNamaPrsh.Enabled = state
txtKodeBrg.Enabled = state
txtNamaBarang.Enabled = state
txtTransaksi.Enabled = state
txtSaldo.Enabled = state
End Sub
Sub setTKDK()
cboTunaiKredit.AddItem "Tunai"
cboTunaiKredit.AddItem "Kredit"
cboDK.AddItem "Debet"
cboDK.AddItem "Kredit"
End Sub
Sub clean()
cboNoBukti.Text = ""
txtTgl.Text = ""
txtKodePemasok.Text = ""
txtNamaPrsh.Text = ""
txtKodeBrg.Text = ""
txtNamaBarang.Text = ""
cboTunaiKredit.Text = ""
cboDK.Text = ""
txtTransaksi.Text = ""
txtSaldo.Text = ""
End Sub
Sub getData()
Call bukaKoneksi
26
rsPembelian.Open "SELECT l.[no_bukti], l.tgl_transaksi, l.kd_prsh, p.nama_prsh,
l.kd_brg , b.nama_brg, l.transaksi, l.[dk], l.beli, l.saldo FROM pemasok p, pembelian l,
barang b WHERE p.kd_prsh = l.kd_prsh AND b.kd_brg = l.kd_brg ORDER BY
l.[no_bukti]; ", conn, adOpenForwardOnly, adLockOptimistic
With rsPembelian
If Not .BOF Then
cboNoBukti.Text = Tabel.Columns(0)
txtTgl.Text = Tabel.Columns(1)
txtKodePemasok.Text = Tabel.Columns(2)
txtKodeBrg.Text = Tabel.Columns(3)
txtTransaksi.Text = Tabel.Columns(4)
.MoveFirst
While Not .EOF
If ((!no_bukti = Tabel.Columns(0)) And (!transaksi = Tabel.Columns(4))) Then
txtNamaPrsh.Text = !nama_prsh
txtNamaBarang.Text = !nama_brg
cboTunaiKredit.Text = !beli
cboDK.Text = !dk
txtSaldo.Text = !saldo
End If
.MoveNext
Wend
End If
End With
Call kontenStatus1(False)
Call kontenStatus2(False)
End Sub
Sub simpanedit()
Call bukaKoneksi
27
rsPembelian.Open "select
no_bukti,tgl_transaksi,kd_prsh,kd_brg,beli,dk,transaksi,saldo,kode_rek,posting from
pembelian", conn, adOpenForwardOnly, adLockOptimistic
If cboNoBukti.Text <> "" And cboTunaiKredit <> "" And cboDK.Text <> "" Then
With rsPembelian
.MoveFirst
While Not (.EOF)
If (!no_bukti = Tabel.Columns(0)) Then
!no_bukti = cboNoBukti.Text
!beli = cboTunaiKredit.Text
!dk = cboDK.Text
!transaksi = txtTransaksi.Text
!saldo = txtSaldo.Text
!kd_prsh = txtKodePemasok.Text
!kd_brg = txtKodeBrg.Text
!tgl_transaksi = txtTgl.Text
.Update
.Update
End If
.MoveNext
Wend
End With
28
Else
MsgBox "Masukkan data dengan lengkap!", vbExclamation, vbOKOnly
End If
End Sub
29
t.kd_prsh = p.kd_prsh AND t.kd_brg = b.kd_brg ORDER BY t.[no_bukti]", conn,
adOpenStatic, adLockOptimistic
With rsSQL
.MoveFirst
While Not .EOF
If !no_bukti = cboNoBukti Then
txtTgl = !tgl_pembelian
txtKodePemasok = !kd_prsh
txtNamaPrsh = !nama_prsh
txtKodeBrg = !kd_brg
txtNamaBarang = !nama_brg
txtSaldo = !total
End If
.MoveNext
Wend
End With
End Sub
30
rsPembelian.AddNew
Call kontenStatus1(True)
Call kontenStatus2(True)
Call clean
cmdSave.Enabled = True
cmdAdd.Caption = "Cancel"
Tabel.Enabled = False
Else
kontenStatus1 (False) Call
clean cmdSave.Enabled =
False cmdAdd.Caption =
"Add" cmdEdit.Caption =
"Edit" cmdEdit.Enabled =
False cmdDelete.Enabled =
False Tabel.Enabled =
True
Call setData
End If
End Sub
31
Private Sub cmdSave_Click()
Call bukaKoneksi
rsTREK.Open "select kode_rek,nama_rek,dk,saldo from TREK", conn,
adOpenForwardOnly, adLockOptimistic
rsPembelian.Open "select
no_bukti,tgl_transaksi,kd_prsh,kd_brg,beli,dk,transaksi,saldo,kode_rek from
pembelian", conn, adOpenForwardOnly, adLockOptimistic
If cboNoBukti.Text <> "" And cboTunaiKredit <> "" And cboDK.Text <> "" Then
rsPembelian.AddNew
rsPembelian!no_bukti = cboNoBukti.Text
rsPembelian!tgl_transaksi = txtTgl.Text
rsPembelian!kd_prsh = txtKodePemasok.Text
rsPembelian!kd_brg = txtKodeBrg.Text
rsPembelian!beli = cboTunaiKredit
rsPembelian!dk = cboDK.Text
rsPembelian!transaksi = txtTransaksi
rsPembelian!saldo = txtSaldo
With rsPembelian
.MoveLast
If !dk = "Kredit" And !kode_rek = "211" Then ' utang dagang
32
rsUtang.Open "select no_bukti,kd_prsh,kd_brg,transaksi,saldo_utang from
utang", conn, adOpenForwardOnly, adLockOptimistic
rsUtang.AddNew
rsUtang!no_bukti = rsPembelian!no_bukti
rsUtang!kd_prsh = rsPembelian!kd_prsh
rsUtang!transaksi = rsPembelian!transaksi
rsUtang!saldo_utang = rsPembelian!saldo
rsUtang!kd_brg = rsPembelian!kd_brg
rsUtang.Update
End If
End With
33
pilih = MsgBox("Yakin ingin menghapus Data Barang ini?", vbQuestion + vbYesNo,
"Konfirmasi")
If pilih = vbYes Then
With rsPembelian
rsPembelian.MoveFirst
While Not .EOF
If (!no_bukti = cboNoBukti.Text) Then
If (!transaksi = "Utang Dagang") Then
rsUtang.MoveFirst
While Not rsUtang.EOF
If rsUtang!no_bukti = !no_bukti Then rsUtang.Delete
rsUtang.MoveNext
Wend End If
rsPembelian.Delete
End If
rsPembelian.MoveNext
Wend
End With
Call setData
Call clean
Else
Exit Sub
End If
cmdAdd.Caption = "Add"
cmdEdit.Enabled = False
cmdDelete.Enabled = False
End Sub
34
Call getData
cmdEdit.Enabled = True
cmdDelete.Enabled = True
cmdAdd.Caption = "Cancel"
End Sub
35
Gambar: Field dari tabel trans_penjualan
➢ Lalu isi record pada tabel:
Gambar: Form Pembelian(running)
➢ Tambahkan data perusahaan dengan klik tombol Add lalu isi data pada text box lalu
Tekan tombol Save
36