SlideShare a Scribd company logo
1 of 51
Download to read offline
Diktat VB.Net Lanjutan

Hadi Santoso

Kata Pengantar

Diktat ini disusun dengan tujuan mempermudah mahasiswa dalam perkuliahan VB.NET Lanjutan
menggunakan VB.Net (Visual Studio 2008).
Diktat ini berisi gambaran singkat tentang proses pembuatan sistem penjualan kacamata (optik)
berbasis VB.Net (Visual Studio 2008) Object Oriented Programming dengan menggunakan database
Access 2007. Matakuliah ini merupakan lanjutan dari Matakuliah Implementasi Sistem Informasi
Akuntansi. Pada matakuliah ini saya hanya membahas salah satu sistem informasi dari berbagai macam
sistem informasi yang dibahas pada matakuliah sistem informasi akuntansi, yaitu Sistem Informasi
Penjualan kacamata (optik). Sesuai dengan materi perkuliahan mahasiswa akan diajarkan bagaimana
membuat sistem informasi sederhana dengan bahasa pemrograman VB.Net (Visual Studio 2008)
berdasarkan Object Oriented Programming, yaitu Sistem Informasi Penjualan Tunai dan sekaligus akan
berguna sekali sebagai pedoman ketika akan membuat sebuah KKP(Kuliah Kerja Praktek)/Tugas Akhir
(Project Akhir).
Demikian sepatah kata pengantar dari saya. Semoga diktat ini bermanfaat bagi kita semua. Info
lanjut hub. 081367436682 (hds4n@yahoo.co.id)

Hormat Saya

Penulis

Halaman 1 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Referensi
1. www.msdn.microsoft.com
2. www.planetsourcecode.com
3. www.codeproject.com
4. www.aspnet.com
5. www. a1vbcode.com
6. Step By Step Menjadi Programmer Handal Dengan VB.Net, Junindar

Halaman 2 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

1. ANALISA SISTEM
Untuk merancang sebuah sistem yang baik dan sesuai dengan hasil yang diharapkan, maka
terlebih dahulu harus diperoleh data atau informasi tentang sistem yang berjalan. Karena dari
informasi tersebut, dapat diketahui sejauh mana sistem yang berjalan sekarang, apakah dapat
memenuhi kebutuhan dan kebutuhan apa saja yang ingin dicapai tetapi belum bisa ditangani oleh
sistem yang sedang berjalan.
Analisa sistem informasi akan membantu dalam mengetahui informasi – informasi tentang
sistem yang sedang berjalan. Sehingga dengan analisa sistem, diharapkan bisa diketahui sejauh
mana kebutuhan yang telah ditangani oleh sistem yang berjalan dan bagaimana agar kebutuhankebutuhan yang belum bisa terpenuhi dapat diberikan solusinya dan diterapkan dalam tahap
perancangan sistem.
2. URAIAN PROSEDUR
Langkah dalam membuat urutan prosedur mengacu pada prosedur yang ada dalam sistem
pembelian barang, yaitu sebagai berikut :
a. Pemesanan
Staff Optik Penjualan menerima pesanan dari pelanggan kemudian staff optik penjualan
membuat nota pesanan untuk diserahkan kepada pelanggan lalu pelanggan membayar DP atau
uang muka.
b. Pembayaran
Nota pesanan yang diberikan kepada pelanggan digunakan untuk mengambil pesanan. Setelah
pelanggan mendapatkan barang yang dipesan, selanjutnya staff optik penjualan membuat
kwitansi yang akan diberikan kepada pelanggan sebagai bukti sisa pelunasan pembayaran lalu
pelanggan melakukan pelunasan sisa pembayaran.
c. Pembuatan Laporan
Staff Optik Penjualan membuat laporan periode untuk diberikan kepada pimpinan setiap periode.
3. Analisa Proses
a. Activity Diagram Transaksi

Halaman 3 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

b. Activity Diagram Pembayaran Pelunasan

Pelanggan

Serahkan nota pesanan

Terima Barang

Staff Optik Penjualan

Terima nota pesanan

Siapkan Barang

Lakukan pelunasan pembayaran

Terima pelunasan pembayaran

Terima kwitansi

Buat kwitansi

c. Activity Diagram Pembuatan Laporan

Halaman 4 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

4. Analisa Terapan Akuntansi
Rancangan Sistem Akuntansi dimodelkan sebagai berikut :
Kwitansi
No. Kwitansi

Nota Pesanan
No NP
: NP0001
Tanggal
: 13-09-2007
Jumlah
: Rp. 110,000
DP
: Rp. 50,000

: KW0001

Sudah diterima dari : Tn. Heri
Untuk Pembayaran : 1 pcs lensa dan frame
Sejumlah

: Rp. 60,000
Pangkalpinang, 03 - 03- 2010
(

.. )

JURNAL PENERIMAAN KAS
No.Bukti

Tanggal

Kas

Debet
Kredit
Pendapatan
Pendapatan
Diterima dimuka Diterima dimuka Penjualan

NP0001 13-09-2007

50,000

-

50,000

-

15-09-2007

60,000

50,000

-

110,000

110,000

50,000

50,000

110,000

KW001

Kas
Tanggal

Keterangan

13-09-2007 Jurnal Penerimaan Kas

No. Bukti

No Rek : 11001
Kredit
Saldo

Debet

NP0001

50,000

50,000

15-09-2007 Jurnal Penerimaan Kas KW0001

60,000

60,000

Pendapatan Diterima Dimuka
Tanggal
13-09-2007
15-09-2007
Penjualan
Tanggal
15-09-2007

Keterangan
Jurnal Pend. Diterima
dimuka
Jurnal Pend. Diterima
dimuka

No. Bukti

No Rek : 21001
Kredit
Saldo

Debet

50,000

NP0001
KW0001

Keterangan

No. Bukti

Debet

Jurnal Penjualan

KW0001

50,000

50,000

50,000
No Rek : 41001
Kredit
Saldo
110,000

110,000

Jurnal Umum
Debet

No. Bukti

Tanggal

No. Rekening

NP0001
NP0001

13-09-2007
13-09-2007

11001
21001

Kas
Pend. Diterima Dimuka

KW0001
KW0001
KW0001

15-09-2007
15-09-2007
15-09-2007

11001
21001
41001

Kas
Pend. Diterima Dimuka
Penjualan

Kredit

50,000

60,000

Nama Rekening

Jumlah

50,000

50,000
110,000
160,000

160,000

Halaman 5 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

5. Struktur Bagan Rekening
Pemberian kode rekening menggunakan metode kode kelompok dengan sifat-sifat sebagai
berikut :
a. Posisi masing-masing angka mempunyai arti dimana angka paling kiri adalah kode kelompok dan
angka paling kanan adalah kode jenis rekening.
b. Kode kelompok akan terdiri dari angka-angka yang sudah diperkirakan terlebih dahulu.
c. Setiap kode dalam klasifikasi menggunakan jumlah angka yang sama.
d. Jika terjadi penambahan kelompok rekening, dapat dilakukan dengan merubah angka yang
paling kiri.
Berikut ini adalah penjabaran klasifikasi pemberian kode dengan menggunakan kode kelompok
yang terdiri dari 5 angka :
1
1
0
0
1

Kelompok rekening
Golongan rekening
Jenis rekening
Perluasan jenis rekening

Kode kelompok dapat pula digunakan untuk menunjukkan hirarki data. Rincian susunan dan
kode rekening yang dirancang dengan menggunakan kode kelompok :
Nomor Perkiraan
11001
21001
41001

Nama Perkiraan
Kas
Pend. diterima dimuka
Penjualan

6. Identifikasi Kebutuhan
Rangkuman hasil analisa dalam bentuk uraian masalah yang berkaitan dengan pengelolaan
sumber daya kebutuhan sistem-sistem perbaikan yang diinginkan dan segala sesuatu yang berkaitan
dengan pelayanan yang diberikan sistem ke pengguna. Kebutuhan-kebutuhan yang diuraikan adalah
kebutuhan yang ingin dicapai apabila rancangan sistem ini diimplementasikan.
1. Kebutuhan
Masalah
Usulan

: Entry Data Pelanggan
: Tidak adanya informasi yang jelas tentang biodata pelanggan yang menjadi
langganan.
: Disediakannya informasi dalam bentuk data pelanggan yang berisi mengenai
biodata pelanggan yang menjadi langganan.

Halaman 6 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

2. Kebutuhan
Masalah
Usulan

: Entry Data Barang
: Tidak adanya informasi yang jelas tentang data barang yang ada.
: Disediakannya informasi dalam bentuk data barang yang berisi mengenai data
barang yang tersedia.

3. Kebutuhan
Masalah

: Entry Data Rekening
: Tidak adanya pencatatan data rekening akumulasi yang dipakai dalam
pembuatan laporan keuangan yang dapat memudahkan dalam penyusunan.
: rekening yang sering digunakan dalam membuat laporan-laporan keuangan.

Usulan
4. Kebutuhan
Masalah
Usulan
6. Kebutuhan
Masalah
Usulan

: Cetak Nota Pesanan
: Kurang lengkapnya informasi yang terdapat pada nota pesanan pada sistem
yang berjalan.
: Dibuat sebuah proses yang dapat menghasilkan dokumen tersebut.
: Cetak Kwitansi
: Karena informasi dalam pencatatan kwitansi masih dilakukan secara tertulis,
sehingga sering terjadi kesalahan dalam penulisan.
: Ditambahkan informasi yang diperlukan pada faktur.

7. Kebutuhan
Masalah
Usulan

: Laporan Penjualan
: Belum memiliki laporan penjualan.
: Disediakannya informasi berupa laporan mengenai penjualan barang sehingga
dapat diketahui dengan akurat.

8. Kebutuhan
Masalah
Usulan

: Laporan Jurnal Penerimaan Kas
: Belum memiliki laporan jurnal penerimaan kas.
: Disediakannya informasi berupa laporan jurnal penerimaan kas sehingga
transaksi mengalirnya kas dapat diketahui dengan akurat.

10. Kebutuhan
Masalah
Usulan

: Laporan Jurnal Umum
: Belum memiliki laporan jurnal Umum.
: Disediakannya informasi berupa laporan jurnal umum sehingga dapat diketahui
dengan akurat.

7. Package Diagram
Rancangan kebutuhan sistem digambarkan sebagai berikut :

Halaman 7 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

8. Use Case Diagram
a. Use Case Diagram File Master

b. Use Case Diagram Transaksi

c. Use Case Diagram Laporan

Halaman 8 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

9. Use Case Description
Berikut ini adalah deskripsi dari masing-masing Use Case yang digambarkan diatas :
a. Package Diagram File Master
1) Data Barang
Use Case
Actor
Deskripsi
•
•
•
•
•
•
•
•

: Entry Data Pelanggan
: Staff Optik Penjualan
:
staff optik penjualan buka form entry data-data pelanggan.
kd_plg sudah otomatis dalam sistem.
staff optik penjualan menginput nm_plg,alamat dan telepon.
staff optik penjualan menekan tombol “SIMPAN” data pelanggan kedalam file
pelanggan.
Tombol “UBAH” digunakan untuk mengubah data pelanggan.
Tombol “HAPUS” digunakan untuk menghapus data pelanggan.
Tombol “BATAL” digunakan apabila tidak jadi mengentry data pelanggan.
Tombol “TUTUP” digunakan untuk menutup layar data pelanggan.

2) Data Barang
Use Case
Actor
Deskripsi
•
•
•
•
•
•
•
•

: Entry Data Barang
: Staff Optik Penjualan
:
staff optik penjualan buka form entry data-data barang.
staff optik penjualan menginput kd_plg, satuan, jenis barang, dan harsat.
nm_plg sudah otomatis dalam sistem.
staff optik penjualan menekan tombol “SIMPAN” data pelanggan kedalam file
pelanggan.
Tombol “UBAH” digunakan untuk mengubah data pelanggan.
Tombol “HAPUS” digunakan untuk menghapus data pelanggan.
Tombol “BATAL” digunakan apabila tidak jadi mengentry data pelanggan.
Tombol “TUTUP” digunakan untuk menutup layar data pelanggan.

3) Data Rekening
Use Case
Actor
Deskripsi
•
•
•
•
•
•
•

: Entry Data Rekening
: Staff Optik Penjualan
:
staff optik penjualan menginput data_data rekening yang berisi no_rek, dan
nm_rek.
no_rek, nm_rek, disimpan kedalam file rekening.
Tombol “SIMPAN” data pelanggan kedalam file pelanggan.
Tombol “UBAH” digunakan untuk mengubah data pelanggan.
Tombol “HAPUS” digunakan untuk menghapus data pelanggan.
Tombol “BATAL” digunakan apabila tidak jadi mengentry data pelanggan.
Tombol “TUTUP” digunakan untuk menutup layar data pelanggan.

Halaman 9 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

b. Package Diagram File Transaksi
1) Cetak Nota Pesan
Use Case
Actor
Deskripsi
•
•

: Cetak Nota Pesanan
: Staff Optik Penjualan
:
staff optik membuka form cetak nota pesanan.
staff optik menekan tombol cetak untuk mencetak data nota pesanan yang
sudah disimpan kedalam file nota pesanan.

<< include >>
Entry Nota Pesan
Use Case
Actor
Deskripsi
•
•
•
•
•
•
•
•
•
•
•
•

: Entry Nota Pesan
: Staff Optik Penjualan, pelanggan.
:
Staff optik penjualan buka form cetak nota pesan
Nomer nota pesan dan tanggal nota pesan sudah otomatis dalam sistem
Staff optik penjualan menginput kode pelanggan maka akan tampil data
pelanggan
Staff optik penjualan menginput kode barang lalu akan tampil data barang
Lalu menginput jumlah pesan, sistem akan mengitung otomatis jumlah barang
yang pesan berdasarkan perhitungan harga satuan * jumlah pesan
Staff optik menginput jenis lensa yang berupa R, L, CLYR, CLYL, AXISR, AXISL,
ADD, PD
staff optik penjualan memilih tanggal selesai pesanan lalu menekan tombol
“PESAN” untuk memasukan data barang kedalam tabel
Sistem akan menghitung total berdasarkan perhitungan penjumlahan dari
semua jumlah.
Staff optik penjualan menginput dp yang diberikan oleh pelanggan lalu sistem
akan menghitung sisa pembayaran berdasarkan perhitungan total – dp.
Tombol “SIMPAN” data pelanggan kedalam file pelanggan.
Tombol “BATAL” digunakan apabila tidak jadi mengentry data pelanggan.
Tombol “TUTUP” digunakan untuk menutup layar data pelanggan.

2) Cetak kwitansi
Use Case
Actor
Deskripsi
•
•

: Cetak kwitansi
: Staff Optik Penjualan
:
staff optik membuka form cetak kwitansi.
staff optik menekan tombol cetak untuk mencetak data kwitansi yang sudah
disimpan kedalam file kwitansi.

<< include >>
Entry kwitansi
Use Case
Actor

: Entry kwitansi
: Staff Optik Penjualan, pelanggan.
Halaman 10 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Deskripsi
•
•
•
•
•
•
•

:
staff optik membuka form cetak kwitansi.
No kwitansi dan tgl kwitansi sudah otomatis dalam sistem.
Staff optik penjualan memilih nomer pesan yang sudah disimpan sebelumnya
maka akan tampil data nomer pesan dan data pelanggan.
Sistem akan menghitung sisa pembayaran berdasarkan perhitungan total – dp.
Tombol “SIMPAN” data pelanggan kedalam file pelanggan.
Tombol “BATAL” digunakan apabila tidak jadi mengentry data pelanggan.
Tombol “TUTUP” digunakan untuk menutup layar data pelanggan.

c. Package Diagram Cetak Laporan
1) Cetak Laporan Penjualan
Use Case
Actor
Deskripsi
•
•
•
•

