Anda di halaman 1dari 5

LATIHAN 21

Menggunakan Tabel Bantu untuk mencatat transaksi lebih


dari 1 item barang

TUJUAN : Mengenalkan konsep tabel bantu untuk memasukkan data lebih dari 1 item
pada form yang sama.

PERINTAH :

1. buatlah form faktur sederhana seperti tampak pada halaman berikut


2. Data control yanng dibuat:
a. Data1 untuk tabel BANTU
b. Data2 untuk tabel JUAL
c. Data3 untuk tabel CUSTOMER
d. Data4 untuk tabel BARANG
3. Dbgrid dipakai menampilkan data. DbGrid berupa tampilan seperti work-sheet
yang terdiri sel-sel yang terbentuk dari Kolom dan baris.
4. proses yang terjadi :
a. tabel bantu disiapkan sebanyak 10 record kosong
b. nomor faktur dan tanggal diisi secara manual
c. nomor customer diisi. Selesai pengisian dicari data nomor customer
tersebut ke Tabel Customer. Jika ketemu tampilkan di text box.
d. transaksi penjualan ini dimungkinkan untuk menjual barang lebih dari satu
item. Data item barang yang dijual dimasukkan, diedit, dihitung melalui
bantuan text-box dan hasilnya disimpan di file bantu dan di tampilkan di
dbgrid.
i. Asumsi kita yang pertama adalah data di dbgrid adalah kosong
(tidak memiliki data dalam recordnya)
ii. Memasukkan data barang adalah didasarkan pada no barang.
Demikian nomor barang dimasukkan maka program akan mencari
data tersebut di tabel Barang. Jika ketemu maka namanya
ditampilkan di text nama barang, dan harga jual ditampilkan di text
hargajual. Pointer dipindah ke sel unitjual.
iii. Nilai dihitung dari harga jual kali unit jual
iv. Jumlah seluruh transaksi ditampilkan di text jumlah trasaksi.
e. Jika command “simpan” di click maka data di textbox disimpan ke record
di tabel bantu. Ditanyakan apakah ada transaksi lainnya.

5. PENTING
UNTUK LATIHAN KALI INI PENYIMPANAN DATA KE TABEL JUAL
DAN PENGARUHNYA KE TABEL CUSTOMER DAN TABEL BARANG
BELUM DIBAHAS

JOB SHEET – VISUAL BASIC DASAR 43


Code Programnya :

Private Sub Command1_Click()

'jika disimpan, maka seluruh data dari text di form disimpan ke tabel bantu

Data1.Recordset.Edit
Data1.Recordset!notran = Text1.Text
Data1.Recordset!nocust = Text2.Text
Data1.Recordset!nobrg = Text5.Text
Data1.Recordset!nama = Text6.Text
Data1.Recordset!unitjual = Text8.Text
Data1.Recordset!hargajual = Text9.Text
Data1.Recordset!nilai = Text10.Text
Data1.Recordset.Update
Data1.Recordset.MoveNext

'ditanyakan masih ada data lain yg dijual tidak


'jika masih, data barang dikosongkan siap diisi data baru

jawab = MsgBox("masih ada barang lain dibeli?", vbYesNo)

JOB SHEET – VISUAL BASIC DASAR 44


If jawab = vbYes Then
Text5.Text = ""
Text6.Text = ""
Text8.Text = 0
Text9.Text = 0
Text10.Text = 0
Text5.SetFocus
Else
Command2.SetFocus
End If

End Sub

Private Sub Command2_Click()


End
End Sub

Private Sub Form_Activate()

'data di tabel bantu dihapus dan dibuat record kosong baru


'sebanyak 10 record

Data1.Recordset.MoveFirst
Do While Not Data1.Recordset.EOF
Data1.Recordset.Delete
Data1.Recordset.MoveNext
Loop
For N = 1 To 10
Data1.Recordset.AddNew
Data1.Recordset!unitjual = 0
Data1.Recordset!hargajual = 0
Data1.Recordset!nilai = 0
Data1.Recordset.Update
Next N

Data1.Recordset.MoveFirst

'seluruh text dalam form di kosongkan

Text1.Text = ""
Text2.Text = ""
Text3.Text = " "

JOB SHEET – VISUAL BASIC DASAR 45


Text4.Text = " "
Text5.Text = " "
Text6.Text = " "
Text8.Text = 0
Text9.Text = 0
Text10.Text = 0
Text12.Text = 0
End Sub

Private Sub Text2_LostFocus()

'setelah diiisikan no customer kemudian dicari ke tabel customer dan ditampilkan

Data3.Recordset.Index = "nocutdex"
Data3.Recordset.Seek "=", Text2.Text
If Data3.Recordset.NoMatch Then
pesan = MsgBox("DATA TIDAK KETEMU", vbOKOnly)
Text1.SetFocus
Exit Sub
End If
Text3.Text = Data3.Recordset!NAMACUST
Text4.Text = Data3.Recordset!ALAMATCUST
Text5.SetFocus

End Sub

Private Sub Text5_LostFocus()

'setelah diiisikan no barang kemudian dicari ke tabel barang dan ditampilkan nama dan
harga barang

Data4.Recordset.Index = "nobrg"
Data4.Recordset.Seek "=", Text5.Text
If Data4.Recordset.NoMatch Then
pesan = MsgBox("DATA TIDAK KETEMU", vbOKOnly)
Text4.SetFocus
Exit Sub
End If
Text6.Text = Data4.Recordset!namabrg
Text9.Text = Data4.Recordset!hargabrg
Text8.SetFocus
End Sub

JOB SHEET – VISUAL BASIC DASAR 46


Private Sub Text8_LostFocus()

'setelah diisi dengan jumlah barang dibeli maka kemudian dihitung nilai dan jumlah
transaksinya

nilai = Text9 * Text8


Text10.Text = nilai
jumlah = Text12 + nilai
Text12.Text = jumlah
Command1.SetFocus
End Sub

JOB SHEET – VISUAL BASIC DASAR 47

Anda mungkin juga menyukai