Sesi/Perkuliahan ke: XIII
Tujuan Instruksional Khusus :
1. Mahasiswa mengerti dan memahami integrasi Visual Basic dengan Microsoft Office
Pokok Bahasan : Studi Kasus
Deskripsi singkat : Dalam pertemuan ini akan mempelajari tentang Integrasi dengan Microsoft Office
Referensi :
1. Peter Norton’s, Guide to Visual Basic 6, SAMS Publishing, 1998
2. Djoko Pramono, Mudah Menguasai Visual Basic 6, Elex Media Komputindo, Jakarta, 1999
KASUS
Buatlah DataBase Mhs yang Recordnya terdiri dari field-field :
Nama Field Type
NPM Text
NAMA Text
Kelas Text
Dan Database Nilai yang Recordnya terdiridari :
Nama Field Type
NPM Text
MID Numeric
FIN Numeric
RATA Numeric
Kemudian hitunglah nilai rata-rata Mhs dan tampilkan pada form dan Printer
Yaitu Field-field : NPM, NAMA, NILAIMID,NILAIFIN, NILAIRATA2
1. FORM1 untuk inputan data MHS didesain dengan Object :
DATA1 Setting Propertinya sbb:
Properti Setting
Name Dbmahasiswa
Caption DATA MAHASISWA
Connect Access
DatabaseName C:\VB6\NilaiMhs.mdb
ECFAction AddNew
RecordsetType Dynaset
RecordSource Mhs
Dan Seterusnya Form1 didisain dengan Object-object berikut :
OBJECT PROPERTI
Caption Name DataSource DataField Text
Label1 NPM :
Label2 NAMA :
Label3 KELAS :
TextBox1 Txtnpm Dbmahasiswa Npm Dikosongkan
TextBox2 Txtnama Dbmahasiswa Nama Dikosongkan
TextBox3 Txtkelas Dbmahasiswa Kelas Dikosongkan
CommandButton1 CARI Cmdcari
CommandButton2 SIMPAN Cmdsimpan
CommandButton3 HAPUS Cmdhapus
CommandButton4 EXIT Cmdexit
2. FORM2 untuk inputan data NILAI dan sekaligus menghitung nilai rata-ratanya lalu disimpankan ke file Nilai dan FORM2 didesain dengan Object DATA1 yang setting propertinya sama dengan yang di FORM2 dan DATA2 seting propertiesnya sbb:
Properti Setting
Name Dbnilai
Caption DATA NILAI
Connect Access
DatabaseName C:\VB6\NilaiMhs.mdb
EOFAction AddNew
RecordsetType Dynaset
RecordSource Nilai
Dan Seterusnya FORM2 didisain dengan Object-object berikut :
OBJECT PROPERTI
Caption Name DataSource DataField Text
Label1 N P M :
Label2 Nilai Midtest :
Label3 Nilai Finaltest :
Label4 Nilai Rata-Rata :
TextBox1 Txtnpm Dbnilai Npm Dikosongkan
TextBox2 TxtMid Dbnilai NilaiMid Dikosongkan
TextBox3 TxtFin Dbnilai NilaiFin Dikosongkan
TextBox4 Txtrata2 Dbnilai Rata Dikosongkan
Frame1 Data Mahasiswa
Label5 NAMA :
Label6 KELAS :
TextBox5 Textnama Dbmahasiswa Nama Dikosongkan
TextBox4 Txtkelas Dbmahasiswa Kelas Dikosongkan
CommandButton1 CARI Cmdcari
CommandButton2 HITUNG Cmdhitung
CommandButton3 CETEK PRINTER Cmdcetak
CommandButton5 EXIT Cmdexit
Catatan :
Untuk menginput data nilai Masukan NPM Click() Tombol CARI dan muncul data Nama dan Kelas pada Data Mahasiswa. Kemudian masukan Nilai Mid dan Fin Click Tombol Hitung, maka nilai Rata-Ratanya akan ditampilkan pada textBox Rata-rata.
Dan bila diclick() Tombol CEATAK PRINTER maka muncul FORM3 Kemudian Click Tombol OK akan cetak keprinter dan untuk membatalkan pencetakan keprinter click Tombol Cencel
3. FORM3 untuk cetak keprinter yang setting Properti objectnya sbb:
OBJECT PROPERTIE NILAI
FORM3 Caption CETAK KEPRINTER
Label1 Caption Nyalakan Printer ! dan
Label2 Caption Siapkan / Rapikan Kertas
CommandButon1 Caption OK
Name CmdOK
CommandButon2 Caption CANCEL
Name CmdCancel
Hasil disain Form1 adalah sbb :
Script pada FORM1 adalah :
Private Sub cmdcari_Click()
Dim mnpm, msyarat As String * 8
Mnpm = InputBox(“Masukan npm yang dicari : “, ”cari”)
Msyarat = “npm = ”” & mnpm & “”
Dbmahasiswa.Recordset.Find msyarat
If dbmahasiswa.Recordset.EOF Then
MsgBox “Data tdk ditemukan ”, vbOKOnly, “cari data Mhs”
Dbmahasiswa.Recordset.MoveFirst
End If
End Sub
Private Sub cmdexit_Click()
End
End Sub
Private Sub cmdhapus_Click()
Dbmahasiswa.Recordset.Delete
Dbmahasiswa.Recordset.MoveNext
End Sub
Private Sub cmdsimpan_Click()
Dbmahasiswa.Recordset.AddNew
Txtnpm.setFocus
Dbmahasiswa.Recordset.MoveFirst
End Sub
Hasil disain Form2 adalah sbb:
Script pada FORM2
Dim rsnilai As Recordset
Dim rsmahasiswa As Recordset
Private Sub cmdcari_Click()
Dim mnpm, msyarat As String * 8
Mnpm = InputBox(“Masukan npm yang dicari : “, ”cari”)
Msyarat = “npm = ”” & mnpm & “”
Dbnilai.Recordset.Find msyarat
If dbnilai.Recordset.EOF Then
MsgBox “Data tdk ditemukan ”, vbOKOnly, “Cari Data Mhs”
Dbnilai.Recordset.MoveFirst
End If
End Sub
Private Sub cmdhitung_Click()
Form2.dbnilai.RecordSource ‘ “select * from nilai”
Dim nilmid,nilfin,nilrata As Single
Nilmid = dbnilai.Recordset(“mid”)
Nilfin = dbnilai.Recordset(“fin”)
Nilrata = (nilmid + nilfin) / 2
Dbnilai.Recordset(“rata) = nilrata
End Sub
Private Sub Form-Load()
Set wrkjet = CreateWorkspace(““, ”admin”, ””, dbUsejet)
End Sub
Private Sub txtnpm_change(Index As Integer)
Dim panjang As Byte
Dim mnpm, msyarat As String * 8
Mnpm = dbnilai.Recordset(“npm”)
Msyarat = “npm = ”” & mnpm & “”
Dbnilai.Recordset.Find msyarat
If dbnilai.Recordset.EOF Then
MsgBox “Data tdk ditemukan ”, vbOKOnly, “Cari Data Mhs”
Txtnama.text = rsmahasiswa!nama
Txtkelas.text = rsmahasiswa!kelas
End If
End Sub
Private Sub cmdcetak_click()
Form2.Hide
Form3.Show
End Sub
Hasil desain Form3 adalah Sbb :
Script pada FORM3
Dim DatabaseMHS As Database
Dim rsmahasiswa As Recordset
Dim rsnilai As recordset
Private Sub CmdCancel_click()
Form3.Hide
Form2.Show
End Sub
Private Sub CmdOK-Click()
CetakNilaiMhs
Printer.EndDoc
End Sub
Private Sub Form-Load()
Set DatabaseMHS = OpeDatabase(“:\VB6\NilaiMhs.mdb”)
Set rsnilai = DatabaseMHS.OpenRecordset(“Nilai”)
Set rsmhs = DatabaseMHS.OpenRecordset(“Mhs”)
rsnilai.Index = “npm”
rsmhs.Index = “npm”
End Sub
Private Sub CetakNilai.Mhs()
Dim no, hal, brs As Integer
Dim Mgrs As String
Printer.Font = “Tahoma”
Printer.Size = 14
rsnilai.Movefirst
Printer.CurrentX = 0
Printer.CurrentY = 0
No = 0
Hal = 0
Do While Not rsnilai.EOF
Hal = hal + 1
Printer.Print “DAFTAR NILAI MHS”;
Printer.Print Tab(68); “Halaman : “; hal
Mgrs = String$(78, “~”)
Printer.Print Mgrs
Printer.Print Tab(03); “ NO”;
Printer.Print Tab(10); “NPM”;
Printer.Print Tab(22); “NAMA”;
Printer.Print Tab(38); “NILAI MID”;
Printer.Print Tab(48); “NILAI FIN”;
Printer.Print Tab(58); “RATA2”
Printer.Print Mgrs
Brs = 0
Do While Not rsnilai.EOF And brs <10
Brs = Brs + 1
Rsmhs.Seek “=”, rsnilai ! npm
Printer.Print Tab(10); renilai ! npm;
Printer.Print Tab(22); rsmhs ! nama;
Printer.Print Tab(38); rsnilai ! mid;
Printer.Print Tab(48); rsnialai ! fin;
Printer.Print Tab(58); rsnilai ! Rata
Brs = brs + 1
Rsnilai.MoveNext
Rsmhs.Movenex
Loop
Printer.Print Mgrs
Printer.NewPage
Loop
End Sub
OutPutnya adalah :
DAFTAR NILAI MHS Halaman : 1
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~--------------------
NO NPM NAMA NILAI MID NILAI FIN RATA2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 10103897 Pramita 80 80 80
2 10203772 Sakila 60 70 65
3 20103098 Yusuf 90 90 90
4 22103432 Sulaiman 90 80 85
5 11103765 Sekar 70 80 75
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-------------------
Tidak ada komentar:
Posting Komentar