: Cetak Laporan Penjualan
: Pimpinan, Staff Optik Penjualan
:
Staff optik membuka form cetak laporan penjualan.
Staff optik penjualan memasukkan tanggal awal dan tanggal akhir pada
periode.
Staff optik penjualan mengkilk tombol “CETAK” untuk mencetak laporan
penjualan.
Staff optik penjualan mengkilk tombol “TUTUP” untuk menutup layar laporan
penjualan.

2) Cetak Laporan Jurnal Umum
Use Case
Actor
Deskripsi
•
•
•
•

: Cetak Laporan Jurnal Umum
: Pimpinan, Staff Optik Penjualan.
:
Staff optik penjualan membukla form cetak laporan jurnal umum.
Staff optik penjualan memasukkan tanggal awal dan tanggal akhir pada
periode.
Staff optik penjualan mengkilk tombol “CETAK” untuk mencetak laporan
penjualan.
Staff optik penjualan mengkilk tombol “TUTUP” untuk menutup layar laporan
penjualan.

3) Cetak Laporan Jurnal Penerimaan Kas
Use Case
Actor
Deskripsi
•
•
•
•

: Cetak Laporan Jurnal Penerimaan Kas
: Pimpinan, staff optik penjualan.
:
Staff optik membuka form cetak laporan jurnal penerimaan kas.
Staff optik penjualan memasukkan tanggal awal dan tanggal akhir pada
periode.
Staff optik penjualan mengkilk tombol “CETAK” untuk mencetak laporan
penjualan.
Staff optik penjualan mengkilk tombol “TUTUP” untuk menutup layar laporan
penjualan.

Halaman 11 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

10. Rancangan Basis Data Class Diagram

Halaman 12 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

11. Rancangan Basis Data
a. Entity Relationship Diagram (ERD)

Halaman 13 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

b. Tranformasi ERD ke LRS

kd_ plg
nm _ plg
almt
tlp

no_ np
tgl _ masuk
tgl _ selesai
dp
keterangan

kd_plg
no_np

Pelanggan

1

dapat

M

Nota Pesanan
1

buat
no_ np
no _ kwt
1
Rekening
no_ rek
nm _ rek

N

Jurnal
no_ kwt
no _ rek
tgl _ jurnal
posisi
jumlah

M

M

pesan
no_ np
kd _ brg
jml_psn
hrg
CLYR
CLYL
MTR
MTL
AXISL

N

Barang
kd_ brg
nm _ brg
harsat
jns_brg
satuan

AXISR

Kwitansi
no_ kwt
tgl _ kwt

ADD
PD

Halaman 14 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

c. Logical Record Structure (LRS)

Halaman 15 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

12. TABEL
TABEL PELANGGAN
No Nama Field
1
kd_plg
2
nm_plg
3
almt
4
telp

Tipe Data
Text
Text
Text
Text

Lebar
5
50
100
15

Desimal
-

Keterangan
Kode Pelanggan
Nama Pelanggan
Alamat Pelanggan
Telepon Pelanggan

TABEL BARANG
No Nama Field
1
kd_brg
2
nm_brg
3
har_Sat
4
jns_brg
5
Satuan

Tipe Data
Text
Text
Currency
Text
Text

Lebar
5
50
8
20
4

Desimal
-

Keterangan
Kode Barang
Nama Barang
Jumlah Barang
Jenis Barang
Harga satuan

TABEL NOTAPESANAN
No Nama Field
1
no_np
2
tgl_masuk
3
tgl_selesai
4
dp
5
Keterangan
6
kd_plg

Tipe Data
Text
Date/Time
Date/Time
Currency
Text
Text

Lebar
5
8
8
8
100
5

Desimal
-

Keterangan
Nomor Nota Pesanan
Tanggal masuk
Tanggal Selesai
Uang Muka
Keterangan
Kode Pelanggan

TABEL PESAN
No Nama Field
1
no_np
2
kd_brg
3
jml_psn
4
hrg
5
MTR
6
MTL
7
CLYR
8
CLYL
9
AXISR

Tipe Data
Text
Text
Number
Currency
Text
Text
Text
Text
Text

Lebar
5
5
2
8
3
3
3
3
3

Desimal
-

10

AXISL

Text

3

-

11
12

ADD
PD

Text
Text

3
3

-

Keterangan
Nomor Surat Pesanan
Kode Barang
Jumlah banyaknya
Harga Pesan
Mata kanan
Mata kiri
Silinder kanan
Silinder kiri
Sudut kelengkungan bola
mata kanan
Sudut kelengkungan bola
mata kiri
Penambahan baca
Jarak Pupil

Halaman 16 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

TABEL JURNAL
No Nama Field
1
no_kwt
2
no_rek
3
tgl_jurnal
4
posisi
5
jumlah

Tipe Data
Text
Text
Date/Time
Text
Currency

Lebar
5
5
8
1
8

Desimal
-

Keterangan
Nomor Bukti
Nomor Rekening
Tanggal Jurnal
Posisi D/K
Jumlah Saldo

TABEL KWITANSI
No Nama Field
1
no_kwt
2
tgl_kwt
3
no_np

Tipe Data
Text
Date/Time
Text

Lebar
5
8
5

Desimal
-

Keterangan
Nomor Kwitansi
Tanggal Kwitansi
Nomor Nota Pesanan

Desimal
-

Keterangan
Nomor Rekening
Nama Rekening

TABEL REKENING
No Nama Field
1
no_rek
2
nm_rek

Tipe Data
Text
Text

Lebar
5
30

13. STRUKTUR TAMPILAN

Halaman 17 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

14. MEMULAI VB.NET
a. Pilih Create Project… untuk membuat project baru.

b. Akan tampil jendela seperti gambar dibawah ini, kemudian isikan Name dengan prjoptik,
selanjutnya klik tombol
untuk menentukan lokasi penyimpanan aplikasi yang akan
dibuat dalam contoh ini saya simpan di Local disk D:

Halaman 18 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

c. Setelah itu buat folder baru dengan nama PJOTIKATMA dan klik tombol Select Folder (lihat
gambar dibawah ini).

d. Langkah selanjutnya klik tombol OK.

Halaman 19 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

15. MEMBUAT TABEL DENGAN MS. ACCESS 2007
a. Pilih Start -> All Programs -> Microsoft Office -> Microsoft Office Access 2007.
b. Klik/Pilih Blank Database.

c.

Akan tampil dipojok kanan bawah Blank Database, kemudian klik
put your database)

