Modul Pemrograman Komputer 2 –Teknik Informatika- 29

Pengenalan Database

S

ebelum kita membuat aplikasi kita terlebih dahulu merancang susunan database yang akan kita gunakan. DBMS (Database Management System) yang digunakan adalah Microsoft Access 2000.

Aplikasi yang akan kita buat adalah pengolahan data Penjualan. Aplikasi Penjualan melibatkan entitas barang, pembeli (customer). Dalam mengolah data dalam DBMS kita akan menggunakan perintah SQL (Structure Query Language).

Rancangan ERD (Entity Relationship Diagram)
KodeCus NamaCus NoNota TglNota KodeBr NamaBr

Customer
AlamatCus

Transaksi/ Membeli

Barang/Stok
JumlahBr HargaBr

ItemBeli Nonota KodeBr

Keterangan ERD: Customer membeli barang, satu customer boleh membeli banyak barang dan satu barang boleh dibeli banyak customer sehingga ada hubungan many to many.

Relasi Antar Tabel
Dari Entity Relationship Diagram dapat disusun Relasi Antar Tabel sebagai berikut. Customer KodeCus * NamaCus AlamatCus Transaksi NoNota * TglNota KodeCus ** Item INoNota ** IKodeBr ** IJumlah ITotal Stok KodeBr * NamaBr HargaBr JumlahBr

STMIK AMIKOM YOGYAKARTA –www.amikom.ac.id-

Modul Pemrograman Komputer 2 –Teknik Informatika- 30 Ket: Yang bergambar * (asterik) berarti berfungsi sebagai Primary Key, yang pada aplikasi sebenarnya datanya tidak boleh ada yang sama. ** adalah Foreinger Key yang merupakan kunci tamu (Primary Key ditabel lain). Gambaran data ketika masuk kedalam database.

Customer
KodeCus C01 C02 NamaCus M. Indrajati AlamatCus Jl. Kaliurang No. 60 B KodeBr 002 003 004 Andi Sunyoto Jl. Gejayan No. xx

Stok
NamaBr Mouse Logitech Intel Pentium 4 1,7 Matherboard ASUSs HargaBr JumlahBr 23000 1200000 500000 484 85 140

Transaksi
NoNota KodeCus TglNota N001 C01 7/13/03 N001 N001 N001 004 002 003

Item
iNonota iKodeBr iJumlah iTotal 2 1000000 3 69000 5 6000000

Setelah kita desain Relasi Antar Tabelnya sekarang kita mendesain tabel yang kita perlukan.

Desain Tabel dalam Microsoft Access 2000
1. Memulai Microsoft Acces 2000 Panggil Aplikasi Microsoft Access 200 dari Start Menu. Sekarang kita akan membuat rancangan database Penjualan. Setelah tampil halaman Acces pada konfirmasi Create a new database using, pilih Blank Access Database. Kemudian simpan pada folder anda (seperti gambar di sebelahnya) dengan nama Penjualan.Mdb.

STMIK AMIKOM YOGYAKARTA –www.amikom.ac.id-

Modul Pemrograman Komputer 2 –Teknik Informatika- 31 Setelah Anda membuat database buku dengan menekan tombol Create, maka Access akan menampilkan menu utama seperti ditunjukkan pada gambar di bawah

Sebelum membuat database pada Access, terlebih dulu Anda harus membuat model data, apa saja informasi yang akan ditampilkan: Untuk membuat rancangannya dari menu gambar diatas kita doble klik Create table in Desain View. Kemudian isi seperti berikut:

2. Merancang Tabel dalam Microsoft Access 2000 Desain Tabel “Customer”

Field Name Data Type Field Size KodeCus NamaCus AlamatCus Text Text Text 5 30 50

Required Allow Zero Length Yes No No No Yes Yes

Untuk membuat Primary Key Anda Klik Field yang akan Anda jadikan Primary Key kemudian pilih tombol bergambar pada toolbar menu. Filed Primary Key kami tandai

