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.32 Anda ulangi langkah diatas untuk membuat tabel-tabel di bawah ini. 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. Ketika barang dibeli maka jumlah barang pada stok akan berkurang.Modul Pemrograman Komputer 2 –Teknik Informatika.amikom.ac.id- . 2. Nonota disimpan dalam tabel Transaksi. sedangkan data barang yang dibeli disimpan dalam tabel Item.

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

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

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

Modul Pemrograman Komputer 2 –Teknik Informatika.ac.frm : Form untuk mengolah data Stok Barang (Insert.36 File Form Fungsi Desain Form 6 7 8 9 11 10 : FrmInputStok. Delete.amikom.id- . Update. 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.

Enabled = False CmdSimpan.Refresh LblJumlah.Enabled = stat TxtHargaBr.RecordSource = "SELECT * FROM stok" Adodc1.Enabled = False CmdHapus.amikom.Modul Pemrograman Komputer 2 –Teknik Informatika.Recordset. Declaration 'Nama : Andi Sunyoto 'Last Modify : 07/07/2003 16:05 WIB 'Email : myandisun@yahoo.RecordCount Set DataGrid1. General.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.Enabled = stat TxtJumlahBr.com Sub RefreshTampilan() Call Konek Adodc1.id- . Komponen Form.Enabled = stat End Sub 2.Enabled = False STMIK AMIKOM YOGYAKARTA –www.ConnectionString = StrConnect Adodc1.Caption = "Jumlah Data : " & Adodc1. Event Load (Ketika dipanggil/ diLoad) Private Sub Form_Load() Call TxtKeadaan(False) Call RefreshTampilan CmdEdit.DataSource = Adodc1 End Sub Sub TxtKeadaan(stat As Boolean) TxtNamaBr.ac.

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

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

ac. Update. 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.id- .frm : Form untuk mengolah data Pembeli(Insert.Modul Pemrograman Komputer 2 –Teknik Informatika.40 File Form Fungsi Desain Form 5 : FrmInputCustomer. Delete.amikom.

Enabled = False CmdSimpan. Komponen Form.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.ConnectionString = StrConnect Adodc1.RecordSource = "SELECT * FROM customer" Adodc1.com Sub RefreshTampilan() Call Konek Adodc1. Declarations 'Nama : Andi Sunyoto 'Last Modify : 07/07/2003 16:05 WIB 'Email : myandisun@yahoo.Caption = "Jumlah Data : " & Adodc1.Enabled = stat TxtAlamatCus.Refresh LblJumlah.Recordset.amikom.Enabled = False CmdUpdate.Enabled = stat End Sub 2.RecordCount Set DataGrid1.Enabled = False TxtKodeCus. Event Load (Ketika dipanggil/ diLoad) Private Sub Form_Load() Call TxtKeadaan(False) Call RefreshTampilan CmdEdit.Modul Pemrograman Komputer 2 –Teknik Informatika.TabIndex = 0 End Sub STMIK AMIKOM YOGYAKARTA –www.Enabled = False CmdHapus.id- . General.ac.DataSource = Adodc1 End Sub Sub TxtKeadaan(stat As Boolean) TxtNamaCus.

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

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

ac.44 File Form Fungsi Desain Form : FrmTransaksi.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.Modul Pemrograman Komputer 2 –Teknik Informatika.id- .amikom.

item WHERE stok.RecordSource = "SELECT iKodeBr. iTotal.iKodeBr AND iNonota='" & TxtNoNota.Modul Pemrograman Komputer 2 –Teknik Informatika. Declarations 'Nama : Andi Sunyoto 'Last Modify : 07/07/2003 16:05 WIB 'Email : myandisun@yahoo.Text & "'" Adodc1. iNonota FROM stok. HargaBr.Execute(StrSQL) STMIK AMIKOM YOGYAKARTA –www.DataSource = Adodc1 End Sub Sub SUMBeli() StrSQL = "SELECT SUM(iTotal) As TotalHarga FROM item WHERE iNonota='" & TxtNoNota.amikom. General. iJumlah.KodeBr=item.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. NamaBr.id- .ConnectionString = StrConnect Adodc1.com Sub RefreshBeli() Call Konek Adodc1.Refresh Set DataGrid1.Text & "'" Set Rs = Conn.ac.

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

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

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

49 File Form Fungsi Desain Form 5 6 7 1 2 : FrmDataTransaksi.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.ac.amikom.id- .Modul Pemrograman Komputer 2 –Teknik Informatika.

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

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

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

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

54 1 5.amikom.Modul Pemrograman Komputer 2 –Teknik Informatika.ac. Simpan desain laporan yang telah dibuat dengan nama DataReport1.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.id- .

Myandisun Co.amikom. STMIK AMIKOM YOGYAKARTA –www. Size:24 Image1 C:\Program Files\Microsoft Visual Studio\Common\Graphics\Metafile\Business\3DLRSIGN.ac.Ltd Style: Bold.id- . 2.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.WMF True Label2 PT. Susun Menu sebagai berikut.Modul Pemrograman Komputer 2 –Teknik Informatika.55 File Form Fungsi Desain Form : FrmUtama. Klik pada toolbar. Size:24 1 Label Image 2 Label 3 Desain Menu Membuat Menu Utama 1.

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. Event Load Private Sub Form_Load() Call Konek End Sub 2.ac. Contoh Kita membuat menu Input Stok Barang pertama anda klik pana ke kanan.56 1 3 5 7 9 2 4 6 8 10 Untuk membuat Level pada menu gunakan panah yang telah disediakan. Komponen MnInputStok.id- . Komponen Form.Modul Pemrograman Komputer 2 –Teknik Informatika.amikom. Event Click Private Sub MnInputStok_Click() FrmInputStok.Show End Sub STMIK AMIKOM YOGYAKARTA –www.

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

Event Click Private Sub cmdOK_Click() If TxtPassword.Text = "amikom" Then FrmUtama. "Informasi" TxtPassword.Modul Pemrograman Komputer 2 –Teknik Informatika. Komponen CmdOK.id- .Show Else MsgBox "Password Anda Salah". vbCritical + vbOKOnly.SetFocus Else If TxtPassword. vbExclamation + vbOKOnly.ac.amikom.Text = "" Then MsgBox "Password belum diisi".58 File Form Fungsi Desain Form : FrmPassword.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 . Event Click Private Sub CmdBatal_Click() Unload Me End Sub STMIK AMIKOM YOGYAKARTA –www. "Information" TxtPassword. Komponen CmdBatal.SetFocus End If End If End Sub 2.CenterScreen Label1 Password TxtPassword (dikosongkan) * CmdOk OK CmdBatal Batal 1 2 3 4 Kode Program 1.

Dan Anda jalankan. Note: Untuk mengamankan aplikasi yang telah dibuat sebaiknya aplikasi anda diberi password dan database yang dibuat di MS. STMIK AMIKOM YOGYAKARTA –www. Anda pindah ke Tab Make Simpan program Anda.id- .amikom.ac.59 Langkah Terakhir Setelah semua Form telah dibuat set FrmPassword sebagai yang pertama dipanggil dalam Project. 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. Access juga diberi password.Modul Pemrograman Komputer 2 –Teknik Informatika.

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.id- .ac.0 OLE DB Provider Next STMIK AMIKOM YOGYAKARTA –www.0 (OLEDB) b.0 (OLEDB) A.Modul Pemrograman Komputer 2 –Teknik Informatika. Microsoft DataGrid Control 6.amikom. Penanganan Dengan Konfigurasi Visual Setting Komponen Adodc 1) Pilih Komponen Adodc. DataGrid. 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.

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

Silakan Program Anda di Running/ dijalankan (Tekan F5) STMIK AMIKOM YOGYAKARTA –www.amikom. Aktifkan Komponen DataGrid 2.ac.id- .Modul Pemrograman Komputer 2 –Teknik Informatika. Setting Properti Data Source : Adodc1 3.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.

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

DataSource = Adodc1 End Sub 4) Jalankan Program Anda STMIK AMIKOM YOGYAKARTA –www.RecordSource = "SELECT * FROM stok" Set DataGrid1.OLEDB.Data Source=" + App.Path + "\penjualan.4.ConnectionString = StrKonek Adodc1.amikom.64 B.mdb.id- .Modul Pemrograman Komputer 2 –Teknik Informatika.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.Jet." Adodc1.

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

Sign up to vote on this title
UsefulNot useful