Showing posts with label Belajar VB. Show all posts
Showing posts with label Belajar VB. Show all posts

Thursday 26 April 2012

Jawaban Quis VBII (Lab C)

1. Buat database : mahasiswa.mdb

2. Tabel yang dibutuhkan

a. Mahasiswa 

Field Name    Data Type     Field Size    Keterangan
        Nim             Text              8                 PK
       Nama           Text             30             
      Jurusan          Text             30

Isi data mahasiswa sebanyak 3 record

b. Kuliah 

Field Name     Data Type     Field Size    Keterangan
Kodematkul       Text                 3                PK
Nmmatkul          Text                30

Isi data kuliah sebanyak 3 record

c. Nilai 

Field Name     Data Type    Field Size    Keterangan
    Nim                Text               8                PK
Kodematkul        Text               3               
    Nilai             Number
   Grade               Text              1
    Ket                  Text             20

3. Design Form Mahasiswa



4. Ketentuan Soal:

a. Buatlah prosedure : aktif, noanaktif dan bersih

b. Klik button ADD untuk menginput data mahasiswa

c. Pilih NIM maka nama dan jurusan akan tampil otomatis

d. Pilih Kode Mata kuliah maka akan tampil nama mata kuliah secara otomatis

e. Input Nilai maka grade dan keterangan akan tampil otomatis

Jika nilai 85-100 maka grade=A dan keterangan=Sangat baik
Jika nilai 70-84 maka grade=B dan keterangan=Baik
Jika nilai 60-69 maka grade=C dan keterangan=Cukup
Jika nilai 50-59 maka grade=D dan keterangan=Kurang
Jika nilai 0-49 maka grade=E dan keterangan=Buruk
f. Klik button SAVE untuk menyimpan data ke tabel nilai

g. Klik button EXIT untuk menutup form

Komponen yang ditambahkan:

1. Data combo 2 buah(Microsoft Data List Controls 6.0 (OLEDB))
Properties : 
a. Rowsource  adomhs
Listfield  nim

b. Rowsource  adokuliah
Listfield  kodematkul

2. MSHFLexGrid 1 buah
Properties : DataSource adonilai

3. Adodc 3 buah



Koneksi Adodc

Pada jendela properties pilih ConnectionString
Maka akan tampil jendela PropertyPages sbb.





a. Pilih use connection string Build Microsoft Jet 4.0 OLE DB ProviderNext



b. Tampil jendela data link properties



c. Pada select or enter a database name klik ... (ke folder database mahasiswa.mdb yang telah dibuat sebelumnya  open)

Klik Test Connection  Ok Ok
Setelah itu pada jendela Properties pilih RecordSource
Tampil jendela Property pages



Properties : 
a. Name adomhs
ConnectionString mahasiswa.mdb
RecordSource  select * from mahasiswa
b. Name adokuliah
ConnectionString mahasiswa.mdb
RecordSource  select * from kuliah
c. Name adonilai
ConnectionString mahasiswa.mdb
RecordSource  select * from nilai


Listing Program:

Sub bersih()
tnama = ""
tjur = ""
tnmmatkul = ""
tnilai = ""
tgrade = ""
tket = ""
dcnim = ""
dckode = ""
End Sub

Sub aktif()
dcnim.Enabled = True
dckode.Enabled = True
tnilai.Enabled = True
End Sub

Sub nonaktif()
dcnim.Enabled = False
tnama.Enabled = False
tjur.Enabled = False
dckode.Enabled = False
tnmmatkul.Enabled = False
tnilai.Enabled = False
tgrade.Enabled = False
tket.Enabled = False
End Sub

Private Sub Form_Activate()
bersih
nonaktif
cmdadd.SetFocus
End Sub
Private Sub cmdadd_Click()
aktif
dcnim.SetFocus
End Sub

Private Sub dcnim_Click(Area As Integer)
adomhs.RecordSource = "select*from mahasiswa where nim='" & dcnim & "'"
adomhs.Recordset.MoveFirst
Do While Not adomhs.Recordset.EOF
If dcnim.Text = adomhs.Recordset!nim Then
With adomhs.Recordset
tnama.Text = !nama
tjur.Text = !jurusan
Exit Sub
End With
End If
adomhs.Recordset.MoveNext
dckode.SetFocus
Loop
End Sub

Private Sub dckode_Click(Area As Integer)
adokuliah.RecordSource = "select*from kuliah where kodematkul='" & dckode & "'"
adokuliah.Recordset.MoveFirst
Do While Not adokuliah.Recordset.EOF
If dckode.Text = adokuliah.Recordset!kodematkul Then
With adokuliah.Recordset
tnmmatkul.Text = !nmmatkul
Exit Sub
End With
End If
adokuliah.Recordset.MoveNext
tnilai.SetFocus
Loop
End Sub

Private Sub cmdsave_Click()
With adonilai.Recordset
.AddNew
.Fields("nim") = dcnim.Text
.Fields("kodematkul") = dckode.Text
.Fields("nilai") = tnilai.Text
.Fields("grade") = tgrade.Text
.Fields("ket") = tket.Text
.Update
End With
adonilai.RecordSource = "select* from nilai"
adonilai.Refresh
nonaktif
adonilai.Refresh
bersih
End Sub

Private Sub tnilai_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If (tnilai >= 85) Then
tgrade = "A"
tket = "Sangat Baik"
Else
If (tnilai >= 70) Then
tgrade = "B"
tket = "Baik"
Else
If (tnilai >= 60) Then
tgrade = "C"
tket = "Cukup"
Else
If (tnilai >= 50) Then
tgrade = "D"
tket = "Kurang"
Else
tgrade = "E"
tket = "Buruk"
End If
End If
End If
End If
End If
End Sub

Private Sub cmdexit_Click()
Unload Me
End Sub

Sumber : Ahmad Sinnun (ahdsin.us)

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