huruf tebal (KodeCus) dan berlaku pada semua desain tabel. Kemudian anda simpan dengan nama “Customer” (Nama tabel adalah yang diapit tanda “…” pada desain.

STMIK AMIKOM YOGYAKARTA –www.amikom.ac.id-

STMIK AMIKOM YOGYAKARTA –www. Nonota disimpan dalam tabel Transaksi.amikom. 2. sedangkan data barang yang dibeli disimpan dalam tabel Item.ac.32 Anda ulangi langkah diatas untuk membuat tabel-tabel di bawah ini. Ketika barang dibeli maka jumlah barang pada stok akan berkurang.id- . Desain Tabel “Stok” Field Name Data Type KodeBr NamaBr JumlahBr Text Text Number Field Size 5 30 Long Integer Required Allo Zero Length Yes No No No Yes Desain Tabel “Transaksi” Field Name Data Type NoNota KodeCus TglNota Text Text Date/Time Field Size 5 5 Required Allo Zero Length Yes No No No Yes Desain Tabel “Item” Field Name Data Type iNonota iKodeBr iJumlah iTotal Text Text Number Number Field Size 5 5 Integer Long Integer Required Allo Zero Length Yes No No No No Yes 1.Modul Pemrograman Komputer 2 –Teknik Informatika.

Microsoft ADO Data Control 6. Penambahan Komponen Dari menu Project – Components (Ctrl+T) kemudian pilih komponen di bawah dengan mencentang pada textboxnya.0 (OLEDB) 2. About -> menampilkan informasi program Karena pada ToolBox standar tidak belum dilengkapi dengan koneksi database dengan Adodc dan menampilkan data DataGrid maka kita perlu menambahkan komponen tersebut. Microsoft DataGrid Control 6. STMIK AMIKOM YOGYAKARTA –www.ac. Langkah-langkahnya sebagai berikut: 1.33 Aplikasi Penjualan dengan Visual Basic S etelah desain database selesai sekarang kita merancang aplikasi yang akan kita buat dengan Visual Basic. Form Password -> untuk menentukan hak akses pengguna diijinkan apa tidak.amikom. Input Customer -> untuk memasukkan data customer(pembeli) 4. Input Stok -> untuk memasukkan data barang 5.0 (OLEDB) Kemudian klik Apply .Modul Pemrograman Komputer 2 –Teknik Informatika. Akan kita panggil pertama kali saat program dijalankan. Data Transaksi -> untuk melihat data transaksi 7. Transaksi -> untuk transaksi penjualan 6. 2.OK Pengaruh penambahan diatas pada ToolBox akan ada 2 tambahan komponen baru: untuk Adodc dan untuk DataGrid. 1.id- . Laporan-laporan -> untuk menampilkan data tertentu yang akan diprint 8. Untuk membuat aplikasi penjualan kita akan melibatkan beberapa form yaitu: 1. Form Utama -> untuk tampilan utama program awal 3.

module (*.frm FrmAbout.bas DataEnvironment1.34 2. kemudian pilih komponen di bawah dengan mencentang pada textboxnya.ac.frm FrmPassword.Dsr FrmInputStok.frm Catatan: Satu Project terdiri dari banyak form (*. Microsoft Data Report Designer v6. Microsoft Data Binding Collection Kemudian klik OK Bagan hierarkhi susunan project Aplikasi Penjualan Penjualan.Dsr). desain environment (*. Penambahan References Dari menu Project – Referrences.frm FrmTransaksi.vbp FrmUtama.amikom.bas).id- . Microsoft ActiveX Data Object 2.frm FrmInputCustomer.frm FrmDataTransaksi.0 3.frm Module1.frm).Modul Pemrograman Komputer 2 –Teknik Informatika. DataReport1.1 Library 2. 1. Microsoft Data Formating Object Library 4.Dsr STMIK AMIKOM YOGYAKARTA –www.

Modul Pemrograman Komputer 2 –Teknik Informatika.mdb" If Conn.Jet. Klik Open 4. Anda pilih menu toolbar seperti gambar disamping (panahnya). File Modul : Module1.0. module bisa dipanggil di semua form Cara menambahkan modul : 1.ac.35 Membuat Project Aplikasi Penjualan Barang Anda buat file project anda simpan dengan nama Penjualan.Close Set Conn = New ADODB.OleDB.4.Path + "\penjualan.vbp semua form dan module yang di bawah ini berada dalam project Penjualan.id- . Anda tuliskan kode program dibawah Kode Program Public Public Public Public Conn As New ADODB.Open StrConnect Else Conn.Open StrConnect End If End Sub STMIK AMIKOM YOGYAKARTA –www. Pilih menu Module 3.Connection Conn. 2.Connection Rs As New ADODB.bas Fungsi : Untuk membuat module koneksi dengan database.vbp.amikom.State = adStateOpen Then Conn.Data Source=" + App.Recordset StrConnect As String StrSQL As String Public Sub Konek() StrConnect = "Provider=Microsoft.

36 File Form Fungsi Desain Form 6 7 8 9 11 10 : FrmInputStok.id- . Update. Delete.ac.frm : Form untuk mengolah data Stok Barang (Insert.amikom. Edit) 1 12 13 3 2 4 14 15 5 16 17 19 20 18 No Nama Object Form Properti Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Text Name Text Name Text Name Text Name Text Visible Name Nilai FrmInputStok Input Data Stok Barang Frame1 Input Data Barang Label1 Kode Barang Label2 Nama Barang Label3 Harga Barang Label4 Jumlah Barang TxtKodeBr (dikosongkan) TxtNamaBr (dikosongkan) TxtHargaBr (dikosongkan) TxtJumlahBr (dikosongkan) FtxtKodeBr (dikosongkan) False CmdCari 1 2 3 4 5 6 7 8 9 10 11 Frame Label Label Label Label TextBox TextBox TextBox TextBox TextBox CommandButton STMIK AMIKOM YOGYAKARTA –www.Modul Pemrograman Komputer 2 –Teknik Informatika.

Refresh LblJumlah.Enabled = stat TxtJumlahBr.DataSource = Adodc1 End Sub Sub TxtKeadaan(stat As Boolean) TxtNamaBr.Modul Pemrograman Komputer 2 –Teknik Informatika.Caption = "Jumlah Data : " & Adodc1. General.id- .com Sub RefreshTampilan() Call Konek Adodc1.Enabled = stat End Sub 2. Event Load (Ketika dipanggil/ diLoad) Private Sub Form_Load() Call TxtKeadaan(False) Call RefreshTampilan CmdEdit.37 No Nama Object CommandButton CommandButton CommandButton CommandButton CommandButton CommandButton Adodc DataGrid 19 CommandButton Label Properti Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name AllowAddnew AllowArrows AllowDelete AllowUpdate Name Caption Name Caption Font Nilai Ca&ri CmdTambah &Tambah CmdUpdate &Update CmdSimpan &Simpan CmdHapus &Hapus CmdEdit &Edit CmdTutup &Tutup Adodc1 Data Stok Barang DataGrid1 False True False False CmdHapus &Hapus LblJumlah (dikosongkan) Bold 12 13 14 15 16 17 18 11 20 Kode Program 1.RecordSource = "SELECT * FROM stok" Adodc1. Komponen Form.Enabled = False STMIK AMIKOM YOGYAKARTA –www.Enabled = False CmdSimpan.Enabled = stat TxtHargaBr.RecordCount Set DataGrid1.Recordset.amikom. Declaration 'Nama : Andi Sunyoto 'Last Modify : 07/07/2003 16:05 WIB 'Email : myandisun@yahoo.ConnectionString = StrConnect Adodc1.Enabled = False CmdHapus.ac.

Text & ".Text & "'" Set Rs = Conn.amikom.Text = "" TxtHargaBr.Text = "" + Rs("KodeBr") TxtNamaBr. vbExclamation + vbOKOnly. "Peringatan" TxtKodeBr.Execute(StrSQL) If Not Rs. Event Click (Ketika diklik) Private Sub CmdSimpan_Click() If TxtKodeBr. Komponen CmdSimpan.Text = "" Then MsgBox "Kode Barang belum diisi".Text = "" TxtNamaBr. Event Click (Ketika diklik) Private Sub CmdTambah_Click() TxtKodeBr.Enabled = True CmdSimpan.Text & "'.Text & "'. vbExclamation + vbOKOnly.Enabled = True CmdUpdate.Text = "" + Rs("NamaBr") TxtHargaBr.Text & "'" Set Rs = Conn.Enabled = True End Sub 5.ac.Text = Rs("HargaBr") TxtJumlahBr. "Informasi" Else StrSQL = "SELECT KodeBr FROM stok WHERE KodeBr='" & TxtKodeBr. "Information" TxtKodeBr.Text = Rs("JumlahBr") CmdEdit.TabIndex = 0 End Sub 3.Execute(StrSQL) If Rs.Text = "" Then MsgBox "Kode Barang masih kosong !" Else StrSQL = "SELECT * FROM stok WHERE KodeBr='" & TxtKodeBr. vbInformation + vbOKOnly.Text + """ Tidak Ada ! ".SetFocus CmdSimpan.Text & ")" Conn.SetFocus Else StrSQL = "INSERT INTO stok (KodeBr.id- . Komponen CmdCari.Enabled = True End If End If End Sub 4." & TxtHargaBr. JumlahBr) VALUES ('" & TxtKodeBr.SetFocus Else FTxtKodeBr.Enabled = False TxtKodeBr.Enabled = True CmdHapus.Text = "" + Rs("KodeBr") TxtKodeBr.EOF Then MsgBox "Data dengan Kode """ + TxtKodeBr. NamaBr.38 CmdUpdate." & TxtJumlahBr.Modul Pemrograman Komputer 2 –Teknik Informatika.Text = 0 Call TxtKeadaan(True) TxtKodeBr. HargaBr. Komponen CmdTambah.Text = 0 TxtJumlahBr.'" & TxtNamaBr.Execute (StrSQL) RefreshTampilan End If End If End Sub STMIK AMIKOM YOGYAKARTA –www. Event Click (Ketika diklik) Private Sub CmdCari_Click() If TxtKodeBr.EOF Then MsgBox "Data Sudah Ada".

Fields("NamaBr") TxtHargaBr.Enabled = True End If End Sub 7.Recordset.Enabled = True CmdHapus.Fields("HargaBr") TxtJumlahBr.Execute(StrSQL) If (TxtKodeBr.ac. Event Click (Ketika diklik) Private Sub CmdTutup_Click() Unload Me End Sub STMIK AMIKOM YOGYAKARTA –www.Fields("JumlahBr") End With CmdEdit. ByVal LastCol As Integer) If Adodc1.JumlahBr=" & TxtJumlahBr.Execute StrSQL Call RefreshTampilan End If End Sub 10.Recordset.Text = .Recordset.EOF Then MsgBox "Sudah di Akhir atau Awal data" Else With Adodc1 FTxtKodeBr.Fields("KodeBr") TxtNamaBr.Text) And (Not Rs.id- . Komponen CmdUpdate.BOF Or Adodc1.Text = .Text = .Text & "'" Conn.Text & ". Event Click (Ketika diklik) Private Sub CmdHapus_Click() Dim pesan As Integer pesan = MsgBox("Apakah Anda yakin akan menghapus".Text <> FTxtKodeBr. "Konfirmai") If pesan = 6 Then StrSQL = "DELETE FROM stok WHERE KodeBr='" & FTxtKodeBr. "Information" TxtKodeBr.Text + " Sudah ada !".Text & "'" Set Rs = Conn.EOF) Then MsgBox "Data dengan kode " + TxtKodeBr.Fields("KodeBr") TxtKodeBr.Text & "'.39 6. Komponen CmdHapus.Text & "'" Conn. Komponen DataGrid1. vbInformation + vbOKOnly.Text & "'. Komponen CmdEdit. Event Click (Ketika diklik) Private Sub CmdUpdate_Click() StrSQL = "SELECT KodeBr FROM stok WHERE KodeBr='" & TxtKodeBr.Recordset.Enabled = True End Sub 8. Komponen CmdTutup.Text = .SetFocus Else StrSQL = "UPDATE stok SET KodeBr='" & _ TxtKodeBr.NamaBr='" & TxtNamaBr. Event Click (Ketika diklik) Private Sub CmdEdit_Click() Call TxtKeadaan(True) CmdUpdate. Event RowColChange (Baris dan kolom Berubah) Private Sub DataGrid1_RowColChange(LastRow As Variant.Text & _ " WHERE KodeBr='" & FTxtKodeBr.Recordset.amikom.Modul Pemrograman Komputer 2 –Teknik Informatika.Execute (StrSQL) Call RefreshTampilan End If End Sub 9.Text = .HargaBr=" & _ TxtHargaBr.Recordset.Recordset. vbQuestion + vbYesNo.

id- .40 File Form Fungsi Desain Form 5 : FrmInputCustomer.Modul Pemrograman Komputer 2 –Teknik Informatika.frm : Form untuk mengolah data Pembeli(Insert. Update.amikom. Edit) 1 6 7 9 8 10 11 3 2 12 4 14 13 15 17 18 16 No Nama Object Form Properti Name Caption Name Caption Name Caption Name Caption Name Caption Name Text Name Text Name Text Name Text Visible Name Caption Name Caption Nilai FrmInputCustomer Input Data Customer Frame1 Input Data Pembeli Label1 Kode Customer Label2 Nama Customer Label3 Alamat Customer TxtKodeCus (dikosongkan) TxtNamaCus (dikosongkan) TxtAlamatCus (dikosongkan) FTxtKodeCus (dikosongkan) False CmdCari Ca&ri CmdTambah &Tambah 1 2 3 4 5 6 7 8 9 10 Frame Label Label Label TextBox TextBox TextBox TextBox CommandButton CommandButton STMIK AMIKOM YOGYAKARTA –www.ac. Delete.

com Sub RefreshTampilan() Call Konek Adodc1.Enabled = False CmdUpdate.RecordCount Set DataGrid1. Komponen Form.Modul Pemrograman Komputer 2 –Teknik Informatika.Enabled = False CmdHapus.ac.Caption = "Jumlah Data : " & Adodc1.amikom.Refresh LblJumlah.41 No 11 12 13 14 15 16 Nama Object CommandButton CommandButton CommandButton CommandButton CommandButton Adodc DataGrid 17 Label Properti Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name AllowAddnew AllowArrows AllowDelete AllowUpdate Name Caption Font Nilai CmdUpdate &Update CmdSimpan &Simpan CmdHapus &Hapus CmdEdit &Edit CmdTutup &Tutup Adodc1 Data Customer DataGrid1 False True False False LblJumlah (dikosongkan) Bold 18 Kode Program 1. Declarations 'Nama : Andi Sunyoto 'Last Modify : 07/07/2003 16:05 WIB 'Email : myandisun@yahoo.Enabled = stat End Sub 2.Enabled = stat TxtAlamatCus.Enabled = False CmdSimpan. Event Load (Ketika dipanggil/ diLoad) Private Sub Form_Load() Call TxtKeadaan(False) Call RefreshTampilan CmdEdit.Recordset. General.id- .DataSource = Adodc1 End Sub Sub TxtKeadaan(stat As Boolean) TxtNamaCus.TabIndex = 0 End Sub STMIK AMIKOM YOGYAKARTA –www.Enabled = False TxtKodeCus.ConnectionString = StrConnect Adodc1.RecordSource = "SELECT * FROM customer" Adodc1.

EOF Then MsgBox "Data dengan Kode """ + TxtKodeCus.Text & "'" Set Rs = Conn. Komponen CmdSimpan.Text + """ Tidak Ada ! ". AlamatCus) VALUES ('" & TxtKodeCus.'" & TxtNamaCus. Event RowColChange (Baris dan kolom Berubah) Private Sub DataGrid1_RowColChange(LastRow As Variant.EOF Then MsgBox "Sudah di Akhir atau Awal data" Else With Adodc1 STMIK AMIKOM YOGYAKARTA –www. Komponen CmdTambah.Enabled = True CmdSimpan.Text = "" TxtNamaCus.amikom.Enabled = True CmdHapus. "Informasi" Else StrSQL = "SELECT KodeCus FROM Customer WHERE KodeCus='" & TxtKodeCus. "Information" TxtKodeCus.Text & "')" Conn.Enabled = True End If End If End Sub 4.id- .Modul Pemrograman Komputer 2 –Teknik Informatika.SetFocus Else StrSQL = "INSERT INTO customer (KodeCus.Enabled = True End Sub 5.EOF Then MsgBox "Data Sudah Ada".Recordset.Enabled = True CmdUpdate.BOF Or Adodc1.Text = "" Then MsgBox "Kode Customer masih kosong !" Else StrSQL = "SELECT * FROM customer WHERE KodeCus='" & TxtKodeCus.Execute(StrSQL) If Not Rs.Text = "" Then MsgBox "Kode Customer belum diisi".Text = "" + Rs("NamaCus") TxtAlamatCus.42 3.Text & "'. Event Click (Ketika diklik) Private Sub CmdSimpan_Click() If TxtKodeCus. NamaCus.SetFocus CmdSimpan.Recordset. Komponen DataGrid1.Text = "" + Rs("KodeCus") TxtNamaCus.Text & "'" Set Rs = Conn.Text = "" Call TxtKeadaan(True) TxtKodeCus.Text = Rs("AlamatCus") CmdEdit. "Peringatan" TxtKodeCus. vbExclamation + vbOKOnly.'" & TxtAlamatCus.ac.Execute (StrSQL) RefreshTampilan End If End If End Sub 6. vbInformation + vbOKOnly.Execute(StrSQL) If Rs. vbExclamation + vbOKOnly.Text = "" TxtAlamatCus. Komponen CmdCari.Text = "" + Rs("KodeCus") TxtKodeCus.SetFocus Else FTxtKodeCus. Event Click (Ketika diklik) Private Sub CmdTambah_Click() TxtKodeCus.Text & "'. Event Click (Ketika diklik) Private Sub CmdCari_Click() If TxtKodeCus. ByVal LastCol As Integer) If Adodc1.

id- .Fields("KodeCus") TxtNamaCus. Event Click (Ketika diklik) Private Sub CmdEdit_Click() Call TxtKeadaan(True) CmdUpdate. STMIK AMIKOM YOGYAKARTA –www. Komponen CmdUpdate.Execute StrSQL Call RefreshTampilan End If End Sub 10.43 FTxtKodeCus.” harus di set dulu sebagai StartUp Object.Text & _ "'. vbInformation + vbOKOnly.Execute (StrSQL) Call RefreshTampilan End If End Sub 9.Fields("NamaCus") TxtAlamatCus.Text & "'" Set Rs = Conn. vbQuestion + vbYesNo.Recordset.Enabled = True CmdHapus.Fields("KodeCus") TxtKodeCus.Enabled = True End If End Sub 7. "Information" TxtKodeCus. Pilih form mana yang akan anda jalankan.Text + " Sudah ada !".Recordset.Text = .Execute(StrSQL) If (TxtKodeCus.Text & "'.Text) And (Not Rs. Komponen CmdTutup. Dari menu Project .AlamatCus='" & TxtAlamatCus.NamaCus='" & TxtNamaCus.Fields("AlamatCus") End With CmdEdit.Enabled = True End Sub 8.Text = . Event Click (Ketika diklik) Private Sub CmdTutup_Click() Unload Me End Sub Note: Dalam Menjalankan sebuah form dan jika jumlah form lebih dari satu maka “Set dalam menu ini setiap Anda membuat Form baru dan akan dijalankan. berarti FrmInputCustomer yang dijalankan pertama kali.amikom.Text & "'" Conn. Event Click (Ketika diklik) Private Sub CmdHapus_Click() Dim pesan As Integer pesan = MsgBox("Apakah Anda yakin akan menghapus".Recordset.SetFocus Else StrSQL = "UPDATE customer SET KodeCus='" & _ TxtKodeCus.Text = .Recordset.Text & "'" Conn. "Konfirmai") If pesan = 6 Then StrSQL = "DELETE FROM customer WHERE KodeCus='" & FTxtKodeCus.ac.Text = . Event Click (Ketika diklik) Private Sub CmdUpdate_Click() StrSQL = "SELECT KodeCus FROM customer WHERE KodeCus='" & TxtKodeCus.EOF) Then MsgBox "Data dengan kode " + TxtKodeCus.Text & _ "' WHERE KodeCus='" & FTxtKodeCus.Penjualan Properties. Komponen CmdHapus.Modul Pemrograman Komputer 2 –Teknik Informatika.Text <> FTxtKodeCus. Komponen CmdEdit.

amikom.Modul Pemrograman Komputer 2 –Teknik Informatika.ac.id- .frm : Form untuk mengolah data Transaksi Penjualan Barang 7 11 6 8 9 12 1 2 3 4 5 15 16 17 21 23 13 14 10 20 19 18 22 25 24 26 25 No Nama Object Form Properti Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Text Nilai FrmTransaksi Form Transaksi Barang Frame1 Data Transaksi Penjualan Barang Frame1 Data Pembelian Label1 Kode Customer Label2 Nama Customer Label3 Alamat Customer LblNamaCus (dikosongkan) LblAlamatCus (dikosongkan) Label4 No Nota * Label5 Tanggal Label6 Kode Nama Barang Beli Stok Total TxtKodeCus (dikosongkan) 1 2 3 4 5 6 7 8 9 10 11 Frame Frame Label Label Label Label Label Label Label Label TextBox Harga STMIK AMIKOM YOGYAKARTA –www.44 File Form Fungsi Desain Form : FrmTransaksi.

RecordSource = "SELECT iKodeBr.Refresh Set DataGrid1.Execute(StrSQL) STMIK AMIKOM YOGYAKARTA –www.ac. NamaBr.Text & "'" Set Rs = Conn. Declarations 'Nama : Andi Sunyoto 'Last Modify : 07/07/2003 16:05 WIB 'Email : myandisun@yahoo.ConnectionString = StrConnect Adodc1. iTotal.Text & "'" Adodc1. item WHERE stok. iJumlah.45 No 13 14 15 16 17 18 19 20 21 Nama Object TextBox TextBox ComboBox TextBox TextBox TextBox TextBox TextBox Adodc DataGrid 22 CommandButton CommandButton CommandButton Label Properti Name Text Name Text Name Text Name Text Name Text Name Text Name Text Name Text Name Caption Name AllowAddnew AllowArrows AllowDelete AllowUpdate Name Caption Name Caption Name Caption Name Caption Font Nilai TxtNoNota (dikosongkan) TxtTgl (dikosongkan) CmbKodeBr (dikosongkan) TxtNamaBr (dikosongkan) TxtJumlahBeli 0 TxtHarga (dikosongkan) TxtStok (dikosongkan) TxtTotal 0 Adodc1 Adodc1 DataGrid1 False True False False CmdHapus Ca&ri CmdOK &OK CmdTutup &Tutup LblTotalHarga (dikosongkan) Bold 23 24 25 18 Kode Program 1. General.Modul Pemrograman Komputer 2 –Teknik Informatika.id- .com Sub RefreshBeli() Call Konek Adodc1.KodeBr=item. iNonota FROM stok.DataSource = Adodc1 End Sub Sub SUMBeli() StrSQL = "SELECT SUM(iTotal) As TotalHarga FROM item WHERE iNonota='" & TxtNoNota.amikom.iKodeBr AND iNonota='" & TxtNoNota. HargaBr.

"Konfirmasi") If pesan = 6 Then FrmInputCustomer.EOF Then MsgBox "No Nota Sudah Ada.Caption = Rs("AlamatCus") TxtNoNota.EOF Then pesan = MsgBox("Data dengan Kode """ + TxtKodeCus.AddItem Rs("KodeBr") Rs. "dd .Text & "'" Set Rs = Conn.SetFocus End If End If End If End Sub 4.Enabled = True TxtTgl.Enabled = False TxtJumlahBeli. No yang Lain". Komponen TxtKodeCus.Execute(StrSQL) If Rs.ac.Text + """ Tidak Ada ! " + Chr(13) + "Apakah Anda Akan menambahkannya ?".Show Else TxtKodeCus.EOF CmbKodeBr.mmm .SetFocus End If Else LblNamaCus.Caption = "" + Rs("NamaCus") LblAlamatCus. Event KeyPress (ditekan tombol pada keyborad) Private Sub TxtKodeCus_KeyPress(KeyAscii As Integer) Dim pesan As Integer If KeyAscii = 13 Then ‘jika tombol enter ditekan If TxtKodeCus.Enabled = True TxtNoNota.Text = Format(Date. Event KeyPress (ditekan tombol pada keyborad) Private Sub TxtNoNota_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then StrSQL = "SELECT Nonota FROM Transaksi WHERE NoNota='" & TxtNoNota.Execute(StrSQL) CmbKodeBr. vbQuestion + vbYesNo.amikom. vbInformation + vbOKOnly.Enabled = False TxtTgl.Modul Pemrograman Komputer 2 –Teknik Informatika.46 LblTotalHarga.Clear Do While Not Rs. Komponen Form.MoveNext Loop CmbKodeBr. Komponen TxtNoNota.Caption = "Total Harga : " & Rs("TotalHarga") End Sub 2.Text = "" Then MsgBox "Kode Customer masih kosong !" Else StrSQL = "SELECT * FROM customer WHERE KodeCus='" & TxtKodeCus.Text & "'" Set Rs = Conn.Enabled = False TxtTgl.Enabled = False CmbKodeBr.id- .Execute(StrSQL) If Not Rs.Enabled = True STMIK AMIKOM YOGYAKARTA –www.SetFocus Else StrSQL = "SELECT KodeBr FROM stok" Set Rs = Conn. "Information" TxtNoNota.yyyy") End Sub 3. Event Load (Ketika dipanggil/ diLoad) Private Sub Form_Load() TxtNoNota.