(Browse for a location to

Halaman 20 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

d. Kemudian pilih Folder Local Disk D:prjoptikprjoptikbindebug sebagai
penyimpanan database yang akan dibuat.
e. Selanjutnya isi File name dengan DBOPTIK (nama database) dan klik tombol OK.

f.

lokasi

Akan tampil jendela seperti dibawah ini dan File Name : DBOPTIK.accdb. Kemudian klik tombol
Create.

Halaman 21 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

g. Setelah di klik tombol Create akan tampil jendela seperti dibawah ini dan selanjutnya untuk

membuat Struktur table klik

atau pada Table1 : Table klik kanan pilih Design View

h. Kemudian akan tampil jendela Save As seperti gambar dibawah ini, selajutnya isi pada Table
Name : PELANGGAN, setelah selesai klik tombol OK.

Halaman 22 dari 51
Diktat VB.Net Lanjutan

i.

Hadi Santoso

Ketikkan pada Filed Name, Data Type dan Description sesuai dengan Tabel yang telah ada pada
halaman 16 dan 17 dst.

16. MEMBUAT MENU
Untuk membuat menu, pilih didalam toolbox

lalu

ketikkan

nama

menu

sesuai

dengan yang diinginkan

Atau bisa juga dengan mengetikkan menu pada properties text

Penggunaan tanda ”&” diantara nama menu, berfungsi agar menu dapat diakses menggunakan
keyboard dengan menekan tombol alt disertai dengan huruf yang bergaris bawah.
jika program sudah dijalankan, menu ini dapat diakses dengan menekan tombol
”alt dan m” secara bersamaan. Buatlah menu seperti gambar dibawah ini :

Halaman 23 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Halaman 24 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

ENTRY DATA BARANG
Form
Label
Group
Box1
TextBox
Label
ComboBox
Button
Group
Box2

TextBox
ListView
Halaman 25 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

OBJEK

NAME

TEXT

PROPERTIES YANG DIUBAH

Form1

frmBarang

ENTRY DATA BARANG

Label1
GroupBox1
Label2
Label3
Label4
Label5
Label6
Label7
Textbox1
Textbox2
Textbox3
Combobox1

Label1
Groupbox1
Label2
Label3
Label4
Label5
Label6
Label7
txtKdBrg
txtNmBrg
txtharSat
cmbjenis

ENTRY DATA BARANG
Kode Barang
Nama Barang
Harga Satuan
Rp.
Jenis Barang
Satuan
(kosong)
(kosong)
(kosong)
(kosong)

Textbox5
Textbox6
GroupBox2
Button2
Button3
Button4
Button5
Button6
ListView1

txtsatuan
counter
Groupbox2
cmdSimpan
cmdUbah
cmdHapus
cmdBatal
cmdKeluar
ListView1

(kosong)
0
SIMPAN
UBAH
HAPUS
BATAL
KELUAR
-

Font , Back Color, StartPosition =
CenterScreen
Font, Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Font , Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Item = Frame, Lensa
Font, Back Color
Font, Back Color
Font, Back Color
Font , Back Color
Font , Back Color
Font , Back Color
Font, Back Color
Font , Back Color
View = Details
Edit Column = Kode Barang, Nama
Barang, Harga Satuan, Jenis
Barang, Satuan

MEMBUAT MODULE
Untuk membuat Module, perlu menambahkan atribut baru berupa module pada project. Dengan cara:
Klik kanan pada Project di Solution Explorer, kemudian pilih Add, Add Module

Halaman 26 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Beri nama Module1.vb

Ketikan code untuk module:
Imports System.Data.Oledb
Imports System.Data
Module Module1
Public conn As New OleDbConnection
Public strconn As String = "Provider=Microsoft.ACE.OLEDB.12.0;data
source=" & Application.StartupPath & "dboptik.accdb"
End Module

MEMBUAT CLASS KONEKSI
Fungsi dari Class koneksi ini adalah untuk menghubungkan form dengan database. Caranya adalah : Klik
kanan pada Project di Solution Explorer, kemudian pilih Add, Class...

Halaman 27 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Ketikan code untuk Class Koneksi:
Imports System.Data.OleDb
Imports System.Data
Public Class Koneksi
Dim conn As New OleDbConnection
Public Function OpenConnection() As OleDbConnection
conn = New OleDbConnection(strconn)
If conn.State = ConnectionState.Closed Then
Try
conn.Open()
Catch mex As OleDbException
MsgBox("Koneksi ke Database Gagal", , "Error")
Catch ex As Exception
MsgBox(ex.Message)
End Try
End If
Return conn
End Function
End Class

Halaman 28 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

MEMBUAT CLASS BARANG
Untuk membuat Module, perlu menambahkan atribut baru berupa module pada project. Dengan cara:
Klik kanan pada Project di Solution Explorer, kemudian pilih Add, Class...

Ketikan code untuk Class Barang:
Imports System.Data.OleDb
Imports System.Data
Public Class Clsbarang
#Region "Variabel"
Private xkdbrg As String
Private xNmbrg As String
Halaman 29 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Private xharsat As Double
Private xjenis As String
Private xsatuan As String
Dim
Dim
Dim
Dim

sql As String = ""
mycmd As OleDbCommand
myread As OleDbDataReader
hasRows As Boolean

#End Region
#Region "Property"
Public Property kdbrg() As String
Get
Return xkdbrg
End Get
Set(ByVal value As String)
xkdbrg = value
End Set
End Property
Public Property nmbrg() As String
Get
Return xNmbrg
End Get
Set(ByVal value As String)
xNmbrg = value
End Set
End Property
Public Property harsat() As Double
Get
Return xharsat
End Get
Set(ByVal value As Double)
xharsat = value
End Set
End Property
Public Property jenis() As String
Get
Return xjenis
End Get
Set(ByVal value As String)
xjenis = value
End Set
End Property
Public Property satuan() As String
Get
Return xsatuan
End Get
Set(ByVal value As String)
xsatuan = value
End Set
Halaman 30 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

End Property
#End Region
#Region "Method"
Public Function simpan() As Integer
sql = "INSERT INTO Barang(kd_brg,Nm_brg,har_sat,jns_brg,satuan) " & _
"VALUES('" & xkdbrg & "','" & xNmbrg & "','" & xharsat & "','" &
xjenis & "','" & xsatuan & "')"
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
mycmd = New OleDbCommand(sql, conn)
Return mycmd.ExecuteNonQuery
End Function
Public Function hapus(ByVal varkdbrg As String) As Integer
sql = "DELETE FROM Barang WHERE kd_brg='" & varkdbrg & "'"
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
mycmd = New OleDbCommand(sql, conn)
Return mycmd.ExecuteNonQuery
End Function
Public Function ubah(ByVal varkdbrg As String) As Integer
sql = "UPDATE Barang SET Nm_brg ='" & xNmbrg & "'," & _
"Har_sat='" & xharsat & "', jns_brg = '" & xjenis & "'," & _
" satuan = '" & xsatuan & "'" & _
" WHERE kd_brg='" & varkdbrg & "'"
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
mycmd = New OleDbCommand(sql, conn)
Return mycmd.ExecuteNonQuery
End Function
#End Region
End Class

Halaman 31 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Ketikan code untuk Form Barang:
Imports System.Data.OleDb
Imports System.Data
Public Class FrmBarang
Dim obj As New Clsbarang
Dim mycmd As OleDbCommand
Dim myread As OleDbDataReader
Dim strTemp As String = ""
Dim strValue As String = ""
Dim sql As String

Private Sub FrmBarang_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'Koneksi Database
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
'Untuk membuat kode otomatis
Dim strtemp As String = ""
Dim strvalue As String = ""
sql = "SELECT * FROM Barang ORDER BY kd_brg DESC"
mycmd = New OleDbCommand(sql, conn)
myread = mycmd.ExecuteReader
If myread.Read Then
strtemp = Mid(myread.Item("kd_brg"), 3, 3)
Else
txtkdbrg.Text = "BG001"
Exit Sub
End If
'MsgBox(strTemp)
strvalue = Val(strtemp) + 1
txtkdbrg.Text = "BG" & Mid("000", 1, 3 - strvalue.Length) & strvalue
Call list_data()
End Sub
Private Sub bersih()
txtnmbrg.Text = ""
txtharsat.Text = ""
cmbjenis.Text = ""
txtsatuan.Text = ""
txtnmbrg.Focus()
End Sub
Private Sub list_data()
Call clear_list()
Dim sqlx As String
Dim x As Integer
sqlx = "select kd_brg, nm_brg, har_sat, jns_brg, satuan from BARANG"
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
Halaman 32 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

mycmd = New OleDbCommand(sqlx, conn)
myread = mycmd.ExecuteReader
Try
While myread.Read = True
x = Val(counter.Text)
counter.Text = Str(Val(counter.Text) + 1)
With ListView1
.Items.Add("")
.Items(ListView1.Items.Count - 1).SubItems.Add("")
.Items(ListView1.Items.Count - 1).SubItems.Add("")
.Items(ListView1.Items.Count - 1).SubItems.Add("")
.Items(ListView1.Items.Count - 1).SubItems.Add("")
.Items(x).SubItems(0).Text = myread.GetString(0)
.Items(x).SubItems(1).Text = myread.GetString(1)
.Items(x).SubItems(2).Text = myread.GetValue(2)
.Items(x).SubItems(3).Text = myread.GetString(3)
.Items(x).SubItems(4).Text = myread.GetString(4)
End With
End While
Finally
myread.Close()
End Try
conn.Close()
End Sub
Private Sub clear_list()
While Val(counter.Text) > 0
ListView1.Items(0).Remove()
counter.Text = Val(counter.Text) - 1
End While
End Sub

cmdSimpan
Private Sub cmdsimpan_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdsimpan.Click
If txtkdbrg.Text = "" Then
MessageBox.Show("Anda Harus Mengisi kode !!")
txtkdbrg.Focus()
Exit Sub
ElseIf txtnmbrg.Text = "" Then
MessageBox.Show("Anda Harus Mengisi Nama barang !!")
txtnmbrg.Focus()
Exit Sub
ElseIf txtharsat.Text = "" Then
MessageBox.Show("Anda Harus mengisi harga Barang !!")
txtharsat.Focus()
Exit Sub
ElseIf cmbjenis.Text = "" Then
MessageBox.Show("Anda Harus mengisi jenis Barang !!")
cmbjenis.Focus()
Exit Sub
End If

Halaman 33 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

obj.kdbrg = txtkdbrg.Text
obj.nmbrg = txtnmbrg.Text
obj.harsat = txtharsat.Text
obj.jenis = cmbjenis.Text
obj.satuan = txtsatuan.Text
If obj.simpan = 1 Then
MessageBox.Show("Insert Data Berhasil !!")
sql = "SELECT * FROM barang ORDER BY kd_brg DESC"
mycmd = New OleDbCommand(sql, conn)
myread = mycmd.ExecuteReader
If myread.Read Then
strTemp = Mid(myread.Item("kd_brg"), 3, 3)
Else
txtkdbrg.Text = "BG001"
Exit Sub
End If
'MsgBox(strTemp)
strValue = Val(strTemp) + 1
txtkdbrg.Text = "BG" & Mid("000", 1, 3 - strValue.Length) &
strValue
Call bersih()
Else
MessageBox.Show("Insert Gagal !!")
End If
Call list_data()
End Sub
Klik 2x pada Listview1 ketikkan code seperti gambar berikut :
Private Sub ListView1_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles ListView1.Click
txtkdbrg.Text = ListView1.SelectedItems(0).SubItems(0).Text.ToString
txtnmbrg.Text = ListView1.SelectedItems(0).SubItems(1).Text.ToString
txtharsat.Text = ListView1.SelectedItems(0).SubItems(2).Text.ToString
cmbjenis.Text = ListView1.SelectedItems(0).SubItems(3).Text.ToString
txtsatuan.Text = ListView1.SelectedItems(0).SubItems(4).Text.ToString
End Sub

UBAH

cmdUbah

Private Sub cmdubah_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdubah.Click
If txtnmbrg.Text = "" Then
MessageBox.Show("Anda Harus Mengisi Nama Barang !!")
txtnmbrg.Focus()
Exit Sub
ElseIf txtharsat.Text = "" Then
MessageBox.Show("Anda Harus Mengisi Harga !!")
txtharsat.Focus()
Exit Sub
ElseIf txtsatuan.Text = "" Then
MessageBox.Show("Anda Harus Mengisi Harga !!")
txtsatuan.Focus()
Exit Sub
End If
Halaman 34 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Dim jawab As DialogResult
jawab = MessageBox.Show("Anda yakin akan mengubah data ini ??", _
"DATA BARANG", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If jawab = Windows.Forms.DialogResult.Yes Then
obj.kdbrg = txtkdbrg.Text
obj.nmbrg = txtnmbrg.Text
obj.harsat = txtharsat.Text
obj.jenis = cmbjenis.Text
obj.satuan = txtsatuan.Text
If obj.ubah(txtkdbrg.Text) = 1 Then
MessageBox.Show("Update Data Berhasil !!")
sql = "SELECT * FROM barang ORDER BY kd_brg DESC"
mycmd = New OleDbCommand(sql, conn)
myread = mycmd.ExecuteReader
If myread.Read Then
strTemp = Mid(myread.Item("kd_brg"), 3, 3)
Else
txtkdbrg.Text = "BG001"
Exit Sub
End If
'MsgBox(strTemp)
strValue = Val(strTemp) + 1
txtkdbrg.Text = "BG" & Mid("000", 1, 3 - strValue.Length) &
strValue
Else
MessageBox.Show("Update Gagal !!")
End If
Call bersih()
End If
Call list_data()
End Sub

HAPUS

cmdHapus

Private Sub cmdhapus_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdhapus.Click
Dim jawab As DialogResult
jawab = MessageBox.Show("Anda yakin akan menghapus data ini ??", _
"DATA BARANG", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If jawab = Windows.Forms.DialogResult.Yes Then
If obj.hapus(txtkdbrg.Text) = 1 Then
MessageBox.Show("Delete Data Berhasil !!")
sql = "SELECT * FROM barang ORDER BY kd_brg DESC"
mycmd = New OleDbCommand(sql, conn)
myread = mycmd.ExecuteReader
If myread.Read Then
strTemp = Mid(myread.Item("kd_brg"), 3, 3)
Else
txtkdbrg.Text = "BG001"
Exit Sub
End If

Halaman 35 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

'MsgBox(strTemp)
strValue = Val(strTemp) + 1
txtkdbrg.Text = "BG" & Mid("000", 1, 3 - strValue.Length) &
strValue
Else
MessageBox.Show("Delete Gagal !!")
End If
Call bersih()
End If
Call list_data()
End Sub

BATAL

cmdBatal

Private Sub cmdbatal_Click(ByVal sender
System.EventArgs) Handles cmdbatal.Click
Call bersih()
End Sub

KELUAR

As

System.Object,

ByVal

e

As

cmdKeluar

Private Sub cmdkeluar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdkeluar.Click
Dim jawab As DialogResult
jawab = MessageBox.Show("Anda yakin akan Keluar Dari Entry Data ini
??", _
"PERINGATAN",
MessageBoxButtons.YesNo,
MessageBoxIcon.Question)
If jawab = Windows.Forms.DialogResult.Yes Then
If conn.State <> ConnectionState.Closed Then conn.Close()
Me.Dispose()
End If
End Sub

Halaman 36 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

MEMBUAT CLASS PELANGGAN
Untuk membuat Class, dengan cara: Klik kanan pada Project di Solution Explorer, kemudian pilih Add,
Class...

Ketikan code untuk Class Pelanggan:
Imports System.Data.OleDb
Imports System.Data
Public Class Clspelanggan
#Region "Variabel"
Private xkdplg As String
Private xNmplg As String
Private xalamat As String
Private xtelp As String
Dim
Dim
Dim
Dim

sql As String = ""
mycmd As OleDbCommand
myread As OleDbDataReader
hasRows As Boolean

#End Region
Halaman 37 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

#Region "Property"
Public Property kdplg() As String
Get
Return xkdplg
End Get
Set(ByVal value As String)
xkdplg = value
End Set
End Property
Public Property nmplg() As String
Get
Return xNmplg
End Get
Set(ByVal value As String)
xNmplg = value
End Set
End Property
Public Property alamat() As String
Get
Return xalamat
End Get
Set(ByVal value As String)
xalamat = value
End Set
End Property
Public Property telp() As String
Get
Return xtelp
End Get
Set(ByVal value As String)
xtelp = value
End Set
End Property
#End Region
#Region "Method"
Public Function simpan() As Integer
sql = "INSERT INTO Pelanggan(kd_plg,Nm_plg,almt,telp) " & _
"VALUES('" & xkdplg & "','" & xNmplg & "','" & xalamat & "','" &
xtelp & "')"
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
mycmd = New OleDbCommand(sql, conn)
Return mycmd.ExecuteNonQuery
End Function
Public Function hapus(ByVal varkdplg As String) As Integer
sql = "DELETE FROM Pelanggan WHERE kd_plg='" & varkdplg & "'"
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
mycmd = New OleDbCommand(sql, conn)
Return mycmd.ExecuteNonQuery
End Function
Halaman 38 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Public Function ubah(ByVal varkdplg As String) As Integer
sql = "UPDATE Pelanggan SET Nm_plg ='" & xNmplg & "'," & _
"Almt='" & xalamat & "', telp = '" & xtelp & "'" & _
" WHERE kd_plg='" & varkdplg & "'"
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
mycmd = New OleDbCommand(sql, conn)
Return mycmd.ExecuteNonQuery
End Function
#End Region
End Class
ENTRY DATA PELANGGAN
Form
Label
Group
Box1
Label

TextBox

Button
Group
Box2

TextBox

ListView

Halaman 39 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

OBJEK

NAME

TEXT

PROPERTIES YANG DIUBAH

Form1

frmPelanggan

ENTRY DATA PELANGGAN

Label1
GroupBox1
Label2
Label3
Label4
Label5
Textbox1
Textbox2
Textbox3
Textbox5
Textbox6
GroupBox2
Button2
Button3
Button4
Button5
Button6
ListView1

Label1
Groupbox1
Label2
Label3
Label4
Label5
txtKdPlg
txtNmPlg
txtAlamat
txtTelp
counter
Groupbox2
cmdSimpan
cmdUbah
cmdHapus
cmdBatal
cmdKeluar
ListView1

ENTRY DATA PELANGGAN
Kode Pelanggan
Nama Pelanggan
Alamat
Telepon
(kosong)
(kosong)
(kosong)
(kosong)
0
SIMPAN
UBAH
HAPUS
BATAL
KELUAR
-

Font , Back Color, StartPosition =
CenterScreen
Font, Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Font , Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Font , Back Color
Font , Back Color
Font , Back Color
Font, Back Color
Font , Back Color
View = Details
Edit Column = Kode Pelanggan,
Nama Pelanggan, Alamat, Telepon

Ketikan code untuk Form Pelanggan:
Imports System.Data.OleDb
Imports System.Data
Public Class FrmPelanggan
Dim obj As New Clsbarang
Dim mycmd As OleDbCommand
Dim myread As OleDbDataReader
Dim strTemp As String = ""
Dim strValue As String = ""
Dim sql As String
Private Sub FrmPelanggan_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'Koneksi Database
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
'Untuk membuat kode otomatis
Dim strtemp As String = ""
Dim strvalue As String = ""
sql = "SELECT * FROM Pelanggan ORDER BY kd_plg DESC"
mycmd = New OleDbCommand(sql, conn)
myread = mycmd.ExecuteReader

Halaman 40 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

If myread.Read Then
strtemp = Mid(myread.Item("kd_plg"), 3, 3)
Else
txtkdplg.Text = "PG001"
Exit Sub
End If
'MsgBox(strTemp)
strvalue = Val(strtemp) + 1
txtkdplg.Text = "BG" & Mid("000", 1, 3 - strvalue.Length) & strvalue
Call list_data()
End Sub
Private Sub cmdsimpan_Click(ByVal sender As
System.EventArgs) Handles cmdsimpan.Click
If txtkdplg.Text = "" Then
MessageBox.Show("Anda Harus Mengisi
txtkdplg.Focus()
Exit Sub
ElseIf txtnmplg.Text = "" Then
MessageBox.Show("Anda Harus Mengisi
txtnmplg.Focus()
Exit Sub
ElseIf txtalamat.Text = "" Then
MessageBox.Show("Anda Harus mengisi
txtalamat.Focus()
Exit Sub
ElseIf txttelepon.Text = "" Then
MessageBox.Show("Anda Harus mengisi
txttelepon.Focus()
Exit Sub
End If
obj.kdplg = txtkdplg.Text
obj.nmplg = txtnmplg.Text
obj.alamat = txtalamat.Text
obj.telp = txttelepon.Text

System.Object, ByVal e As

kode !!")

Nama !!")

Alamat !!")

Telepon !!")

If obj.simpan = 1 Then
MessageBox.Show("Insert Data Berhasil !!")
sql = "SELECT * FROM Pelanggan ORDER BY kd_plg DESC"
mycmd = New OleDbCommand(sql, conn)
myread = mycmd.ExecuteReader
If myread.Read Then
strTemp = Mid(myread.Item("kd_plg"), 3, 3)
Else
txtkdplg.Text = "PG001"
Exit Sub
End If
'MsgBox(strTemp)
strValue = Val(strTemp) + 1
txtkdplg.Text = "PG" & Mid("000", 1, 3 - strValue.Length) &
strValue

Halaman 41 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Call bersih()
Else
MessageBox.Show("Insert Gagal !!")
End If
Call list_data()
End Sub
Private Sub bersih()
txtnmplg.Text = ""
txtalamat.Text = ""
txttelepon.Text = ""
txtnmplg.Focus()
End Sub
Private Sub list_data()
Call clear_list()
Dim sqlx As String
Dim x As Integer
sqlx = "select kd_plg, nm_plg, almt, telp from PELANGGAN"
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
mycmd = New OleDbCommand(sqlx, conn)
myread = mycmd.ExecuteReader
Try
While myread.Read = True
x = Val(counter.Text)
counter.Text = Str(Val(counter.Text) + 1)
With ListView1
.Items.Add("")
.Items(ListView1.Items.Count - 1).SubItems.Add("")
.Items(ListView1.Items.Count - 1).SubItems.Add("")
.Items(ListView1.Items.Count - 1).SubItems.Add("")
.Items(ListView1.Items.Count - 1).SubItems.Add("")
.Items(x).SubItems(0).Text = myread.GetString(0)
.Items(x).SubItems(1).Text = myread.GetString(1)
.Items(x).SubItems(2).Text = myread.GetValue(2)
.Items(x).SubItems(3).Text = myread.GetString(3)
.Items(x).SubItems(4).Text = myread.GetString(4)
End With
End While
Finally
myread.Close()
End Try
conn.Close()
End Sub

Halaman 42 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Private Sub clear_list()
While Val(counter.Text) > 0
ListView1.Items(0).Remove()
counter.Text = Val(counter.Text) - 1
End While
End Sub
Private Sub ListView1_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles ListView1.Click
txtkdplg.Text = ListView1.SelectedItems(0).SubItems(0).Text.ToString
txtnmplg.Text = ListView1.SelectedItems(0).SubItems(1).Text.ToString
txtalamat.Text =
ListView1.SelectedItems(0).SubItems(2).Text.ToString
txttelepon.Text =
ListView1.SelectedItems(0).SubItems(3).Text.ToString
End Sub

Private Sub cmdubah_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdubah.Click
If txtnmplg.Text = "" Then
MessageBox.Show("Anda Harus Mengisi Nama Pelanggan !!")
txtnmplg.Focus()
Exit Sub
ElseIf txtalamat.Text = "" Then
MessageBox.Show("Anda Harus Mengisi alamat !!")
txtalamat.Focus()
Exit Sub
ElseIf txttelepon.Text = "" Then
MessageBox.Show("Anda Harus Mengisi Telepon !!")
txttelepon.Focus()
Exit Sub
End If
Dim jawab As DialogResult
jawab = MessageBox.Show("Anda yakin akan mengubah data ini ??", _
"DATA PELANGGAN", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If jawab = Windows.Forms.DialogResult.Yes Then
obj.kdplg = txtkdplg.Text
obj.nmplg = txtnmplg.Text
obj.alamat = txtalamat.Text
obj.telp = txttelepon.Text
If obj.ubah(txtkdplg.Text) = 1 Then
MessageBox.Show("Update Data Berhasil !!")
sql = "SELECT * FROM Pelanggan ORDER BY kd_plg DESC"
mycmd = New OleDbCommand(sql, conn)
myread = mycmd.ExecuteReader
If myread.Read Then
strTemp = Mid(myread.Item("kd_plg"), 3, 3)
Else
txtkdplg.Text = "PG001"
Exit Sub
End If
'MsgBox(strTemp)
strValue = Val(strTemp) + 1
txtkdplg.Text = "PG" & Mid("000", 1, 3 - strValue.Length) &
strValue
Halaman 43 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Else
MessageBox.Show("Update Gagal !!")
End If
Call bersih()
End If
Call list_data()
End Sub
Private Sub cmdhapus_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdhapus.Click
Dim jawab As DialogResult
jawab = MessageBox.Show("Anda yakin akan menghapus data ini ??", _
"DATA PELANGGAN", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If jawab = Windows.Forms.DialogResult.Yes Then
If obj.hapus(txtkdplg.Text) = 1 Then
MessageBox.Show("Delete Data Berhasil !!")
sql = "SELECT * FROM Pelanggan ORDER BY kd_plg DESC"
mycmd = New OleDbCommand(sql, conn)
myread = mycmd.ExecuteReader
If myread.Read Then
strTemp = Mid(myread.Item("kd_plg"), 3, 3)
Else
txtkdplg.Text = "PG001"
Exit Sub
End If
'MsgBox(strTemp)
strValue = Val(strTemp) + 1
txtkdplg.Text = "PG" & Mid("000", 1, 3 - strValue.Length) &
strValue
Else
MessageBox.Show("Delete Gagal !!")
End If
Call bersih()
End If
Call list_data()
End Sub
Private Sub cmdkeluar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdkeluar.Click
Dim jawab As DialogResult
jawab = MessageBox.Show("Anda yakin akan Keluar Dari Entry Data ini
??", _
"PERINGATAN", MessageBoxButtons.YesNo,
MessageBoxIcon.Question)
If jawab = Windows.Forms.DialogResult.Yes Then
If conn.State <> ConnectionState.Closed Then conn.Close()
Me.Dispose()
End If
End Sub
Private Sub cmdbatal_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdbatal.Click
Call bersih()
End Sub
End Class

Halaman 44 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

MEMBUAT CLASS REKENING
Untuk membuat Class, dengan cara: Klik kanan pada Project di Solution Explorer, kemudian pilih Add,
Class...

Ketikan code untuk Class Rekening:
Imports System.Data.OleDb
Imports System.Data
Public Class ClsRekening
#Region "Variabel"
Private xnorek As String
Private xNmrek As String
Dim
Dim
Dim
Dim

sql As String = ""
mycmd As OleDbCommand
myread As OleDbDataReader
hasRows As Boolean

#End Region

Halaman 45 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

#Region "Property"
Public Property norek() As String
Get
Return xnorek
End Get
Set(ByVal value As String)
xnorek = value
End Set
End Property
Public Property nmrek() As String
Get
Return xNmrek
End Get
Set(ByVal value As String)
xNmrek = value
End Set
End Property
#End Region
#Region "Method"
Public Function simpan() As Integer
sql = "INSERT INTO Rekening(no_rek,Nm_rek) " & _
"VALUES('" & xnorek & "','" & xNmrek & "')"
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
mycmd = New OleDbCommand(sql, conn)
Return mycmd.ExecuteNonQuery
End Function
Public Function hapus(ByVal varnorek As String) As Integer
sql = "DELETE FROM Rekening WHERE no_rek='" & varnorek & "'"
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
mycmd = New OleDbCommand(sql, conn)
Return mycmd.ExecuteNonQuery
End Function
Public Function ubah(ByVal varnorek As String) As Integer
sql = "UPDATE Rekening SET Nm_rek ='" & xNmrek & "'" & _
" WHERE no_rek='" & varnorek & "'"
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
mycmd = New OleDbCommand(sql, conn)
Return mycmd.ExecuteNonQuery
End Function
#End Region
End Class

Halaman 46 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

ENTRY DATA REKENING
Form
Label
Group
Box1
TextBox

Label
Button
Group
Box2

TextBox

ListView

OBJEK

NAME

TEXT

Form1

frmRekening

ENTRY DATA REKENING

Label1
GroupBox1
Label2
Label3
Textbox1
Textbox2
Textbox6
GroupBox2
Button2
Button3
Button4
Button5
Button6
ListView1

Label1
Groupbox1
Label2
Label3
txtkdrek
txtNmrek
Counter
Groupbox2
cmdSimpan
cmdUbah
cmdHapus
cmdBatal
cmdKeluar
ListView1

ENTRY DATA REKENING
No. Rekening
Nama Rekening
(kosong)
(kosong)
0
SIMPAN
UBAH
HAPUS
BATAL
KELUAR
-

PROPERTIES YANG DIUBAH
Font , Back Color, StartPosition =
CenterScreen
Font, Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Font , Back Color
Font, Back Color
Font, Back Color
Font, Back Color
Font , Back Color
Font , Back Color
Font , Back Color
Font, Back Color
Font , Back Color
View = Details
Edit Column = No. Rekening,
Nama Rekening

Halaman 47 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Ketikan code untuk Class Rekening:
Imports System.Data.OleDb
Imports System.Data
Public Class FrmRekening
Dim obj As New ClsRekening
Dim mycmd As OleDbCommand
Dim myread As OleDbDataReader
Dim strTemp As String = ""
Dim strValue As String = ""
Dim sql As String
Private Sub FrmRekening_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'Koneksi Database
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
Call list_data()
End Sub
Private Sub cmdsimpan_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdsimpan.Click
If txtnorek.Text = "" Then
MessageBox.Show("Anda Harus Mengisi nomor rekening !!")
txtnorek.Focus()
Exit Sub
ElseIf txtnmrek.Text = "" Then
MessageBox.Show("Anda Harus Mengisi Nama !!")
txtnmrek.Focus()
Exit Sub
End If
obj.norek = txtnorek.Text
obj.nmrek = txtnmrek.Text
If obj.simpan = 1 Then
MessageBox.Show("Insert Data Berhasil !!")
sql = "SELECT * FROM Rekening ORDER BY no_rek DESC"
mycmd = New OleDbCommand(sql, conn)
myread = mycmd.ExecuteReader
Call bersih()
Else
MessageBox.Show("Insert Gagal !!")
End If
Call list_data()
End Sub

Halaman 48 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Private Sub bersih()
txtnorek.Text = ""
txtnmrek.Text = ""
txtnorek.Focus()
End Sub
Private Sub list_data()
Call clear_list()
Dim sqlx As String
Dim x As Integer
sqlx = "select no_rek, nm_rek from REKENING"
conn = New OleDbConnection(strconn)
If conn.State <> ConnectionState.Closed Then conn.Close()
conn.Open()
mycmd = New OleDbCommand(sqlx, conn)
myread = mycmd.ExecuteReader
Try
While myread.Read = True
x = Val(counter.Text)
counter.Text = Str(Val(counter.Text) + 1)
With ListView1
.Items.Add("")
.Items(ListView1.Items.Count - 1).SubItems.Add("")
.Items(x).SubItems(0).Text = myread.GetString(0)
.Items(x).SubItems(1).Text = myread.GetString(1)
End With
End While
Finally
myread.Close()
End Try
conn.Close()
End Sub
Private Sub clear_list()
While Val(counter.Text) > 0
ListView1.Items(0).Remove()
counter.Text = Val(counter.Text) - 1
End While
End Sub
Private Sub ListView1_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles ListView1.Click
txtnorek.Text = ListView1.SelectedItems(0).SubItems(0).Text.ToString
txtnmrek.Text = ListView1.SelectedItems(0).SubItems(1).Text.ToString
End Sub

Halaman 49 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Private Sub cmdubah_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdubah.Click
If txtnorek.Text = "" Then
MessageBox.Show("Anda Harus Mengisi nomor rekening !!")
txtnorek.Focus()
Exit Sub
ElseIf txtnmrek.Text = "" Then
MessageBox.Show("Anda Harus Mengisi Nama !!")
txtnmrek.Focus()
Exit Sub
End If
Dim jawab As DialogResult
jawab = MessageBox.Show("Anda yakin akan mengubah data ini ??", _
"DATA REKENING", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If jawab = Windows.Forms.DialogResult.Yes Then
obj.norek = txtnorek.Text
obj.nmrek = txtnmrek.Text
If obj.ubah(txtnorek.Text) = 1 Then
MessageBox.Show("Update Data Berhasil !!")
sql = "SELECT * FROM REKENING ORDER BY no_rek DESC"
mycmd = New OleDbCommand(sql, conn)
myread = mycmd.ExecuteReader
Else
MessageBox.Show("Update Gagal !!")
End If
Call bersih()
End If
Call list_data()
End Sub
Private Sub cmdhapus_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdhapus.Click
Dim jawab As DialogResult
jawab = MessageBox.Show("Anda yakin akan menghapus data ini ??", _
"DATA REKENING", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If jawab = Windows.Forms.DialogResult.Yes Then
If obj.hapus(txtnorek.Text) = 1 Then
MessageBox.Show("Delete Data Berhasil !!")
sql = "SELECT * FROM REKENING ORDER BY no_rek DESC"
mycmd = New OleDbCommand(sql, conn)
myread = mycmd.ExecuteReader
Else
MessageBox.Show("Delete Gagal !!")
End If
Call bersih()
End If
Call list_data()
End Sub

Halaman 50 dari 51
Diktat VB.Net Lanjutan

Hadi Santoso

Private Sub cmdkeluar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdkeluar.Click
Dim jawab As DialogResult
jawab = MessageBox.Show("Anda yakin akan Keluar Dari Entry Data ini ??",
_
"PERINGATAN", MessageBoxButtons.YesNo,
MessageBoxIcon.Question)
If jawab = Windows.Forms.DialogResult.Yes Then
If conn.State <> ConnectionState.Closed Then conn.Close()
Me.Dispose()
End If
End Sub
Private Sub cmdbatal_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdbatal.Click
Call bersih()
End Sub
End Class

Halaman 51 dari 51

More Related Content

Similar to Berikut deskripsi use case untuk entry data rekening:- Staff optik penjualan membuka form entry data rekening- Kode rekening diisi secara otomatis berdasarkan kode rekening yang telah ditetapkan- Staff optik penjualan menginput nama rekening- Staff optik penjualan menekan tombol "SIMPAN" untuk menyimpan data rekening ke file rekening- Tombol "UBAH" digunakan untuk mengubah data rekening- Tombol "HAPUS" dig

Analisis perancangan sistem bengkel ramayana
Analisis perancangan sistem bengkel ramayanaAnalisis perancangan sistem bengkel ramayana
Analisis perancangan sistem bengkel ramayanapipin ibnu faqih
 
Am ifv94 rbnfhrmuwojx8goa-nfiueodshikubixuwmbz0xni-mgwvmicox8jllgruowkyk6kmpr...
Am ifv94 rbnfhrmuwojx8goa-nfiueodshikubixuwmbz0xni-mgwvmicox8jllgruowkyk6kmpr...Am ifv94 rbnfhrmuwojx8goa-nfiueodshikubixuwmbz0xni-mgwvmicox8jllgruowkyk6kmpr...
Am ifv94 rbnfhrmuwojx8goa-nfiueodshikubixuwmbz0xni-mgwvmicox8jllgruowkyk6kmpr...Nanang Juventini
 
Tugas spk loundry aplikasi sia 7
Tugas spk loundry aplikasi  sia 7Tugas spk loundry aplikasi  sia 7
Tugas spk loundry aplikasi sia 7Mardi Malow
 
ANALISIS DAN PERANCANGAN SISTEM INFORMASI PENJUALAN AIR MINUM PADA CV. AIR PU...
ANALISIS DAN PERANCANGAN SISTEM INFORMASI PENJUALAN AIR MINUM PADA CV. AIR PU...ANALISIS DAN PERANCANGAN SISTEM INFORMASI PENJUALAN AIR MINUM PADA CV. AIR PU...
ANALISIS DAN PERANCANGAN SISTEM INFORMASI PENJUALAN AIR MINUM PADA CV. AIR PU...Angling_seto
 
Analisis & Perancangan SI Penjualan Toko Bangunan Gunung Kidul
Analisis & Perancangan SI Penjualan Toko Bangunan Gunung KidulAnalisis & Perancangan SI Penjualan Toko Bangunan Gunung Kidul
Analisis & Perancangan SI Penjualan Toko Bangunan Gunung KidulRia Setia
 
(Perangkat Lunak) Implementasi APLIKASI PERHITUNGAN PAJAK PENGHASILAN (PPH23)...
(Perangkat Lunak) Implementasi APLIKASI PERHITUNGAN PAJAK PENGHASILAN (PPH23)...(Perangkat Lunak) Implementasi APLIKASI PERHITUNGAN PAJAK PENGHASILAN (PPH23)...
(Perangkat Lunak) Implementasi APLIKASI PERHITUNGAN PAJAK PENGHASILAN (PPH23)...Masdar Aripin
 
Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...
Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...
Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...Ferdinand Jason
 
new Chapter 10 - Report Kwitansi.pdf
new Chapter 10 - Report Kwitansi.pdfnew Chapter 10 - Report Kwitansi.pdf
new Chapter 10 - Report Kwitansi.pdfrahmantoyuri
 
Sim, muhammad zainudin, prof,dr,hapzi ali,mm,cma analisa dan perancangan sist...
Sim, muhammad zainudin, prof,dr,hapzi ali,mm,cma analisa dan perancangan sist...Sim, muhammad zainudin, prof,dr,hapzi ali,mm,cma analisa dan perancangan sist...
Sim, muhammad zainudin, prof,dr,hapzi ali,mm,cma analisa dan perancangan sist...Muhammad Zainudin
 
Jurnal pa aplikasi penjualan dan persediaan barang dagang dengan metode perpe...
Jurnal pa aplikasi penjualan dan persediaan barang dagang dengan metode perpe...Jurnal pa aplikasi penjualan dan persediaan barang dagang dengan metode perpe...
Jurnal pa aplikasi penjualan dan persediaan barang dagang dengan metode perpe...Bungshu Pangeshti
 
Chapter 10 - Pembatan Report Kwitansi
Chapter 10 - Pembatan Report KwitansiChapter 10 - Pembatan Report Kwitansi
Chapter 10 - Pembatan Report KwitansiRakhmat Dedi Gunawan
 
new Chapter 8 - Coding Form Master Pelanggan (Customer).pdf
new Chapter 8 - Coding Form Master Pelanggan (Customer).pdfnew Chapter 8 - Coding Form Master Pelanggan (Customer).pdf
new Chapter 8 - Coding Form Master Pelanggan (Customer).pdfrahmantoyuri
 
Aplikasi Kredit Motor
Aplikasi Kredit MotorAplikasi Kredit Motor
Aplikasi Kredit MotorAsep Sutiono
 
new Chapter 9 - Coding Form Transaksi Penjualan.pdf
new Chapter 9 - Coding Form Transaksi Penjualan.pdfnew Chapter 9 - Coding Form Transaksi Penjualan.pdf
new Chapter 9 - Coding Form Transaksi Penjualan.pdfrahmantoyuri
 

Similar to Berikut deskripsi use case untuk entry data rekening:- Staff optik penjualan membuka form entry data rekening- Kode rekening diisi secara otomatis berdasarkan kode rekening yang telah ditetapkan- Staff optik penjualan menginput nama rekening- Staff optik penjualan menekan tombol "SIMPAN" untuk menyimpan data rekening ke file rekening- Tombol "UBAH" digunakan untuk mengubah data rekening- Tombol "HAPUS" dig (20)

analisa sistem
analisa sistemanalisa sistem
analisa sistem
 
Analisis perancangan sistem bengkel ramayana
Analisis perancangan sistem bengkel ramayanaAnalisis perancangan sistem bengkel ramayana
Analisis perancangan sistem bengkel ramayana
 
Am ifv94 rbnfhrmuwojx8goa-nfiueodshikubixuwmbz0xni-mgwvmicox8jllgruowkyk6kmpr...
Am ifv94 rbnfhrmuwojx8goa-nfiueodshikubixuwmbz0xni-mgwvmicox8jllgruowkyk6kmpr...Am ifv94 rbnfhrmuwojx8goa-nfiueodshikubixuwmbz0xni-mgwvmicox8jllgruowkyk6kmpr...
Am ifv94 rbnfhrmuwojx8goa-nfiueodshikubixuwmbz0xni-mgwvmicox8jllgruowkyk6kmpr...
 
Tugas spk loundry aplikasi sia 7
Tugas spk loundry aplikasi  sia 7Tugas spk loundry aplikasi  sia 7
Tugas spk loundry aplikasi sia 7
 
Chapter 01 - Pembuatan Database
Chapter 01 - Pembuatan DatabaseChapter 01 - Pembuatan Database
Chapter 01 - Pembuatan Database
 
Proposal aq baru
Proposal aq baruProposal aq baru
Proposal aq baru
 
ANALISIS DAN PERANCANGAN SISTEM INFORMASI PENJUALAN AIR MINUM PADA CV. AIR PU...
ANALISIS DAN PERANCANGAN SISTEM INFORMASI PENJUALAN AIR MINUM PADA CV. AIR PU...ANALISIS DAN PERANCANGAN SISTEM INFORMASI PENJUALAN AIR MINUM PADA CV. AIR PU...
ANALISIS DAN PERANCANGAN SISTEM INFORMASI PENJUALAN AIR MINUM PADA CV. AIR PU...
 
Presentasi Koe
Presentasi KoePresentasi Koe
Presentasi Koe
 
Analisis & Perancangan SI Penjualan Toko Bangunan Gunung Kidul
Analisis & Perancangan SI Penjualan Toko Bangunan Gunung KidulAnalisis & Perancangan SI Penjualan Toko Bangunan Gunung Kidul
Analisis & Perancangan SI Penjualan Toko Bangunan Gunung Kidul
 
(Perangkat Lunak) Implementasi APLIKASI PERHITUNGAN PAJAK PENGHASILAN (PPH23)...
(Perangkat Lunak) Implementasi APLIKASI PERHITUNGAN PAJAK PENGHASILAN (PPH23)...(Perangkat Lunak) Implementasi APLIKASI PERHITUNGAN PAJAK PENGHASILAN (PPH23)...
(Perangkat Lunak) Implementasi APLIKASI PERHITUNGAN PAJAK PENGHASILAN (PPH23)...
 
Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...
Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...
Final Project APSI : ANALISIS PERANCANGAN SISTEM INFORMASI PENJUALAN SUPERMAR...
 
Bab 1 Sistem Akuntansi
Bab 1 Sistem AkuntansiBab 1 Sistem Akuntansi
Bab 1 Sistem Akuntansi
 
new Chapter 10 - Report Kwitansi.pdf
new Chapter 10 - Report Kwitansi.pdfnew Chapter 10 - Report Kwitansi.pdf
new Chapter 10 - Report Kwitansi.pdf
 
Sim, muhammad zainudin, prof,dr,hapzi ali,mm,cma analisa dan perancangan sist...
Sim, muhammad zainudin, prof,dr,hapzi ali,mm,cma analisa dan perancangan sist...Sim, muhammad zainudin, prof,dr,hapzi ali,mm,cma analisa dan perancangan sist...
Sim, muhammad zainudin, prof,dr,hapzi ali,mm,cma analisa dan perancangan sist...
 
Jurnal pa aplikasi penjualan dan persediaan barang dagang dengan metode perpe...
Jurnal pa aplikasi penjualan dan persediaan barang dagang dengan metode perpe...Jurnal pa aplikasi penjualan dan persediaan barang dagang dengan metode perpe...
Jurnal pa aplikasi penjualan dan persediaan barang dagang dengan metode perpe...
 
Chapter 10 - Pembatan Report Kwitansi
Chapter 10 - Pembatan Report KwitansiChapter 10 - Pembatan Report Kwitansi
Chapter 10 - Pembatan Report Kwitansi
 
Ansis
AnsisAnsis
Ansis
 
new Chapter 8 - Coding Form Master Pelanggan (Customer).pdf
new Chapter 8 - Coding Form Master Pelanggan (Customer).pdfnew Chapter 8 - Coding Form Master Pelanggan (Customer).pdf
new Chapter 8 - Coding Form Master Pelanggan (Customer).pdf
 
Aplikasi Kredit Motor
Aplikasi Kredit MotorAplikasi Kredit Motor
Aplikasi Kredit Motor
 
new Chapter 9 - Coding Form Transaksi Penjualan.pdf
new Chapter 9 - Coding Form Transaksi Penjualan.pdfnew Chapter 9 - Coding Form Transaksi Penjualan.pdf
new Chapter 9 - Coding Form Transaksi Penjualan.pdf
 

More from Jacob Dwi Cristian Umboh

Rancangan Sistem Informasi Penjualan Tunai pada Metedologi Berorientasi obyek...
Rancangan Sistem Informasi Penjualan Tunai pada Metedologi Berorientasi obyek...Rancangan Sistem Informasi Penjualan Tunai pada Metedologi Berorientasi obyek...
Rancangan Sistem Informasi Penjualan Tunai pada Metedologi Berorientasi obyek...Jacob Dwi Cristian Umboh
 
Presentation 3 - Membuat menu menggunakan cascading style sheets (css)
Presentation 3 - Membuat menu menggunakan cascading style sheets (css)Presentation 3 - Membuat menu menggunakan cascading style sheets (css)
Presentation 3 - Membuat menu menggunakan cascading style sheets (css)Jacob Dwi Cristian Umboh
 
Presentation 2 - Cascading style sheets (css)
Presentation 2 - Cascading style sheets (css)Presentation 2 - Cascading style sheets (css)
Presentation 2 - Cascading style sheets (css)Jacob Dwi Cristian Umboh
 
Presentation 1 - Desain dan pemrograman web 2
Presentation 1 - Desain dan pemrograman web 2Presentation 1 - Desain dan pemrograman web 2
Presentation 1 - Desain dan pemrograman web 2Jacob Dwi Cristian Umboh
 
Diktat Metedologi dan Pengembangan Sistem Informasi
Diktat Metedologi dan Pengembangan Sistem InformasiDiktat Metedologi dan Pengembangan Sistem Informasi
Diktat Metedologi dan Pengembangan Sistem InformasiJacob Dwi Cristian Umboh
 

More from Jacob Dwi Cristian Umboh (6)

Sistem Informasi Akuntansi
Sistem Informasi AkuntansiSistem Informasi Akuntansi
Sistem Informasi Akuntansi
 
Rancangan Sistem Informasi Penjualan Tunai pada Metedologi Berorientasi obyek...
Rancangan Sistem Informasi Penjualan Tunai pada Metedologi Berorientasi obyek...Rancangan Sistem Informasi Penjualan Tunai pada Metedologi Berorientasi obyek...
Rancangan Sistem Informasi Penjualan Tunai pada Metedologi Berorientasi obyek...
 
Presentation 3 - Membuat menu menggunakan cascading style sheets (css)
Presentation 3 - Membuat menu menggunakan cascading style sheets (css)Presentation 3 - Membuat menu menggunakan cascading style sheets (css)
Presentation 3 - Membuat menu menggunakan cascading style sheets (css)
 
Presentation 2 - Cascading style sheets (css)
Presentation 2 - Cascading style sheets (css)Presentation 2 - Cascading style sheets (css)
Presentation 2 - Cascading style sheets (css)
 
Presentation 1 - Desain dan pemrograman web 2
Presentation 1 - Desain dan pemrograman web 2Presentation 1 - Desain dan pemrograman web 2
Presentation 1 - Desain dan pemrograman web 2
 
Diktat Metedologi dan Pengembangan Sistem Informasi
Diktat Metedologi dan Pengembangan Sistem InformasiDiktat Metedologi dan Pengembangan Sistem Informasi
Diktat Metedologi dan Pengembangan Sistem Informasi
 

Berikut deskripsi use case untuk entry data rekening:- Staff optik penjualan membuka form entry data rekening- Kode rekening diisi secara otomatis berdasarkan kode rekening yang telah ditetapkan- Staff optik penjualan menginput nama rekening- Staff optik penjualan menekan tombol "SIMPAN" untuk menyimpan data rekening ke file rekening- Tombol "UBAH" digunakan untuk mengubah data rekening- Tombol "HAPUS" dig

  • 1. Diktat VB.Net Lanjutan Hadi Santoso Kata Pengantar Diktat ini disusun dengan tujuan mempermudah mahasiswa dalam perkuliahan VB.NET Lanjutan menggunakan VB.Net (Visual Studio 2008). Diktat ini berisi gambaran singkat tentang proses pembuatan sistem penjualan kacamata (optik) berbasis VB.Net (Visual Studio 2008) Object Oriented Programming dengan menggunakan database Access 2007. Matakuliah ini merupakan lanjutan dari Matakuliah Implementasi Sistem Informasi Akuntansi. Pada matakuliah ini saya hanya membahas salah satu sistem informasi dari berbagai macam sistem informasi yang dibahas pada matakuliah sistem informasi akuntansi, yaitu Sistem Informasi Penjualan kacamata (optik). Sesuai dengan materi perkuliahan mahasiswa akan diajarkan bagaimana membuat sistem informasi sederhana dengan bahasa pemrograman VB.Net (Visual Studio 2008) berdasarkan Object Oriented Programming, yaitu Sistem Informasi Penjualan Tunai dan sekaligus akan berguna sekali sebagai pedoman ketika akan membuat sebuah KKP(Kuliah Kerja Praktek)/Tugas Akhir (Project Akhir). Demikian sepatah kata pengantar dari saya. Semoga diktat ini bermanfaat bagi kita semua. Info lanjut hub. 081367436682 (hds4n@yahoo.co.id) Hormat Saya Penulis Halaman 1 dari 51
  • 2. Diktat VB.Net Lanjutan Hadi Santoso Referensi 1. www.msdn.microsoft.com 2. www.planetsourcecode.com 3. www.codeproject.com 4. www.aspnet.com 5. www. a1vbcode.com 6. Step By Step Menjadi Programmer Handal Dengan VB.Net, Junindar Halaman 2 dari 51
  • 3. Diktat VB.Net Lanjutan Hadi Santoso 1. ANALISA SISTEM Untuk merancang sebuah sistem yang baik dan sesuai dengan hasil yang diharapkan, maka terlebih dahulu harus diperoleh data atau informasi tentang sistem yang berjalan. Karena dari informasi tersebut, dapat diketahui sejauh mana sistem yang berjalan sekarang, apakah dapat memenuhi kebutuhan dan kebutuhan apa saja yang ingin dicapai tetapi belum bisa ditangani oleh sistem yang sedang berjalan. Analisa sistem informasi akan membantu dalam mengetahui informasi – informasi tentang sistem yang sedang berjalan. Sehingga dengan analisa sistem, diharapkan bisa diketahui sejauh mana kebutuhan yang telah ditangani oleh sistem yang berjalan dan bagaimana agar kebutuhankebutuhan yang belum bisa terpenuhi dapat diberikan solusinya dan diterapkan dalam tahap perancangan sistem. 2. URAIAN PROSEDUR Langkah dalam membuat urutan prosedur mengacu pada prosedur yang ada dalam sistem pembelian barang, yaitu sebagai berikut : a. Pemesanan Staff Optik Penjualan menerima pesanan dari pelanggan kemudian staff optik penjualan membuat nota pesanan untuk diserahkan kepada pelanggan lalu pelanggan membayar DP atau uang muka. b. Pembayaran Nota pesanan yang diberikan kepada pelanggan digunakan untuk mengambil pesanan. Setelah pelanggan mendapatkan barang yang dipesan, selanjutnya staff optik penjualan membuat kwitansi yang akan diberikan kepada pelanggan sebagai bukti sisa pelunasan pembayaran lalu pelanggan melakukan pelunasan sisa pembayaran. c. Pembuatan Laporan Staff Optik Penjualan membuat laporan periode untuk diberikan kepada pimpinan setiap periode. 3. Analisa Proses a. Activity Diagram Transaksi Halaman 3 dari 51
  • 4. Diktat VB.Net Lanjutan Hadi Santoso b. Activity Diagram Pembayaran Pelunasan Pelanggan Serahkan nota pesanan Terima Barang Staff Optik Penjualan Terima nota pesanan Siapkan Barang Lakukan pelunasan pembayaran Terima pelunasan pembayaran Terima kwitansi Buat kwitansi c. Activity Diagram Pembuatan Laporan Halaman 4 dari 51
  • 5. Diktat VB.Net Lanjutan Hadi Santoso 4. Analisa Terapan Akuntansi Rancangan Sistem Akuntansi dimodelkan sebagai berikut : Kwitansi No. Kwitansi Nota Pesanan No NP : NP0001 Tanggal : 13-09-2007 Jumlah : Rp. 110,000 DP : Rp. 50,000 : KW0001 Sudah diterima dari : Tn. Heri Untuk Pembayaran : 1 pcs lensa dan frame Sejumlah : Rp. 60,000 Pangkalpinang, 03 - 03- 2010 ( .. ) JURNAL PENERIMAAN KAS No.Bukti Tanggal Kas Debet Kredit Pendapatan Pendapatan Diterima dimuka Diterima dimuka Penjualan NP0001 13-09-2007 50,000 - 50,000 - 15-09-2007 60,000 50,000 - 110,000 110,000 50,000 50,000 110,000 KW001 Kas Tanggal Keterangan 13-09-2007 Jurnal Penerimaan Kas No. Bukti No Rek : 11001 Kredit Saldo Debet NP0001 50,000 50,000 15-09-2007 Jurnal Penerimaan Kas KW0001 60,000 60,000 Pendapatan Diterima Dimuka Tanggal 13-09-2007 15-09-2007 Penjualan Tanggal 15-09-2007 Keterangan Jurnal Pend. Diterima dimuka Jurnal Pend. Diterima dimuka No. Bukti No Rek : 21001 Kredit Saldo Debet 50,000 NP0001 KW0001 Keterangan No. Bukti Debet Jurnal Penjualan KW0001 50,000 50,000 50,000 No Rek : 41001 Kredit Saldo 110,000 110,000 Jurnal Umum Debet No. Bukti Tanggal No. Rekening NP0001 NP0001 13-09-2007 13-09-2007 11001 21001 Kas Pend. Diterima Dimuka KW0001 KW0001 KW0001 15-09-2007 15-09-2007 15-09-2007 11001 21001 41001 Kas Pend. Diterima Dimuka Penjualan Kredit 50,000 60,000 Nama Rekening Jumlah 50,000 50,000 110,000 160,000 160,000 Halaman 5 dari 51
  • 6. Diktat VB.Net Lanjutan Hadi Santoso 5. Struktur Bagan Rekening Pemberian kode rekening menggunakan metode kode kelompok dengan sifat-sifat sebagai berikut : a. Posisi masing-masing angka mempunyai arti dimana angka paling kiri adalah kode kelompok dan angka paling kanan adalah kode jenis rekening. b. Kode kelompok akan terdiri dari angka-angka yang sudah diperkirakan terlebih dahulu. c. Setiap kode dalam klasifikasi menggunakan jumlah angka yang sama. d. Jika terjadi penambahan kelompok rekening, dapat dilakukan dengan merubah angka yang paling kiri. Berikut ini adalah penjabaran klasifikasi pemberian kode dengan menggunakan kode kelompok yang terdiri dari 5 angka : 1 1 0 0 1 Kelompok rekening Golongan rekening Jenis rekening Perluasan jenis rekening Kode kelompok dapat pula digunakan untuk menunjukkan hirarki data. Rincian susunan dan kode rekening yang dirancang dengan menggunakan kode kelompok : Nomor Perkiraan 11001 21001 41001 Nama Perkiraan Kas Pend. diterima dimuka Penjualan 6. Identifikasi Kebutuhan Rangkuman hasil analisa dalam bentuk uraian masalah yang berkaitan dengan pengelolaan sumber daya kebutuhan sistem-sistem perbaikan yang diinginkan dan segala sesuatu yang berkaitan dengan pelayanan yang diberikan sistem ke pengguna. Kebutuhan-kebutuhan yang diuraikan adalah kebutuhan yang ingin dicapai apabila rancangan sistem ini diimplementasikan. 1. Kebutuhan Masalah Usulan : Entry Data Pelanggan : Tidak adanya informasi yang jelas tentang biodata pelanggan yang menjadi langganan. : Disediakannya informasi dalam bentuk data pelanggan yang berisi mengenai biodata pelanggan yang menjadi langganan. Halaman 6 dari 51
  • 7. Diktat VB.Net Lanjutan Hadi Santoso 2. Kebutuhan Masalah Usulan : Entry Data Barang : Tidak adanya informasi yang jelas tentang data barang yang ada. : Disediakannya informasi dalam bentuk data barang yang berisi mengenai data barang yang tersedia. 3. Kebutuhan Masalah : Entry Data Rekening : Tidak adanya pencatatan data rekening akumulasi yang dipakai dalam pembuatan laporan keuangan yang dapat memudahkan dalam penyusunan. : rekening yang sering digunakan dalam membuat laporan-laporan keuangan. Usulan 4. Kebutuhan Masalah Usulan 6. Kebutuhan Masalah Usulan : Cetak Nota Pesanan : Kurang lengkapnya informasi yang terdapat pada nota pesanan pada sistem yang berjalan. : Dibuat sebuah proses yang dapat menghasilkan dokumen tersebut. : Cetak Kwitansi : Karena informasi dalam pencatatan kwitansi masih dilakukan secara tertulis, sehingga sering terjadi kesalahan dalam penulisan. : Ditambahkan informasi yang diperlukan pada faktur. 7. Kebutuhan Masalah Usulan : Laporan Penjualan : Belum memiliki laporan penjualan. : Disediakannya informasi berupa laporan mengenai penjualan barang sehingga dapat diketahui dengan akurat. 8. Kebutuhan Masalah Usulan : Laporan Jurnal Penerimaan Kas : Belum memiliki laporan jurnal penerimaan kas. : Disediakannya informasi berupa laporan jurnal penerimaan kas sehingga transaksi mengalirnya kas dapat diketahui dengan akurat. 10. Kebutuhan Masalah Usulan : Laporan Jurnal Umum : Belum memiliki laporan jurnal Umum. : Disediakannya informasi berupa laporan jurnal umum sehingga dapat diketahui dengan akurat. 7. Package Diagram Rancangan kebutuhan sistem digambarkan sebagai berikut : Halaman 7 dari 51
  • 8. Diktat VB.Net Lanjutan Hadi Santoso 8. Use Case Diagram a. Use Case Diagram File Master b. Use Case Diagram Transaksi c. Use Case Diagram Laporan Halaman 8 dari 51
  • 9. Diktat VB.Net Lanjutan Hadi Santoso 9. Use Case Description Berikut ini adalah deskripsi dari masing-masing Use Case yang digambarkan diatas : a. Package Diagram File Master 1) Data Barang Use Case Actor Deskripsi • • • • • • • • : Entry Data Pelanggan : Staff Optik Penjualan : staff optik penjualan buka form entry data-data pelanggan. kd_plg sudah otomatis dalam sistem. staff optik penjualan menginput nm_plg,alamat dan telepon. staff optik penjualan menekan tombol “SIMPAN” data pelanggan kedalam file pelanggan. Tombol “UBAH” digunakan untuk mengubah data pelanggan. Tombol “HAPUS” digunakan untuk menghapus data pelanggan. Tombol “BATAL” digunakan apabila tidak jadi mengentry data pelanggan. Tombol “TUTUP” digunakan untuk menutup layar data pelanggan. 2) Data Barang Use Case Actor Deskripsi • • • • • • • • : Entry Data Barang : Staff Optik Penjualan : staff optik penjualan buka form entry data-data barang. staff optik penjualan menginput kd_plg, satuan, jenis barang, dan harsat. nm_plg sudah otomatis dalam sistem. staff optik penjualan menekan tombol “SIMPAN” data pelanggan kedalam file pelanggan. Tombol “UBAH” digunakan untuk mengubah data pelanggan. Tombol “HAPUS” digunakan untuk menghapus data pelanggan. Tombol “BATAL” digunakan apabila tidak jadi mengentry data pelanggan. Tombol “TUTUP” digunakan untuk menutup layar data pelanggan. 3) Data Rekening Use Case Actor Deskripsi • • • • • • • : Entry Data Rekening : Staff Optik Penjualan : staff optik penjualan menginput data_data rekening yang berisi no_rek, dan nm_rek. no_rek, nm_rek, disimpan kedalam file rekening. Tombol “SIMPAN” data pelanggan kedalam file pelanggan. Tombol “UBAH” digunakan untuk mengubah data pelanggan. Tombol “HAPUS” digunakan untuk menghapus data pelanggan. Tombol “BATAL” digunakan apabila tidak jadi mengentry data pelanggan. Tombol “TUTUP” digunakan untuk menutup layar data pelanggan. Halaman 9 dari 51
  • 10. Diktat VB.Net Lanjutan Hadi Santoso b. Package Diagram File Transaksi 1) Cetak Nota Pesan Use Case Actor Deskripsi • • : Cetak Nota Pesanan : Staff Optik Penjualan : staff optik membuka form cetak nota pesanan. staff optik menekan tombol cetak untuk mencetak data nota pesanan yang sudah disimpan kedalam file nota pesanan. << include >> Entry Nota Pesan Use Case Actor Deskripsi • • • • • • • • • • • • : Entry Nota Pesan : Staff Optik Penjualan, pelanggan. : Staff optik penjualan buka form cetak nota pesan Nomer nota pesan dan tanggal nota pesan sudah otomatis dalam sistem Staff optik penjualan menginput kode pelanggan maka akan tampil data pelanggan Staff optik penjualan menginput kode barang lalu akan tampil data barang Lalu menginput jumlah pesan, sistem akan mengitung otomatis jumlah barang yang pesan berdasarkan perhitungan harga satuan * jumlah pesan Staff optik menginput jenis lensa yang berupa R, L, CLYR, CLYL, AXISR, AXISL, ADD, PD staff optik penjualan memilih tanggal selesai pesanan lalu menekan tombol “PESAN” untuk memasukan data barang kedalam tabel Sistem akan menghitung total berdasarkan perhitungan penjumlahan dari semua jumlah. Staff optik penjualan menginput dp yang diberikan oleh pelanggan lalu sistem akan menghitung sisa pembayaran berdasarkan perhitungan total – dp. Tombol “SIMPAN” data pelanggan kedalam file pelanggan. Tombol “BATAL” digunakan apabila tidak jadi mengentry data pelanggan. Tombol “TUTUP” digunakan untuk menutup layar data pelanggan. 2) Cetak kwitansi Use Case Actor Deskripsi • • : Cetak kwitansi : Staff Optik Penjualan : staff optik membuka form cetak kwitansi. staff optik menekan tombol cetak untuk mencetak data kwitansi yang sudah disimpan kedalam file kwitansi. << include >> Entry kwitansi Use Case Actor : Entry kwitansi : Staff Optik Penjualan, pelanggan. Halaman 10 dari 51
  • 11. Diktat VB.Net Lanjutan Hadi Santoso Deskripsi • • • • • • • : staff optik membuka form cetak kwitansi. No kwitansi dan tgl kwitansi sudah otomatis dalam sistem. Staff optik penjualan memilih nomer pesan yang sudah disimpan sebelumnya maka akan tampil data nomer pesan dan data pelanggan. Sistem akan menghitung sisa pembayaran berdasarkan perhitungan total – dp. Tombol “SIMPAN” data pelanggan kedalam file pelanggan. Tombol “BATAL” digunakan apabila tidak jadi mengentry data pelanggan. Tombol “TUTUP” digunakan untuk menutup layar data pelanggan. c. Package Diagram Cetak Laporan 1) Cetak Laporan Penjualan Use Case Actor Deskripsi • • • • : Cetak Laporan Penjualan : Pimpinan, Staff Optik Penjualan : Staff optik membuka form cetak laporan penjualan. Staff optik penjualan memasukkan tanggal awal dan tanggal akhir pada periode. Staff optik penjualan mengkilk tombol “CETAK” untuk mencetak laporan penjualan. Staff optik penjualan mengkilk tombol “TUTUP” untuk menutup layar laporan penjualan. 2) Cetak Laporan Jurnal Umum Use Case Actor Deskripsi • • • • : Cetak Laporan Jurnal Umum : Pimpinan, Staff Optik Penjualan. : Staff optik penjualan membukla form cetak laporan jurnal umum. Staff optik penjualan memasukkan tanggal awal dan tanggal akhir pada periode. Staff optik penjualan mengkilk tombol “CETAK” untuk mencetak laporan penjualan. Staff optik penjualan mengkilk tombol “TUTUP” untuk menutup layar laporan penjualan. 3) Cetak Laporan Jurnal Penerimaan Kas Use Case Actor Deskripsi • • • • : Cetak Laporan Jurnal Penerimaan Kas : Pimpinan, staff optik penjualan. : Staff optik membuka form cetak laporan jurnal penerimaan kas. Staff optik penjualan memasukkan tanggal awal dan tanggal akhir pada periode. Staff optik penjualan mengkilk tombol “CETAK” untuk mencetak laporan penjualan. Staff optik penjualan mengkilk tombol “TUTUP” untuk menutup layar laporan penjualan. Halaman 11 dari 51
  • 12. Diktat VB.Net Lanjutan Hadi Santoso 10. Rancangan Basis Data Class Diagram Halaman 12 dari 51
  • 13. Diktat VB.Net Lanjutan Hadi Santoso 11. Rancangan Basis Data a. Entity Relationship Diagram (ERD) Halaman 13 dari 51
  • 14. Diktat VB.Net Lanjutan Hadi Santoso b. Tranformasi ERD ke LRS kd_ plg nm _ plg almt tlp no_ np tgl _ masuk tgl _ selesai dp keterangan kd_plg no_np Pelanggan 1 dapat M Nota Pesanan 1 buat no_ np no _ kwt 1 Rekening no_ rek nm _ rek N Jurnal no_ kwt no _ rek tgl _ jurnal posisi jumlah M M pesan no_ np kd _ brg jml_psn hrg CLYR CLYL MTR MTL AXISL N Barang kd_ brg nm _ brg harsat jns_brg satuan AXISR Kwitansi no_ kwt tgl _ kwt ADD PD Halaman 14 dari 51
  • 15. Diktat VB.Net Lanjutan Hadi Santoso c. Logical Record Structure (LRS) Halaman 15 dari 51
  • 16. Diktat VB.Net Lanjutan Hadi Santoso 12. TABEL TABEL PELANGGAN No Nama Field 1 kd_plg 2 nm_plg 3 almt 4 telp Tipe Data Text Text Text Text Lebar 5 50 100 15 Desimal - Keterangan Kode Pelanggan Nama Pelanggan Alamat Pelanggan Telepon Pelanggan TABEL BARANG No Nama Field 1 kd_brg 2 nm_brg 3 har_Sat 4 jns_brg 5 Satuan Tipe Data Text Text Currency Text Text Lebar 5 50 8 20 4 Desimal - Keterangan Kode Barang Nama Barang Jumlah Barang Jenis Barang Harga satuan TABEL NOTAPESANAN No Nama Field 1 no_np 2 tgl_masuk 3 tgl_selesai 4 dp 5 Keterangan 6 kd_plg Tipe Data Text Date/Time Date/Time Currency Text Text Lebar 5 8 8 8 100 5 Desimal - Keterangan Nomor Nota Pesanan Tanggal masuk Tanggal Selesai Uang Muka Keterangan Kode Pelanggan TABEL PESAN No Nama Field 1 no_np 2 kd_brg 3 jml_psn 4 hrg 5 MTR 6 MTL 7 CLYR 8 CLYL 9 AXISR Tipe Data Text Text Number Currency Text Text Text Text Text Lebar 5 5 2 8 3 3 3 3 3 Desimal - 10 AXISL Text 3 - 11 12 ADD PD Text Text 3 3 - Keterangan Nomor Surat Pesanan Kode Barang Jumlah banyaknya Harga Pesan Mata kanan Mata kiri Silinder kanan Silinder kiri Sudut kelengkungan bola mata kanan Sudut kelengkungan bola mata kiri Penambahan baca Jarak Pupil Halaman 16 dari 51
  • 17. Diktat VB.Net Lanjutan Hadi Santoso TABEL JURNAL No Nama Field 1 no_kwt 2 no_rek 3 tgl_jurnal 4 posisi 5 jumlah Tipe Data Text Text Date/Time Text Currency Lebar 5 5 8 1 8 Desimal - Keterangan Nomor Bukti Nomor Rekening Tanggal Jurnal Posisi D/K Jumlah Saldo TABEL KWITANSI No Nama Field 1 no_kwt 2 tgl_kwt 3 no_np Tipe Data Text Date/Time Text Lebar 5 8 5 Desimal - Keterangan Nomor Kwitansi Tanggal Kwitansi Nomor Nota Pesanan Desimal - Keterangan Nomor Rekening Nama Rekening TABEL REKENING No Nama Field 1 no_rek 2 nm_rek Tipe Data Text Text Lebar 5 30 13. STRUKTUR TAMPILAN Halaman 17 dari 51
  • 18. Diktat VB.Net Lanjutan Hadi Santoso 14. MEMULAI VB.NET a. Pilih Create Project… untuk membuat project baru. b. Akan tampil jendela seperti gambar dibawah ini, kemudian isikan Name dengan prjoptik, selanjutnya klik tombol untuk menentukan lokasi penyimpanan aplikasi yang akan dibuat dalam contoh ini saya simpan di Local disk D: Halaman 18 dari 51
  • 19. Diktat VB.Net Lanjutan Hadi Santoso c. Setelah itu buat folder baru dengan nama PJOTIKATMA dan klik tombol Select Folder (lihat gambar dibawah ini). d. Langkah selanjutnya klik tombol OK. Halaman 19 dari 51
  • 20. Diktat VB.Net Lanjutan Hadi Santoso 15. MEMBUAT TABEL DENGAN MS. ACCESS 2007 a. Pilih Start -> All Programs -> Microsoft Office -> Microsoft Office Access 2007. b. Klik/Pilih Blank Database. c. Akan tampil dipojok kanan bawah Blank Database, kemudian klik put your database) (Browse for a location to Halaman 20 dari 51
  • 21. Diktat VB.Net Lanjutan Hadi Santoso d. Kemudian pilih Folder Local Disk D:prjoptikprjoptikbindebug sebagai penyimpanan database yang akan dibuat. e. Selanjutnya isi File name dengan DBOPTIK (nama database) dan klik tombol OK. f. lokasi Akan tampil jendela seperti dibawah ini dan File Name : DBOPTIK.accdb. Kemudian klik tombol Create. Halaman 21 dari 51
  • 22. Diktat VB.Net Lanjutan Hadi Santoso g. Setelah di klik tombol Create akan tampil jendela seperti dibawah ini dan selanjutnya untuk membuat Struktur table klik atau pada Table1 : Table klik kanan pilih Design View h. Kemudian akan tampil jendela Save As seperti gambar dibawah ini, selajutnya isi pada Table Name : PELANGGAN, setelah selesai klik tombol OK. Halaman 22 dari 51
  • 23. Diktat VB.Net Lanjutan i. Hadi Santoso Ketikkan pada Filed Name, Data Type dan Description sesuai dengan Tabel yang telah ada pada halaman 16 dan 17 dst. 16. MEMBUAT MENU Untuk membuat menu, pilih didalam toolbox lalu ketikkan nama menu sesuai dengan yang diinginkan Atau bisa juga dengan mengetikkan menu pada properties text Penggunaan tanda ”&” diantara nama menu, berfungsi agar menu dapat diakses menggunakan keyboard dengan menekan tombol alt disertai dengan huruf yang bergaris bawah. jika program sudah dijalankan, menu ini dapat diakses dengan menekan tombol ”alt dan m” secara bersamaan. Buatlah menu seperti gambar dibawah ini : Halaman 23 dari 51
  • 24. Diktat VB.Net Lanjutan Hadi Santoso Halaman 24 dari 51
  • 25. Diktat VB.Net Lanjutan Hadi Santoso ENTRY DATA BARANG Form Label Group Box1 TextBox Label ComboBox Button Group Box2 TextBox ListView Halaman 25 dari 51
  • 26. Diktat VB.Net Lanjutan Hadi Santoso OBJEK NAME TEXT PROPERTIES YANG DIUBAH Form1 frmBarang ENTRY DATA BARANG Label1 GroupBox1 Label2 Label3 Label4 Label5 Label6 Label7 Textbox1 Textbox2 Textbox3 Combobox1 Label1 Groupbox1 Label2 Label3 Label4 Label5 Label6 Label7 txtKdBrg txtNmBrg txtharSat cmbjenis ENTRY DATA BARANG Kode Barang Nama Barang Harga Satuan Rp. Jenis Barang Satuan (kosong) (kosong) (kosong) (kosong) Textbox5 Textbox6 GroupBox2 Button2 Button3 Button4 Button5 Button6 ListView1 txtsatuan counter Groupbox2 cmdSimpan cmdUbah cmdHapus cmdBatal cmdKeluar ListView1 (kosong) 0 SIMPAN UBAH HAPUS BATAL KELUAR - Font , Back Color, StartPosition = CenterScreen Font, Back Color Font, Back Color Font, Back Color Font, Back Color Font, Back Color Font, Back Color Font, Back Color Font, Back Color Font , Back Color Font, Back Color Font, Back Color Font, Back Color Item = Frame, Lensa Font, Back Color Font, Back Color Font, Back Color Font , Back Color Font , Back Color Font , Back Color Font, Back Color Font , Back Color View = Details Edit Column = Kode Barang, Nama Barang, Harga Satuan, Jenis Barang, Satuan MEMBUAT MODULE Untuk membuat Module, perlu menambahkan atribut baru berupa module pada project. Dengan cara: Klik kanan pada Project di Solution Explorer, kemudian pilih Add, Add Module Halaman 26 dari 51
  • 27. Diktat VB.Net Lanjutan Hadi Santoso Beri nama Module1.vb Ketikan code untuk module: Imports System.Data.Oledb Imports System.Data Module Module1 Public conn As New OleDbConnection Public strconn As String = "Provider=Microsoft.ACE.OLEDB.12.0;data source=" & Application.StartupPath & "dboptik.accdb" End Module MEMBUAT CLASS KONEKSI Fungsi dari Class koneksi ini adalah untuk menghubungkan form dengan database. Caranya adalah : Klik kanan pada Project di Solution Explorer, kemudian pilih Add, Class... Halaman 27 dari 51
  • 28. Diktat VB.Net Lanjutan Hadi Santoso Ketikan code untuk Class Koneksi: Imports System.Data.OleDb Imports System.Data Public Class Koneksi Dim conn As New OleDbConnection Public Function OpenConnection() As OleDbConnection conn = New OleDbConnection(strconn) If conn.State = ConnectionState.Closed Then Try conn.Open() Catch mex As OleDbException MsgBox("Koneksi ke Database Gagal", , "Error") Catch ex As Exception MsgBox(ex.Message) End Try End If Return conn End Function End Class Halaman 28 dari 51
  • 29. Diktat VB.Net Lanjutan Hadi Santoso MEMBUAT CLASS BARANG Untuk membuat Module, perlu menambahkan atribut baru berupa module pada project. Dengan cara: Klik kanan pada Project di Solution Explorer, kemudian pilih Add, Class... Ketikan code untuk Class Barang: Imports System.Data.OleDb Imports System.Data Public Class Clsbarang #Region "Variabel" Private xkdbrg As String Private xNmbrg As String Halaman 29 dari 51
  • 30. Diktat VB.Net Lanjutan Hadi Santoso Private xharsat As Double Private xjenis As String Private xsatuan As String Dim Dim Dim Dim sql As String = "" mycmd As OleDbCommand myread As OleDbDataReader hasRows As Boolean #End Region #Region "Property" Public Property kdbrg() As String Get Return xkdbrg End Get Set(ByVal value As String) xkdbrg = value End Set End Property Public Property nmbrg() As String Get Return xNmbrg End Get Set(ByVal value As String) xNmbrg = value End Set End Property Public Property harsat() As Double Get Return xharsat End Get Set(ByVal value As Double) xharsat = value End Set End Property Public Property jenis() As String Get Return xjenis End Get Set(ByVal value As String) xjenis = value End Set End Property Public Property satuan() As String Get Return xsatuan End Get Set(ByVal value As String) xsatuan = value End Set Halaman 30 dari 51
  • 31. Diktat VB.Net Lanjutan Hadi Santoso End Property #End Region #Region "Method" Public Function simpan() As Integer sql = "INSERT INTO Barang(kd_brg,Nm_brg,har_sat,jns_brg,satuan) " & _ "VALUES('" & xkdbrg & "','" & xNmbrg & "','" & xharsat & "','" & xjenis & "','" & xsatuan & "')" conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() mycmd = New OleDbCommand(sql, conn) Return mycmd.ExecuteNonQuery End Function Public Function hapus(ByVal varkdbrg As String) As Integer sql = "DELETE FROM Barang WHERE kd_brg='" & varkdbrg & "'" conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() mycmd = New OleDbCommand(sql, conn) Return mycmd.ExecuteNonQuery End Function Public Function ubah(ByVal varkdbrg As String) As Integer sql = "UPDATE Barang SET Nm_brg ='" & xNmbrg & "'," & _ "Har_sat='" & xharsat & "', jns_brg = '" & xjenis & "'," & _ " satuan = '" & xsatuan & "'" & _ " WHERE kd_brg='" & varkdbrg & "'" conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() mycmd = New OleDbCommand(sql, conn) Return mycmd.ExecuteNonQuery End Function #End Region End Class Halaman 31 dari 51
  • 32. Diktat VB.Net Lanjutan Hadi Santoso Ketikan code untuk Form Barang: Imports System.Data.OleDb Imports System.Data Public Class FrmBarang Dim obj As New Clsbarang Dim mycmd As OleDbCommand Dim myread As OleDbDataReader Dim strTemp As String = "" Dim strValue As String = "" Dim sql As String Private Sub FrmBarang_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'Koneksi Database conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() 'Untuk membuat kode otomatis Dim strtemp As String = "" Dim strvalue As String = "" sql = "SELECT * FROM Barang ORDER BY kd_brg DESC" mycmd = New OleDbCommand(sql, conn) myread = mycmd.ExecuteReader If myread.Read Then strtemp = Mid(myread.Item("kd_brg"), 3, 3) Else txtkdbrg.Text = "BG001" Exit Sub End If 'MsgBox(strTemp) strvalue = Val(strtemp) + 1 txtkdbrg.Text = "BG" & Mid("000", 1, 3 - strvalue.Length) & strvalue Call list_data() End Sub Private Sub bersih() txtnmbrg.Text = "" txtharsat.Text = "" cmbjenis.Text = "" txtsatuan.Text = "" txtnmbrg.Focus() End Sub Private Sub list_data() Call clear_list() Dim sqlx As String Dim x As Integer sqlx = "select kd_brg, nm_brg, har_sat, jns_brg, satuan from BARANG" conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() Halaman 32 dari 51
  • 33. Diktat VB.Net Lanjutan Hadi Santoso mycmd = New OleDbCommand(sqlx, conn) myread = mycmd.ExecuteReader Try While myread.Read = True x = Val(counter.Text) counter.Text = Str(Val(counter.Text) + 1) With ListView1 .Items.Add("") .Items(ListView1.Items.Count - 1).SubItems.Add("") .Items(ListView1.Items.Count - 1).SubItems.Add("") .Items(ListView1.Items.Count - 1).SubItems.Add("") .Items(ListView1.Items.Count - 1).SubItems.Add("") .Items(x).SubItems(0).Text = myread.GetString(0) .Items(x).SubItems(1).Text = myread.GetString(1) .Items(x).SubItems(2).Text = myread.GetValue(2) .Items(x).SubItems(3).Text = myread.GetString(3) .Items(x).SubItems(4).Text = myread.GetString(4) End With End While Finally myread.Close() End Try conn.Close() End Sub Private Sub clear_list() While Val(counter.Text) > 0 ListView1.Items(0).Remove() counter.Text = Val(counter.Text) - 1 End While End Sub cmdSimpan Private Sub cmdsimpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdsimpan.Click If txtkdbrg.Text = "" Then MessageBox.Show("Anda Harus Mengisi kode !!") txtkdbrg.Focus() Exit Sub ElseIf txtnmbrg.Text = "" Then MessageBox.Show("Anda Harus Mengisi Nama barang !!") txtnmbrg.Focus() Exit Sub ElseIf txtharsat.Text = "" Then MessageBox.Show("Anda Harus mengisi harga Barang !!") txtharsat.Focus() Exit Sub ElseIf cmbjenis.Text = "" Then MessageBox.Show("Anda Harus mengisi jenis Barang !!") cmbjenis.Focus() Exit Sub End If Halaman 33 dari 51
  • 34. Diktat VB.Net Lanjutan Hadi Santoso obj.kdbrg = txtkdbrg.Text obj.nmbrg = txtnmbrg.Text obj.harsat = txtharsat.Text obj.jenis = cmbjenis.Text obj.satuan = txtsatuan.Text If obj.simpan = 1 Then MessageBox.Show("Insert Data Berhasil !!") sql = "SELECT * FROM barang ORDER BY kd_brg DESC" mycmd = New OleDbCommand(sql, conn) myread = mycmd.ExecuteReader If myread.Read Then strTemp = Mid(myread.Item("kd_brg"), 3, 3) Else txtkdbrg.Text = "BG001" Exit Sub End If 'MsgBox(strTemp) strValue = Val(strTemp) + 1 txtkdbrg.Text = "BG" & Mid("000", 1, 3 - strValue.Length) & strValue Call bersih() Else MessageBox.Show("Insert Gagal !!") End If Call list_data() End Sub Klik 2x pada Listview1 ketikkan code seperti gambar berikut : Private Sub ListView1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListView1.Click txtkdbrg.Text = ListView1.SelectedItems(0).SubItems(0).Text.ToString txtnmbrg.Text = ListView1.SelectedItems(0).SubItems(1).Text.ToString txtharsat.Text = ListView1.SelectedItems(0).SubItems(2).Text.ToString cmbjenis.Text = ListView1.SelectedItems(0).SubItems(3).Text.ToString txtsatuan.Text = ListView1.SelectedItems(0).SubItems(4).Text.ToString End Sub UBAH cmdUbah Private Sub cmdubah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdubah.Click If txtnmbrg.Text = "" Then MessageBox.Show("Anda Harus Mengisi Nama Barang !!") txtnmbrg.Focus() Exit Sub ElseIf txtharsat.Text = "" Then MessageBox.Show("Anda Harus Mengisi Harga !!") txtharsat.Focus() Exit Sub ElseIf txtsatuan.Text = "" Then MessageBox.Show("Anda Harus Mengisi Harga !!") txtsatuan.Focus() Exit Sub End If Halaman 34 dari 51
  • 35. Diktat VB.Net Lanjutan Hadi Santoso Dim jawab As DialogResult jawab = MessageBox.Show("Anda yakin akan mengubah data ini ??", _ "DATA BARANG", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If jawab = Windows.Forms.DialogResult.Yes Then obj.kdbrg = txtkdbrg.Text obj.nmbrg = txtnmbrg.Text obj.harsat = txtharsat.Text obj.jenis = cmbjenis.Text obj.satuan = txtsatuan.Text If obj.ubah(txtkdbrg.Text) = 1 Then MessageBox.Show("Update Data Berhasil !!") sql = "SELECT * FROM barang ORDER BY kd_brg DESC" mycmd = New OleDbCommand(sql, conn) myread = mycmd.ExecuteReader If myread.Read Then strTemp = Mid(myread.Item("kd_brg"), 3, 3) Else txtkdbrg.Text = "BG001" Exit Sub End If 'MsgBox(strTemp) strValue = Val(strTemp) + 1 txtkdbrg.Text = "BG" & Mid("000", 1, 3 - strValue.Length) & strValue Else MessageBox.Show("Update Gagal !!") End If Call bersih() End If Call list_data() End Sub HAPUS cmdHapus Private Sub cmdhapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdhapus.Click Dim jawab As DialogResult jawab = MessageBox.Show("Anda yakin akan menghapus data ini ??", _ "DATA BARANG", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If jawab = Windows.Forms.DialogResult.Yes Then If obj.hapus(txtkdbrg.Text) = 1 Then MessageBox.Show("Delete Data Berhasil !!") sql = "SELECT * FROM barang ORDER BY kd_brg DESC" mycmd = New OleDbCommand(sql, conn) myread = mycmd.ExecuteReader If myread.Read Then strTemp = Mid(myread.Item("kd_brg"), 3, 3) Else txtkdbrg.Text = "BG001" Exit Sub End If Halaman 35 dari 51
  • 36. Diktat VB.Net Lanjutan Hadi Santoso 'MsgBox(strTemp) strValue = Val(strTemp) + 1 txtkdbrg.Text = "BG" & Mid("000", 1, 3 - strValue.Length) & strValue Else MessageBox.Show("Delete Gagal !!") End If Call bersih() End If Call list_data() End Sub BATAL cmdBatal Private Sub cmdbatal_Click(ByVal sender System.EventArgs) Handles cmdbatal.Click Call bersih() End Sub KELUAR As System.Object, ByVal e As cmdKeluar Private Sub cmdkeluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdkeluar.Click Dim jawab As DialogResult jawab = MessageBox.Show("Anda yakin akan Keluar Dari Entry Data ini ??", _ "PERINGATAN", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If jawab = Windows.Forms.DialogResult.Yes Then If conn.State <> ConnectionState.Closed Then conn.Close() Me.Dispose() End If End Sub Halaman 36 dari 51
  • 37. Diktat VB.Net Lanjutan Hadi Santoso MEMBUAT CLASS PELANGGAN Untuk membuat Class, dengan cara: Klik kanan pada Project di Solution Explorer, kemudian pilih Add, Class... Ketikan code untuk Class Pelanggan: Imports System.Data.OleDb Imports System.Data Public Class Clspelanggan #Region "Variabel" Private xkdplg As String Private xNmplg As String Private xalamat As String Private xtelp As String Dim Dim Dim Dim sql As String = "" mycmd As OleDbCommand myread As OleDbDataReader hasRows As Boolean #End Region Halaman 37 dari 51
  • 38. Diktat VB.Net Lanjutan Hadi Santoso #Region "Property" Public Property kdplg() As String Get Return xkdplg End Get Set(ByVal value As String) xkdplg = value End Set End Property Public Property nmplg() As String Get Return xNmplg End Get Set(ByVal value As String) xNmplg = value End Set End Property Public Property alamat() As String Get Return xalamat End Get Set(ByVal value As String) xalamat = value End Set End Property Public Property telp() As String Get Return xtelp End Get Set(ByVal value As String) xtelp = value End Set End Property #End Region #Region "Method" Public Function simpan() As Integer sql = "INSERT INTO Pelanggan(kd_plg,Nm_plg,almt,telp) " & _ "VALUES('" & xkdplg & "','" & xNmplg & "','" & xalamat & "','" & xtelp & "')" conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() mycmd = New OleDbCommand(sql, conn) Return mycmd.ExecuteNonQuery End Function Public Function hapus(ByVal varkdplg As String) As Integer sql = "DELETE FROM Pelanggan WHERE kd_plg='" & varkdplg & "'" conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() mycmd = New OleDbCommand(sql, conn) Return mycmd.ExecuteNonQuery End Function Halaman 38 dari 51
  • 39. Diktat VB.Net Lanjutan Hadi Santoso Public Function ubah(ByVal varkdplg As String) As Integer sql = "UPDATE Pelanggan SET Nm_plg ='" & xNmplg & "'," & _ "Almt='" & xalamat & "', telp = '" & xtelp & "'" & _ " WHERE kd_plg='" & varkdplg & "'" conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() mycmd = New OleDbCommand(sql, conn) Return mycmd.ExecuteNonQuery End Function #End Region End Class ENTRY DATA PELANGGAN Form Label Group Box1 Label TextBox Button Group Box2 TextBox ListView Halaman 39 dari 51
  • 40. Diktat VB.Net Lanjutan Hadi Santoso OBJEK NAME TEXT PROPERTIES YANG DIUBAH Form1 frmPelanggan ENTRY DATA PELANGGAN Label1 GroupBox1 Label2 Label3 Label4 Label5 Textbox1 Textbox2 Textbox3 Textbox5 Textbox6 GroupBox2 Button2 Button3 Button4 Button5 Button6 ListView1 Label1 Groupbox1 Label2 Label3 Label4 Label5 txtKdPlg txtNmPlg txtAlamat txtTelp counter Groupbox2 cmdSimpan cmdUbah cmdHapus cmdBatal cmdKeluar ListView1 ENTRY DATA PELANGGAN Kode Pelanggan Nama Pelanggan Alamat Telepon (kosong) (kosong) (kosong) (kosong) 0 SIMPAN UBAH HAPUS BATAL KELUAR - Font , Back Color, StartPosition = CenterScreen Font, Back Color Font, Back Color Font, Back Color Font, Back Color Font, Back Color Font, Back Color Font , Back Color Font, Back Color Font, Back Color Font, Back Color Font, Back Color Font, Back Color Font , Back Color Font , Back Color Font , Back Color Font, Back Color Font , Back Color View = Details Edit Column = Kode Pelanggan, Nama Pelanggan, Alamat, Telepon Ketikan code untuk Form Pelanggan: Imports System.Data.OleDb Imports System.Data Public Class FrmPelanggan Dim obj As New Clsbarang Dim mycmd As OleDbCommand Dim myread As OleDbDataReader Dim strTemp As String = "" Dim strValue As String = "" Dim sql As String Private Sub FrmPelanggan_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'Koneksi Database conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() 'Untuk membuat kode otomatis Dim strtemp As String = "" Dim strvalue As String = "" sql = "SELECT * FROM Pelanggan ORDER BY kd_plg DESC" mycmd = New OleDbCommand(sql, conn) myread = mycmd.ExecuteReader Halaman 40 dari 51
  • 41. Diktat VB.Net Lanjutan Hadi Santoso If myread.Read Then strtemp = Mid(myread.Item("kd_plg"), 3, 3) Else txtkdplg.Text = "PG001" Exit Sub End If 'MsgBox(strTemp) strvalue = Val(strtemp) + 1 txtkdplg.Text = "BG" & Mid("000", 1, 3 - strvalue.Length) & strvalue Call list_data() End Sub Private Sub cmdsimpan_Click(ByVal sender As System.EventArgs) Handles cmdsimpan.Click If txtkdplg.Text = "" Then MessageBox.Show("Anda Harus Mengisi txtkdplg.Focus() Exit Sub ElseIf txtnmplg.Text = "" Then MessageBox.Show("Anda Harus Mengisi txtnmplg.Focus() Exit Sub ElseIf txtalamat.Text = "" Then MessageBox.Show("Anda Harus mengisi txtalamat.Focus() Exit Sub ElseIf txttelepon.Text = "" Then MessageBox.Show("Anda Harus mengisi txttelepon.Focus() Exit Sub End If obj.kdplg = txtkdplg.Text obj.nmplg = txtnmplg.Text obj.alamat = txtalamat.Text obj.telp = txttelepon.Text System.Object, ByVal e As kode !!") Nama !!") Alamat !!") Telepon !!") If obj.simpan = 1 Then MessageBox.Show("Insert Data Berhasil !!") sql = "SELECT * FROM Pelanggan ORDER BY kd_plg DESC" mycmd = New OleDbCommand(sql, conn) myread = mycmd.ExecuteReader If myread.Read Then strTemp = Mid(myread.Item("kd_plg"), 3, 3) Else txtkdplg.Text = "PG001" Exit Sub End If 'MsgBox(strTemp) strValue = Val(strTemp) + 1 txtkdplg.Text = "PG" & Mid("000", 1, 3 - strValue.Length) & strValue Halaman 41 dari 51
  • 42. Diktat VB.Net Lanjutan Hadi Santoso Call bersih() Else MessageBox.Show("Insert Gagal !!") End If Call list_data() End Sub Private Sub bersih() txtnmplg.Text = "" txtalamat.Text = "" txttelepon.Text = "" txtnmplg.Focus() End Sub Private Sub list_data() Call clear_list() Dim sqlx As String Dim x As Integer sqlx = "select kd_plg, nm_plg, almt, telp from PELANGGAN" conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() mycmd = New OleDbCommand(sqlx, conn) myread = mycmd.ExecuteReader Try While myread.Read = True x = Val(counter.Text) counter.Text = Str(Val(counter.Text) + 1) With ListView1 .Items.Add("") .Items(ListView1.Items.Count - 1).SubItems.Add("") .Items(ListView1.Items.Count - 1).SubItems.Add("") .Items(ListView1.Items.Count - 1).SubItems.Add("") .Items(ListView1.Items.Count - 1).SubItems.Add("") .Items(x).SubItems(0).Text = myread.GetString(0) .Items(x).SubItems(1).Text = myread.GetString(1) .Items(x).SubItems(2).Text = myread.GetValue(2) .Items(x).SubItems(3).Text = myread.GetString(3) .Items(x).SubItems(4).Text = myread.GetString(4) End With End While Finally myread.Close() End Try conn.Close() End Sub Halaman 42 dari 51
  • 43. Diktat VB.Net Lanjutan Hadi Santoso Private Sub clear_list() While Val(counter.Text) > 0 ListView1.Items(0).Remove() counter.Text = Val(counter.Text) - 1 End While End Sub Private Sub ListView1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListView1.Click txtkdplg.Text = ListView1.SelectedItems(0).SubItems(0).Text.ToString txtnmplg.Text = ListView1.SelectedItems(0).SubItems(1).Text.ToString txtalamat.Text = ListView1.SelectedItems(0).SubItems(2).Text.ToString txttelepon.Text = ListView1.SelectedItems(0).SubItems(3).Text.ToString End Sub Private Sub cmdubah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdubah.Click If txtnmplg.Text = "" Then MessageBox.Show("Anda Harus Mengisi Nama Pelanggan !!") txtnmplg.Focus() Exit Sub ElseIf txtalamat.Text = "" Then MessageBox.Show("Anda Harus Mengisi alamat !!") txtalamat.Focus() Exit Sub ElseIf txttelepon.Text = "" Then MessageBox.Show("Anda Harus Mengisi Telepon !!") txttelepon.Focus() Exit Sub End If Dim jawab As DialogResult jawab = MessageBox.Show("Anda yakin akan mengubah data ini ??", _ "DATA PELANGGAN", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If jawab = Windows.Forms.DialogResult.Yes Then obj.kdplg = txtkdplg.Text obj.nmplg = txtnmplg.Text obj.alamat = txtalamat.Text obj.telp = txttelepon.Text If obj.ubah(txtkdplg.Text) = 1 Then MessageBox.Show("Update Data Berhasil !!") sql = "SELECT * FROM Pelanggan ORDER BY kd_plg DESC" mycmd = New OleDbCommand(sql, conn) myread = mycmd.ExecuteReader If myread.Read Then strTemp = Mid(myread.Item("kd_plg"), 3, 3) Else txtkdplg.Text = "PG001" Exit Sub End If 'MsgBox(strTemp) strValue = Val(strTemp) + 1 txtkdplg.Text = "PG" & Mid("000", 1, 3 - strValue.Length) & strValue Halaman 43 dari 51
  • 44. Diktat VB.Net Lanjutan Hadi Santoso Else MessageBox.Show("Update Gagal !!") End If Call bersih() End If Call list_data() End Sub Private Sub cmdhapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdhapus.Click Dim jawab As DialogResult jawab = MessageBox.Show("Anda yakin akan menghapus data ini ??", _ "DATA PELANGGAN", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If jawab = Windows.Forms.DialogResult.Yes Then If obj.hapus(txtkdplg.Text) = 1 Then MessageBox.Show("Delete Data Berhasil !!") sql = "SELECT * FROM Pelanggan ORDER BY kd_plg DESC" mycmd = New OleDbCommand(sql, conn) myread = mycmd.ExecuteReader If myread.Read Then strTemp = Mid(myread.Item("kd_plg"), 3, 3) Else txtkdplg.Text = "PG001" Exit Sub End If 'MsgBox(strTemp) strValue = Val(strTemp) + 1 txtkdplg.Text = "PG" & Mid("000", 1, 3 - strValue.Length) & strValue Else MessageBox.Show("Delete Gagal !!") End If Call bersih() End If Call list_data() End Sub Private Sub cmdkeluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdkeluar.Click Dim jawab As DialogResult jawab = MessageBox.Show("Anda yakin akan Keluar Dari Entry Data ini ??", _ "PERINGATAN", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If jawab = Windows.Forms.DialogResult.Yes Then If conn.State <> ConnectionState.Closed Then conn.Close() Me.Dispose() End If End Sub Private Sub cmdbatal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdbatal.Click Call bersih() End Sub End Class Halaman 44 dari 51
  • 45. Diktat VB.Net Lanjutan Hadi Santoso MEMBUAT CLASS REKENING Untuk membuat Class, dengan cara: Klik kanan pada Project di Solution Explorer, kemudian pilih Add, Class... Ketikan code untuk Class Rekening: Imports System.Data.OleDb Imports System.Data Public Class ClsRekening #Region "Variabel" Private xnorek As String Private xNmrek As String Dim Dim Dim Dim sql As String = "" mycmd As OleDbCommand myread As OleDbDataReader hasRows As Boolean #End Region Halaman 45 dari 51
  • 46. Diktat VB.Net Lanjutan Hadi Santoso #Region "Property" Public Property norek() As String Get Return xnorek End Get Set(ByVal value As String) xnorek = value End Set End Property Public Property nmrek() As String Get Return xNmrek End Get Set(ByVal value As String) xNmrek = value End Set End Property #End Region #Region "Method" Public Function simpan() As Integer sql = "INSERT INTO Rekening(no_rek,Nm_rek) " & _ "VALUES('" & xnorek & "','" & xNmrek & "')" conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() mycmd = New OleDbCommand(sql, conn) Return mycmd.ExecuteNonQuery End Function Public Function hapus(ByVal varnorek As String) As Integer sql = "DELETE FROM Rekening WHERE no_rek='" & varnorek & "'" conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() mycmd = New OleDbCommand(sql, conn) Return mycmd.ExecuteNonQuery End Function Public Function ubah(ByVal varnorek As String) As Integer sql = "UPDATE Rekening SET Nm_rek ='" & xNmrek & "'" & _ " WHERE no_rek='" & varnorek & "'" conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() mycmd = New OleDbCommand(sql, conn) Return mycmd.ExecuteNonQuery End Function #End Region End Class Halaman 46 dari 51
  • 47. Diktat VB.Net Lanjutan Hadi Santoso ENTRY DATA REKENING Form Label Group Box1 TextBox Label Button Group Box2 TextBox ListView OBJEK NAME TEXT Form1 frmRekening ENTRY DATA REKENING Label1 GroupBox1 Label2 Label3 Textbox1 Textbox2 Textbox6 GroupBox2 Button2 Button3 Button4 Button5 Button6 ListView1 Label1 Groupbox1 Label2 Label3 txtkdrek txtNmrek Counter Groupbox2 cmdSimpan cmdUbah cmdHapus cmdBatal cmdKeluar ListView1 ENTRY DATA REKENING No. Rekening Nama Rekening (kosong) (kosong) 0 SIMPAN UBAH HAPUS BATAL KELUAR - PROPERTIES YANG DIUBAH Font , Back Color, StartPosition = CenterScreen Font, Back Color Font, Back Color Font, Back Color Font, Back Color Font , Back Color Font, Back Color Font, Back Color Font, Back Color Font , Back Color Font , Back Color Font , Back Color Font, Back Color Font , Back Color View = Details Edit Column = No. Rekening, Nama Rekening Halaman 47 dari 51
  • 48. Diktat VB.Net Lanjutan Hadi Santoso Ketikan code untuk Class Rekening: Imports System.Data.OleDb Imports System.Data Public Class FrmRekening Dim obj As New ClsRekening Dim mycmd As OleDbCommand Dim myread As OleDbDataReader Dim strTemp As String = "" Dim strValue As String = "" Dim sql As String Private Sub FrmRekening_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'Koneksi Database conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() Call list_data() End Sub Private Sub cmdsimpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdsimpan.Click If txtnorek.Text = "" Then MessageBox.Show("Anda Harus Mengisi nomor rekening !!") txtnorek.Focus() Exit Sub ElseIf txtnmrek.Text = "" Then MessageBox.Show("Anda Harus Mengisi Nama !!") txtnmrek.Focus() Exit Sub End If obj.norek = txtnorek.Text obj.nmrek = txtnmrek.Text If obj.simpan = 1 Then MessageBox.Show("Insert Data Berhasil !!") sql = "SELECT * FROM Rekening ORDER BY no_rek DESC" mycmd = New OleDbCommand(sql, conn) myread = mycmd.ExecuteReader Call bersih() Else MessageBox.Show("Insert Gagal !!") End If Call list_data() End Sub Halaman 48 dari 51
  • 49. Diktat VB.Net Lanjutan Hadi Santoso Private Sub bersih() txtnorek.Text = "" txtnmrek.Text = "" txtnorek.Focus() End Sub Private Sub list_data() Call clear_list() Dim sqlx As String Dim x As Integer sqlx = "select no_rek, nm_rek from REKENING" conn = New OleDbConnection(strconn) If conn.State <> ConnectionState.Closed Then conn.Close() conn.Open() mycmd = New OleDbCommand(sqlx, conn) myread = mycmd.ExecuteReader Try While myread.Read = True x = Val(counter.Text) counter.Text = Str(Val(counter.Text) + 1) With ListView1 .Items.Add("") .Items(ListView1.Items.Count - 1).SubItems.Add("") .Items(x).SubItems(0).Text = myread.GetString(0) .Items(x).SubItems(1).Text = myread.GetString(1) End With End While Finally myread.Close() End Try conn.Close() End Sub Private Sub clear_list() While Val(counter.Text) > 0 ListView1.Items(0).Remove() counter.Text = Val(counter.Text) - 1 End While End Sub Private Sub ListView1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListView1.Click txtnorek.Text = ListView1.SelectedItems(0).SubItems(0).Text.ToString txtnmrek.Text = ListView1.SelectedItems(0).SubItems(1).Text.ToString End Sub Halaman 49 dari 51
  • 50. Diktat VB.Net Lanjutan Hadi Santoso Private Sub cmdubah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdubah.Click If txtnorek.Text = "" Then MessageBox.Show("Anda Harus Mengisi nomor rekening !!") txtnorek.Focus() Exit Sub ElseIf txtnmrek.Text = "" Then MessageBox.Show("Anda Harus Mengisi Nama !!") txtnmrek.Focus() Exit Sub End If Dim jawab As DialogResult jawab = MessageBox.Show("Anda yakin akan mengubah data ini ??", _ "DATA REKENING", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If jawab = Windows.Forms.DialogResult.Yes Then obj.norek = txtnorek.Text obj.nmrek = txtnmrek.Text If obj.ubah(txtnorek.Text) = 1 Then MessageBox.Show("Update Data Berhasil !!") sql = "SELECT * FROM REKENING ORDER BY no_rek DESC" mycmd = New OleDbCommand(sql, conn) myread = mycmd.ExecuteReader Else MessageBox.Show("Update Gagal !!") End If Call bersih() End If Call list_data() End Sub Private Sub cmdhapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdhapus.Click Dim jawab As DialogResult jawab = MessageBox.Show("Anda yakin akan menghapus data ini ??", _ "DATA REKENING", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If jawab = Windows.Forms.DialogResult.Yes Then If obj.hapus(txtnorek.Text) = 1 Then MessageBox.Show("Delete Data Berhasil !!") sql = "SELECT * FROM REKENING ORDER BY no_rek DESC" mycmd = New OleDbCommand(sql, conn) myread = mycmd.ExecuteReader Else MessageBox.Show("Delete Gagal !!") End If Call bersih() End If Call list_data() End Sub Halaman 50 dari 51
  • 51. Diktat VB.Net Lanjutan Hadi Santoso Private Sub cmdkeluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdkeluar.Click Dim jawab As DialogResult jawab = MessageBox.Show("Anda yakin akan Keluar Dari Entry Data ini ??", _ "PERINGATAN", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If jawab = Windows.Forms.DialogResult.Yes Then If conn.State <> ConnectionState.Closed Then conn.Close() Me.Dispose() End If End Sub Private Sub cmdbatal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdbatal.Click Call bersih() End Sub End Class Halaman 51 dari 51