Sunday, 22 April 2012

Jawaban Latihan Pra Kuis VBII ( Lab C )

1. Buat database : penjualan.mdb

2. Tabel yang dibutuhkan

a. Barang

Field Name           Data Type      Field Size    Keterangan
 Kdbarang                Text               5                     PK
 Nmbarang               Text               30
 Harga                     Currency
 Satuan                    Text                20

Isi data barang sebanyak 3 record

b. Transaksi

 Field Name    Data Type     Field Size   Keterangan
     Nofak           Text               10                PK
     Kdbarang      Text               30
     Jumbel         Number
     Jumharga     Currency
     Diskon         Currency
     Total           Currency

3. Design Form Transaksi



4. Ketentuan Soal:

a. Buatlah prosedure : aktif, noanaktif dan bersih

b. Klik button ADD untuk menginput data transaksi dan no. Faktur akan tampil otomatis (contoh: M201110001)

c. Pilih Kode Barang maka akan tampil nama barang, harga dan satuan secara otomatis (berdasarkan tabel barang)

d. Input Jumlah beli maka didapatkan:

Jumlah harga = harga x jumlah beliDiskon : jika jumlah beli >=5, mk diskon= 10% x jumlah hargajika jumlah beli >=3, mk diskon= 5% x jumlah hargaselain itu tidak mendapatkan diskonTotal =jumlah harga - diskon

e. Klik button SAVE untuk menyimpan data ke tabel transaksi

f. Klik button EXIT untuk menutup form

Listing Program:

Sub bersih()
tnofak = ""
dckdbarang = ""
tnmbarang = ""
tharga = ""
tsatuan = ""
tjumbel = ""
tjumharga = ""
tdiskon = ""
ttotal = ""
End Sub 
Sub aktif()
dckdbarang.Enabled = True
tjumbel.Enabled = True
End Sub 
Sub nonaktif()
tnofak.Enabled = False
dckdbarang.Enabled = False
tnmbarang.Enabled = False
tharga.Enabled = False
tsatuan.Enabled = False
tjumbel.Enabled = False
tjumharga.Enabled = False
tdiskon.Enabled = False
ttotal.Enabled = False
End Sub 
Sub nootomatis()
Dim urutan As String
Dim hitung As Long
adotran.RecordSource = "select * from transaksi"
adotran.Refresh
If adotran.Recordset.RecordCount <= 0 Then
urutan = adotran.Recordset.RecordCount + 1
tnofak.Text = "M" + Format(Date, "yymm") + Format(urutan, "000")
Else
adotran.Recordset.MoveLast
urutan = Val(Right(adotran.Recordset!nofak, 3)) + 1
tnofak.Text = "M" + Format(Date, "yymm") + Format(urutan, "000")
End If
End Sub 
Private Sub Form_Activate()
bersih
nonaktif
cmdadd.SetFocus
End Sub 
Private Sub cmdadd_Click()
aktif
bersih
nootomatis
dckdbarang.SetFocus
End Sub 
Private Sub dckdbarang_Click(Area As Integer)
adobarang.RecordSource = "select*from barang where kdbarang='" & dckdbarang & "'"
adobarang.Recordset.MoveFirst
Do While Not adobarang.Recordset.EOF
If dckdbarang.Text = adobarang.Recordset!kdbarang Then
With adobarang.Recordset
tnmbarang.Text = !nmbarang
tharga.Text = !harga
tsatuan.Text = !satuan
Exit Sub 
End With
End If
adobarang.Recordset.MoveNext
tjumbel.SetFocus
Loop
End Sub 
Private Sub tjumbel_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
tjumharga.Text = tjumbel.Text * tharga.Text
If tjumbel >= 5 Then
tdiskon = 0.1 * tjumharga
Else
If tjumbel >= 3 Then
tdiskon = 0.05 * tjumharga
Else
tdiskon = 0
End If
End If
ttotal = tjumharga - tdiskon
cmdsave.SetFocus
End If
End Sub 
Private Sub cmdsave_Click()
With adotran.Recordset
.AddNew
.Fields("nofak") = tnofak.Text
.Fields("kdbarang") = dckdbarang.Text
.Fields("jumbel") = tjumbel.Text
.Fields("jumharga") = tjumharga.Text
.Fields("diskon") = tdiskon.Text
.Fields("total") = ttotal.Text
.Update
End With
adotran.RecordSource = "select* from transaksi"
adotran.Refresh
nonaktif
bersih
adotran.Refresh
End Sub 
Private Sub cmdexit_Click()
Unload Me
End Sub

Design , Sumber & Tampilan : Ahmad Sinnus
Edit & Creative Design Blog :  Hafidz 

0 comments:

Post a Comment

Mohon untuk berkomentar dengan kata-kata yang baik. Silahkan ajukan pertanyaan, insyaAllah saya jawab sebisanya