Text = Rs. Komponen TxtJumlahBeli.Text = "" TxtHarga.Text – TxtJumlahBeli. "Informasi" TxtJumlahBeli. Event KeyPress (ditekan tombol pada keyborad) Private Sub TxtJumlahBeli_KeyPress(KeyAscii As Integer) If (KeyAscii = 13) Then If CInt(TxtJumlahBeli.id- .Text = "" & Rs." & TxtTotal.Text = TxtJumlahBeli.SetFocus DataGrid1.Text) <= CInt(TxtStok.Text = 0 MsgBox "Kode Barang Tidak Ada" CmbKodeBr.Text = Rs.Text * TxtHarga.Text <> "" Then TxtJumlahBeli. vbExclamation + vbInformation.47 CmbKodeBr.Text & "'" Conn.Text CmdOK.Execute (StrSQL) STMIK AMIKOM YOGYAKARTA –www.Text) <= CInt(TxtStok.Enabled = True Else MsgBox "Stok Tidak Cukup".Fields("HargaBr") TxtStok.Modul Pemrograman Komputer 2 –Teknik Informatika.Text & "'. Komponen CmbKodeBr.Text & "'" Set Rs = Conn." & TxtJumlahBeli.Text) Then TxtTotal.SetFocus End If End If End Sub 8.Text & "'.Execute (StrSQL) StrSQL = "UPDATE stok SET JumlahBr=" & TxtStok.SetFocus End If End Sub 6. iTotal) VALUES ('" & TxtNoNota. '" & CmbKodeBr.Text) Then StrSQL = "INSERT INTO item (iNonota.EOF Then TxtNamaBr.Text & " WHERE KodeBr='" & CmbKodeBr. Komponen CmbKodeBr.SetFocus End If End If End Sub 7.Fields("NamaBr") TxtHarga. Komponen TxtJumlahBeli. iJumlah.Text & ". iKodeBr.Enabled = True End If End If End Sub 5. Event Click Private Sub CmbKodeBr_Click() StrSQL = "SELECT * FROM stok WHERE KodeBr='" & CmbKodeBr.amikom.ac.Execute(StrSQL) If Not Rs. Event Change Private Sub TxtJumlahBeli_Change() If TxtJumlahBeli.Enabled = True TxtJumlahBeli.Text = 0 TxtStok.Text <> "" Then If CInt(TxtJumlahBeli. Event KeyPress (ditekan tombol pada keyborad) Private Sub CmbKodeBr_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Call CmbKodeBr_Click If TxtNamaBr.Fields("JumlahBr") Else TxtNamaBr.Text & ")" Conn.

