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-

id- . Nonota disimpan dalam tabel Transaksi. sedangkan data barang yang dibeli disimpan dalam tabel Item. 2. STMIK AMIKOM YOGYAKARTA –www.amikom. Ketika barang dibeli maka jumlah barang pada stok akan berkurang.ac.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.Modul Pemrograman Komputer 2 –Teknik Informatika.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0 (OLEDB) A.amikom. 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.id- . Microsoft ADO Data Control 6. Microsoft DataGrid Control 6.Modul Pemrograman Komputer 2 –Teknik Informatika.0 (OLEDB) b.ac. DataGrid.60 MODUL TAMBAHAN (Cara Lain Membuat Aplikasi Basis data) 1) Panggil Visual Basic 2) Tambahkan komponen dari menu Project Component a.0 OLE DB Provider Next STMIK AMIKOM YOGYAKARTA –www. Penanganan Dengan Konfigurasi Visual Setting Komponen Adodc 1) Pilih Komponen Adodc.

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

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

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

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

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

Sign up to vote on this title
UsefulNot useful