"Informasi" TxtJumlahBeli. Komponen CmdOK.Enabled = False DataGrid1.ac.Recordset("iNonota") JumlahBeli = Adodc1.Recordset("iJumlah") If KodeBr = "" Then MsgBox "Anda pilih mana yang batal beli !" DataGrid1.Text & "')" Conn. "Informasi" TxtKodeCus.SetFocus Else StrSQL = "DELETE FROM item WHERE iKodeBr ='" & KodeBr & "' AND iNoNota='" & Nonota & "'" Conn. vbInformation + vbOKOnly.Enabled = False End If End Sub 10.Execute (StrSQL) StrSQL = "UPDATE stok SET JumlahBr= JumlahBr + " & JumlahBeli & " WHERE KodeBr='" & KodeBr & "'" Conn. Nonota As String Dim JumlahBeli As Integer KodeBr = Adodc1.Text & "'. '" & TxtKodeCus.48 TxtNamaBr. Komponen CmdHapus.SetFocus Else MsgBox "Stok Tidak Cukup". vbExclamation + vbInformation. Komponen CmdTutup. TglNota) VALUES ('" & TxtNoNota.amikom. Event Click Private Sub cmdOK_Click() Dim pesan As Integer StrSQL = "INSERT INTO transaksi (Nonota.Text = "" TxtHarga.SetFocus End If End If End Sub 9.Text = 0 Call RefreshBeli Call SUMBeli CmbKodeBr.Text & "'.Recordset("iKodeBr") Nonota = Adodc1.Enabled = False End Sub 11. Event Click Private Sub CmdHapus_Click() Dim KodeBr.'" & TxtTgl.Execute (StrSQL) Call RefreshBeli Call SUMBeli CmdOK.Text = 0 TxtStok.id- .Modul Pemrograman Komputer 2 –Teknik Informatika.SetFocus CmbKodeBr. Event Click (ketika diklik) Private Sub CmdTutup_Click() Unload Me End Sub STMIK AMIKOM YOGYAKARTA –www.Execute (StrSQL) MsgBox "Data transaksi sudah terekam". KodeCus.

49 File Form Fungsi Desain Form 5 6 7 1 2 : FrmDataTransaksi.ac.id- .amikom.frm : Form melihat Transaksi (No Nota) dan apa barang yang dibeli 3 4 9 8 No Nama Object Form Properti Name Caption Name Caption Name Caption Name Caption Name Caption Name AllowAddnew AllowArrows AllowDelete AllowUpdate Name AllowAddnew AllowArrows AllowDelete AllowUpdate Name Caption Name Caption Name Caption Font Nilai FrmDataTransaksi Form Data Transaksi Dan Detail Transaksi Frame1 Data Transaksi Frame1 Detail Barang Yang dibeli Adodc1 No Nota Adodc2 Detail Penjualan DataGrid1 False True False False DataGrid2 False True False False CmdDelete Delete Transaksi CmdTutup &Tutup LblTotalHarga (dikosongkan) Bold 1 2 3 4 Frame Frame Adodc Adodc DataGrid 5 DataGrid 6 CommandButton CommandButton Label 7 8 9 STMIK AMIKOM YOGYAKARTA –www.Modul Pemrograman Komputer 2 –Teknik Informatika.

Recordset("Nonota") Call RefreshDetail(Nonota) StrSQL = "SELECT SUM(iTotal) As TotalHarga FROM item WHERE iNonota='" & Nonota & "'" Set Rs = Conn.yyyy" End Sub Sub RefreshDetail(DataDetail As String) Call Konek Adodc2. ByVal LastCol As Integer) Dim Nonota As String Nonota = Adodc1. Event RowColChange (Baris dan kolom pada grid berubah) Private Sub DataGrid1_RowColChange(LastRow As Variant. NamaBr As [Nama Barang] .Modul Pemrograman Komputer 2 –Teknik Informatika.iKodeBr AND iNonota='" & DataDetail & "'" Else Adodc2.NumberFormat = "dd .com Sub RefreshTransaksi() Call Konek Adodc1.ac. Event Click (Ketika diclick) Private Sub CmdDelete_Click() Dim pesan As Integer Dim Nonota As String Nonota = Adodc1.amikom.Columns(2). HargaBr As Harga.id- .Caption = "Total Harga : " & Rs("TotalHarga") End Sub 4.KodeBr=item.Refresh Set DataGrid1.RecordSource = "SELECT iKodeBr As Kode.DataSource = Adodc2 End Sub 2. vbQuestion + vbYesNo.RecordSource = "SELECT iKodeBr As Kode. item WHERE stok.KodeBr=item. HargaBr As Harga.RecordSource = "SELECT * FROM transaksi" Adodc1. item WHERE stok.Execute(StrSQL) LblTotalHarga. NamaBr As [Nama Barang] .ConnectionString = StrConnect Adodc1. iNonota As [No Nota] FROM stok.50 Kode Program 1.ConnectionString = StrConnect If DataDetail <> "" Then Adodc2.Refresh Set DataGrid2.mmm . Komponen CmdDelete. "Konfirmasi") If pesan = 6 Then StrSQL = "DELETE FROM transaksi WHERE Nonota='" & Nonota & "'" STMIK AMIKOM YOGYAKARTA –www.Recordset("Nonota") pesan = MsgBox("Apakah Anda yakin akan menghapus". Komponen Form. General. iJumlah As Jumlah.iKodeBr" End If Adodc2. Event Load (Ketika dipanggil/ diLoad) Private Sub Form_Load() Call RefreshTransaksi Call RefreshDetail("") End Sub 3.DataSource = Adodc1 DataGrid1. Declarations 'Nama : Andi Sunyoto 'Last Modify : 07/07/2003 16:05 WIB 'Email : myandisun@yahoo. iNonota As [No Nota] FROM stok. iJumlah As Jumlah. Komponen DataGrid1.

id- .frm : Menampilkan data tentang program dan programmer Dari Menu Toolbar seperti gambar (1) dibawah Pilih Form – About Dialog – Open.amikom.Execute StrSQL Call RefreshTransaksi StrSQL = "DELETE FROM item WHERE iNonota='" & Nonota & "'" Conn. Komponen CmdTutup. 1 2 Dari langkah langkah diatas kemudian Anda Modifikasi Labelnya menjadi seperti gambar dibawah.Execute StrSQL Call RefreshDetail("") End If End Sub 5. Untuk Kode program yang terbentuk secara otomatis di biarkan saja.Modul Pemrograman Komputer 2 –Teknik Informatika. Event Click Private Sub CmdTutup_Click() Unload Me End Sub File Form Fungsi Desain Form : FrmAbout.ac. STMIK AMIKOM YOGYAKARTA –www.51 Conn.

Pada select or enter database name isikan Nama database yang telah dibuat yaitu penjualan. jika sudah muncul pesan Success berarti database sudah terhubung.amikom. Pilih menu Project .id- .mdb 4. kemudian terbentuk Command1 6. Membuat Data Sumber Untuk Laporan (Data Environment) 1. STMIK AMIKOM YOGYAKARTA –www. 5.Dsr dan DataReport1. Klick kanan pada Connection1 – Properties – Microsoft Jet 4.Add Command.0 OLEDB Provider – Next 3. Klik Apply dan OK.More ActiveX Designers – Data Environment 2.Modul Pemrograman Komputer 2 –Teknik Informatika.ac. Klik kanan pada Connection1 .Dsr : Membuat laporan (Report) Berikut langkah-langkah membuat laporan Stok barang. Klik tombol Test Connection. A. SELECT * FROM stok berarti menampilkan seluruh data stok barang. Klik kana pada Command1. kemudian setting seperti gambar dibawah.52 Membuat Laporan/ Report File Form Fungsi : DataEnvironment1.

ac. Pilih menu Project – Add Data Report 2.Modul Pemrograman Komputer 2 –Teknik Informatika. STMIK AMIKOM YOGYAKARTA –www.Dsr B.53 7.amikom. Simpan dengan nama DataEnvironment1. Anda tata pada gambar 1 di bagian Page 1 2 4.id- . Silakan Anda lihat gambar dibawah. Header. Membuat Desain Laporan (Data Report) Langlah: 1. Anda desain seperti gambar dibawah. Anda Drag Drop Command1 ke area Data Report bagian Detail (Section1) 3. setelah seperti gambar dibawah berarti desain laporan Anda selesai.

Simpan desain laporan yang telah dibuat dengan nama DataReport1.id- .amikom.54 1 5.Modul Pemrograman Komputer 2 –Teknik Informatika.ac.Dsr No Nama Object DataReport Properti Name Caption DataSource DataMember Name Caption DataRepot1 Nilai Laporan Data Stok DataEnvironmen1 Command1 Label5 LAPORAN DATA STOK BARANG 1 RptLabel Hasil Running DataReport1 STMIK AMIKOM YOGYAKARTA –www.

Modul Pemrograman Komputer 2 –Teknik Informatika. Klik pada toolbar.amikom. 2.ac. Myandisun Co. Size:24 Image1 C:\Program Files\Microsoft Visual Studio\Common\Graphics\Metafile\Business\3DLRSIGN. STMIK AMIKOM YOGYAKARTA –www.WMF True Label2 PT.55 File Form Fungsi Desain Form : FrmUtama. Size:24 1 Label Image 2 Label 3 Desain Menu Membuat Menu Utama 1.frm : Membuat Form dan Menu Utama yang menyatukan seluruh form 1 2 3 No Nama Object Form Properti Name Caption Name Caption Font Name Picture Strecth Name Caption Font Nilai FrmPassword Password Label1 Aplikasi Penjualan Barang Style: Bold.Ltd Style: Bold.id- . Susun Menu sebagai berikut.

ac. Contoh Kita membuat menu Input Stok Barang pertama anda klik pana ke kanan. Event Click Private Sub MnInputStok_Click() FrmInputStok. Komponen MnInputStok. Event Load Private Sub Form_Load() Call Konek End Sub 2.56 1 3 5 7 9 2 4 6 8 10 Untuk membuat Level pada menu gunakan panah yang telah disediakan.Modul Pemrograman Komputer 2 –Teknik Informatika.amikom.id- . Komponen Form. Maka dia akan terbentuk Level ke 2 dengan tanda … No 1 2 3 4 5 6 7 8 9 10 Caption File &Master Input &Stok Barang Input &Customer &Transaksi Penjualan Data Transaksi &Laporan Laporan Data Barang &About &Exit Name MnMaster MnInputStok MnInputCus MnTransaksi MnPenjualan MnDataTransaksi MnLaporan MnLapDataBarang MnAbout MnExit 1 2 2 1 2 2 1 2 1 1 Level Shortcut Ctrl+S Ctrl+C Ctrl+P Ctrl+T Ctrl+L Kode Program 1.Show End Sub STMIK AMIKOM YOGYAKARTA –www.

Show End Sub 4.57 3. Komponen MnDataTransaksi. Komponen MnExit. vbQuestion + vbYesNo.Show End Sub 8.Close Unload Me End If End Sub STMIK AMIKOM YOGYAKARTA –www.ac.Modul Pemrograman Komputer 2 –Teknik Informatika. Event Click Private Sub MnDataTransaksi_Click() FrmDataTransaksi. Event Click Private Sub MnPenjualan_Click() FrmTransaksi. Event Click Private Sub MnAbout_Click() frmAbout. Komponen MnInputCus.id- . Komponen MnPenjualan. Event Click Private Sub MnLapDataBarang_Click() Dim de As DataEnvironment1 Set de = New DataEnvironment1 Set DataReport1.DataSource = de DataReport1. Komponen MnLapDataBarang.Show End Sub 6.Show End Sub 5. Event Click Private Sub MnInputCus_Click() FrmInputCustomer.Show End Sub 7. Komponen MnAbout. "Konfirmasi") If pesan = 6 Then Conn. Event Click Private Sub MnExit_Click() Dim pesan As Integer pesan = MsgBox("Anda yakin keluar ?".amikom.

Komponen CmdOK.ac. Komponen CmdBatal.SetFocus Else If TxtPassword. vbCritical + vbOKOnly.Modul Pemrograman Komputer 2 –Teknik Informatika.CenterScreen Label1 Password TxtPassword (dikosongkan) * CmdOk OK CmdBatal Batal 1 2 3 4 Kode Program 1.58 File Form Fungsi Desain Form : FrmPassword. Event Click Private Sub CmdBatal_Click() Unload Me End Sub STMIK AMIKOM YOGYAKARTA –www.frm : Untuk menjadi keamanan program dari orang yang tidak berhak 1 2 3 4 No Nama Object Form Label TextBox CommandButton CommandButton Properti Name Caption StartUpPosition Name Caption Name Text PasswordChar Name Caption Name Caption Nilai FrmPassword Password 2 .id- . vbExclamation + vbOKOnly. "Informasi" TxtPassword.Show Else MsgBox "Password Anda Salah".Text = "amikom" Then FrmUtama. "Information" TxtPassword. Event Click Private Sub cmdOK_Click() If TxtPassword.SetFocus End If End If End Sub 2.amikom.Text = "" Then MsgBox "Password belum diisi".

59 Langkah Terakhir Setelah semua Form telah dibuat set FrmPassword sebagai yang pertama dipanggil dalam Project. STMIK AMIKOM YOGYAKARTA –www.Modul Pemrograman Komputer 2 –Teknik Informatika. Karena jika pengamanan password hanya diberikan pada program aplikasinya maka data-data yang ada didalam database tetap dapat diakses oleh orang lain karena database-nya tidak diberi password.ac. Access juga diberi password. Anda pindah ke Tab Make Simpan program Anda. Dan Anda jalankan.amikom.id- . Note: Untuk mengamankan aplikasi yang telah dibuat sebaiknya aplikasi anda diberi password dan database yang dibuat di MS.

0 (OLEDB) A. dan Label dan setting seperti gambar dibawah: 2) Aktifkan Adodc1 3) Masukkan Properti pilih Use Connection String Build 4) Data Links Properties 5) Pilih Microsoft Jet 4. Microsoft ADO Data Control 6.60 MODUL TAMBAHAN (Cara Lain Membuat Aplikasi Basis data) 1) Panggil Visual Basic 2) Tambahkan komponen dari menu Project Component a. Microsoft DataGrid Control 6.id- .ac.Modul Pemrograman Komputer 2 –Teknik Informatika.0 OLE DB Provider Next STMIK AMIKOM YOGYAKARTA –www. Penanganan Dengan Konfigurasi Visual Setting Komponen Adodc 1) Pilih Komponen Adodc.0 (OLEDB) b.amikom. DataGrid.

61 6) Klick Databasenya.id- .Modul Pemrograman Komputer 2 –Teknik Informatika. jika tempat penyimpanan program dan database menjadi satu bisa langsung menuliskan nama file 7) Klik tombol Test Connection.ac.amikom. lihat pesan yang muncul (pesan dibawah Success) 8) OK -> Apply STMIK AMIKOM YOGYAKARTA –www. Pilih Database yang diinginkan.

amikom.Modul Pemrograman Komputer 2 –Teknik Informatika. Aktifkan Komponen DataGrid 2.62 9) Klik tombol OK 10) Properti RecordSource Klik 11) Command Type: adCmdText 12) Command Text (SQL) : SELECT * FROM stok 13) Apply -> OK Setting DataGrid 1. Setting Properti Data Source : Adodc1 3.id- . Silakan Program Anda di Running/ dijalankan (Tekan F5) STMIK AMIKOM YOGYAKARTA –www.ac.

ac.63 STMIK AMIKOM YOGYAKARTA –www.Modul Pemrograman Komputer 2 –Teknik Informatika.amikom.id- .

Path + "\penjualan.RecordSource = "SELECT * FROM stok" Set DataGrid1.64 B.id- .DataSource = Adodc1 End Sub 4) Jalankan Program Anda STMIK AMIKOM YOGYAKARTA –www.mdb.ac.0. Penanganan Dengan Kode Program Keuntungan Bisa diubah saat RunTime 1) Pilih Komponen Seperti dibawah Setting: 2) Masuk Ke Code Editor 3) Pilih Komponen Form Event Load Private Sub Form_Load() Dim StrKonek As String StrKonek = "Provider=Microsoft.4.amikom." Adodc1.OLEDB.Jet.Modul Pemrograman Komputer 2 –Teknik Informatika.Data Source=" + App.ConnectionString = StrKonek Adodc1.

Modul Pemrograman Komputer 2 –Teknik Informatika.amikom.id- . Biasanya yang programmer VB menggunakan Cara dengan source code (cara B).65 Catatan: 1.ac. 2. Silakan Bandingkan Contoh diatas. STMIK AMIKOM YOGYAKARTA –www. kita bisa merubah action program di saat RunTime (ketika dijalankan). 3. Keuntungan Cara B.