Anda di halaman 1dari 70

Tutorial Visual Basic 6.

0
Membuat Program Logistik Barang
( Inventory System )
Imam Budi Kustanto
sim_rusak@yahoo. com

Lisensi Dokumen:
Copyright 2003 - 2006 IlmuKomputer.Com
Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan
secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau
merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen.
Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu
dari IlmuKomputer.Com.

Pengantar
Suatu ketika seorang teman datang kepada saya. Saya pengin sekali bisa bikin program.
Sekarang saya lagi coba belajar Visual Basic. Tapi rasanya kok susah banget, ya?!! Ngga
seperti program lainnya katanya Perintahnya banyak sekali. Ngga muat otak saya
My God !!! Coba saja kalau dari awal ia mengenal komputer yang dipelajari adalah ViBas,
tentunya sekarang yang ia katakan susah adalah Microsoft Word, Excell atau yang lainnya.
Dalam Word, asal bisa baca tulisan pada keyboard, saya yakin semua orang pasti bisa bikin
surat. Cukup ditambah mengerti perintah mencetak, jadilah surat yang ia inginkan. Entah
bagaimanapun prosesnya.
Demikian juga halnya dengan ViBas. Untuk bisa membuat sebuah program aplikasi itu
tidak mesti harus menguasai semua teori tentang ViBas. Asal logika jalan, semisal hanya
bisa struktur If...Then sajapun itu sudah bisa digunakan untuk membuat sebuah program
yang jadi. Karena pada prinsipnya, semua software adalah sama mudahnya ( atau bisa jadi
malahan sama sama sulitnya ?? ).
Tutorial ini mencoba membahas tentang langkah langkah membuat sebuah program
aplikasi berbasis Visual Basic dari awal sampai akhir. Dari memahami sistem database
yang akan kita buat sampai mengemasnya ( packaging ) menjadi program yang siap saji (
emangnya makanan ).
Namun penulis tidak akan mengulas banyak tentang dasar dasar ViBas. Karena sudah
banyak artikel yang mengulas secara panjang tentang itu. Di IKC ada Krishna D.
Octovhiana dengan serial Cepat Mahir Visual Basic 6.0 nya. Di situ semua sudah
lengkap ( sampe sampe penulis bingung mo nambahin yang mana ).
Sedikit yang perlu penulis tekankan adalah bahwa penggunaan struktur If Then
sebaiknya anda pahami bener bener dulu. Yang lainnya sambil jalan juga nggak papa.
Tool yang perlu dipersiapkan adalah Microsoft Visual Basic 6.0, dilengkapi dengan True
DBGrid 6.0. Untuk aplikasi databasenya menggunakan Microsoft Office Access, serta
Seagate Crystal Report 8.0 untuk membuat laporannya ( reporting ).
Akhirnya, tak ada gading yang tak retak, tak ada tulang yang tak patah. Semoga sedikit
yang dapat saya berikan ini dapat bermanfaat bagi pembaca sekalian.
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

TUTORIAL 1
MICROSOFT ACCESS DATABASE SYSTEM & ODBC
A. Basis Data ( Database )
Secara umum definisi Basis Data atau Database adalah kumpulan data yang saling
berhubungan. Dalam implementasinya data tersebut berbentuk Tabel.
Tabel adalah obyek database yang memuat record ( row / baris ) dimana masing
masing record tersebut merupakan gabungan dari beberapa sifat data yang identik.
Nilai nilai yang terkandung dalam sifat data tersebut disebut field ( column / kolom ).
Dalam penerapannya, perangkat lunak ( software ) yang digunakan untuk mengelola
database ini disebut database management system ( DBMS ). Dan jika menggunakan
model relasi maka disebut relational database management system atau disingkat
RDBMS.
RDBMS mempunyai fasilitas untuk memproses, mendefinisikan, membuat serta
memanipulasi database dalam berbagai aplikasi.
Salah satu contoh software RDBMS yang sering digunakan adalah Microsoft SQL dan
Microsoft Office Access.
B. Tabel, Record, dan Field
Jika database dapat dianalogkan sebagai filling cabinet, maka tabel ( table ) adalah
salah satu rak dari filing cabinet tersebut.
Setiap rak akan memuat beberapa dokumen yang merupakan analogi dari record,
sementara field dapat digambarkan sebagai isian dari dokumennya.
Dalam definisi formal basis data, record adalah suatu entitas ( kesatuan yang memiliki
arti tunggal atau tidak memiliki kesamaan arti ).
Sebagai isian dokumen, sebuah field menggambarkan karakteristik dari sebuah obyek
record.
Kesatuan entitas entitas ( yang terstruktur ) tersebut inilah yang disebut sebagai tabel.
Atribut adalah sebuah nilai yang merupakan sifat dari sebuah obyek yang merupakan
interseksi dari record dan field.
Field

Nama

Alamat

Umur

No. Telepon

Kode

Fulan
Fulan

Jln Pahlawan 42
Jln Pendekar 12

21 th
21 th

08188888
08188889

1
2

Record
Si Fulan yang beralamat di Jalan Pahlawan No. 42, berumur 21 tahun dengan Nomor
telepon 08188888 dengan kode 1 dianggap mewakili satu record. Sedangkan Fulan
pada record pertama dan Fulan pada record kedua adalah mewakili salah satu field
yaitu field Nama.

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

Untuk membedakan 2 nama Fulan sebagaimana tabel di atas, maka setiap tabel harus
mempunyai pengenal ( identifier ) yang unik, yang keberadaannya digunakan sebagai
pembeda antara record satu dengan record yang lainnya.
Identifier diletakkan dalam sebuah field tertentu, dan selanjutnya field ini disebut
sebagai field kunci utama ( primary key ).
Contoh : Kode ( dalam ilustrasi tabel di atas ) dapat difungsikan sebagai primary key.
Oleh karenanya kode tidak boleh sama antara record satu dengan record
lainnya.
Dalam sebuah database, field kunci utama berfungsi untuk menjaga integritas /
kesatuan informasi yang ada. Satu tabel dapat memuat satu kunci utama, dan beberapa
kunci tamu. Kunci tamu adalah kunci utama yang keberadaannya tergantung pada satu
kunci utama tertentu.

Dalam ilustrasi diatas, pada tabel pertama, IDNasabah adalah kunci utama, sedangkan
IDAlamat dan IDKet_Keluarga adalah kunci tamu. ID tersebut sendiri adalah kunci
utama dari tabel kedua dan ketiga.
C. Relasi Database
Dalam sebuah relasi database, tabel yang memuat kunci utama yang digunakan sebagai
referensi kunci utama tabel lainnya disebut tabel induk ( parent ) sedangkan tabel yang
memuat kunci tamu disebut tabel anak ( child ).
Ada 3 bentuk relasi yang lazim digunakan, antara lain:
1. relasi one to one. Relasi ini meyatakan bahwa hanya satu record pada tabel anak
yang dapat direlasikan dengan satu record pada tabel induk.
Field kunci utama yang digunakan sebagai kunci utama pada tabel lainnya disebut
field relasi.
2. relasi one to many. Relasi ini meyatakan bahwa beberapa record pada tabel anak
dapat direlasikan dengan satu record pada tabel induk.
3. relasi many to many. Relasi ini meyatakan bahwa beberapa record pada tabel anak
dapat direlasikan dengan satu record pada tabel induk, dan sebaliknya beberapa
record pada tabel induk dapat direlasikan pada satu record pada tabel anak. Namun
dalam perancangan tabel. Relasi many to many dari 2 tabel tidak lazim / tidak boleh
dilakukan, karena hal itu menjadikan field kunci tidak lagi bersifat unik.
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

D. Tipe Data Field


Tipe data field adalah jenis atau sifat yang melekat pada suatu field. Dalam aplikasinya
tipe data field berupa bilangan dan teks.
Contoh tipe data field dalam Microsoft Acces
Text
: digunakan untuk menyimpan data teks, angka yang tidak dioperasihitungkan. Dapat memuat maksimal 255 karakter.
Number
: digunakan untuk menyimpan data numerik (angka yang dioperasihitungkan )
Date / Time : digunakan untuk menyimpan data tanggal dan waktu
Yes / No
: digunakan untuk menyimpan data logika ( ya dan tidak, benar dan
salah, atau on dan off )
AutoNumber : digunakan untuk menyimpan data numerik yang akan berubah secara
otomatis jika satu record ditambahkan pada tabel.
Currency
: digunakan untuk meyimpan nilai mata uang. Dapat menampung
sampai 15 digit ke kiri dan 4 digit ke kanan titik desimal.
Memo
: fungsinya hampir sama dengan text, tetapi memo dapat menampung
sampai dengan 64000 karakter.
Hiperlink
: digunakan untuk menyimpan suatu link alamat ( IP Address )
E. Query
Query adalah metode untuk mengakses record record dari satu tabel atau lebih yang
mempunyai atribut sesuai dengan kriteria kreiteria tertentu.
Ada banyak cara untuk menggunakan Query. Diantaranya adalah dengan menggunakan
statemen SQL, Microsoft Query ataupaun dengan menggunakan Microsoft Access.
Penggunaan statemen SQL lebih rumit jika dibandingkan dengan menggunakan
Microsoft Query dan Microsoft Access.
Dalam Microsoft Access, query adalah fasilitas yang digunakan untuk menentukan
serta mengelompokkan field dan record dari satu tabel atau lebih, atau juga query
lainnya yang mempunyai relasi dengan suatu kriteria tertentu.
Penggunaan query dalam aplikasi database menjadikan proses manipulasi data menjadi
lebih mudah.
Operator kriteria ( criteria ) dalam Microsoft Access mengkondisikan penyeleksian data
di query sesuai dengan kriteria yang diharapkan.
Macam macam jenis operator :
1. Comparison atau perbandingan. Operator ini bisa digunakan pada tipe data text,
number, dan date. Terdiri dari :
<
kurang dari
>
lebih dari
=
sama dengan
<=
kurang dari atau sama dengan
>=
lebih dari atau sama dengan
<>
tidak sama dengan

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

2. Between and digunakan untuk mencari range dengan nilai tertentu. Misalnya
between 01/01/2005 and 12/12/2005 artinya sebuah rentang waktu antara tanggal 1
Januari 2005 sampai dengan 12 Desember 2005.
3. Karakter wildcard ( * atau ? ) biasa diawali dengan kata Like . Dan aplikasi
Microsoft Access akan secara otomatis menambahkan kala Like dan tanda petik
sebelum kriteria yang mengandung wildcard.
Misalnya kriteria like b* mengandung arti sebuah kriteria yang menyatakan
semua kata yang berawalan huruf b .
4. Aritmetika digunakan pada operasi hitung. Dapat digunakan pada tipe data numerik
dan date. Terdiri dari :
+
untuk operasi penjumlahan
untuk operasi pengurangan
*
untuk operasi perkalian
/
untuk operasi pembagian
5. Operator Fungsi merupakan suatu perintah yang digunakan untuk mengkonversi
atau mengambil nilai tertentu dari suatu field. Macam macam fungsi :
Str ( field numeric ) : untuk mengkonversi nilai numerik menjadi text.
Val ( field text )
: untuk mengkonversi data text yang berupa angka menjadi
data numeric.
Right ( field text ) : mengambil karakter dari sebelah kanan.
Left ( field text )
: untuk mengambil karakter dari sebelah kiri.
Mid ( field text )
: untuk mengambil karakter antara / tengah.
Date ()
: untuk mengambil tanggal dari system.
Day ( field date ) : untuk mengambil nilai tanggal dari suatu data bertipe date /
time. Nilai yang dihasilkan bertipe data numeric. Fungsi
yang bersamaan dengannya adalah operator Month ( field
date ) dan Year ( field date ).
IsNull
: untuk mengambil / field yang tidak diisi atau belum terisi.
Kebalikannya adalah NotIsNull.
6. Operator Logika digunakan untuk memberi dua atau lebih ( menggabungkan )
kriteria suatu field. Operator yang sering dipakai antara lain :
And untuk memberi 2 kriteria yang harus dipenuhi semuanya.
Or
untuk memberi 2 kriteria yang salah satu atau keduanya harus terpenuhi.
Not
untuk memberi kriteria bukan

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

Desain Sistem Database


Bagi pembaca yang lebih familier menggunakan Microsoft SQL Server untuk aplikasi
databasenya, dapat menggunakan software tersebut. Karena langkah langkahnya relative
sama dengan menggunakan Microsoft Office Access.
Nama file database atau nama databasenya jika menggunakan Microsoft SQL sebenarnya
tidak mengikat. Anda dapat menggunakan nama lain yang mungkin berbeda dengan yang
penulis gunakan.
1. Buka Microsoft Office Acces, buat sebuah database baru dengan nama
DB_LogHIS.mdb, simpan dalam sub folder Data pada direktori C:\LogHIS
2. Tabel yang pertama kita buat adalah tabel tabel pendukung, antara lain :

( double click Create


table in Design View )

buat field seperti gambar di bawah ini :

Lalu simpan ( press F12 ) dengan nama mstJenisBarang.


Tabel tersebut tidak memerlukan ID / primary key, sehingga ketika muncul task berisi
konfirmasi tentang tidak adanya primari key yang terdefinisi, kita abaikan saja dengan
memilih No

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

3. Jangan dulu ditutup tabel tersebut, berturut turut simpan kembali tabel tersebut ( press
F12 ) dengan nama lain yaitu : mstSatuanBarang, mstBuktiTerima,
mstDasarTerima, mstBuktiKeluar, dan terakhir mstDasarKeluar.

4. Mengulang langkah ke 2 di atas, tabel ke 7 yang kita buat adalah tabel DataRekanan
FieldName
Type
Description
IDRekanan
AutoNumber
Sebagai Primary Key
Nama
Text
Alamat
Text
Telp
Text
NPWP
Text
Dalam tabel ini IDRekanan kita jadikan sebagai kunci utama, caranya klik kanan pada
field tersebut lalu pilih Primary Key.
5. Tabel DataUnitKerja
FieldName
IDUnitKerja
Nama
Kepala
NIP

Type
AutoNumber
Text
Text
Text

Description
Sebagai Primary Key

Type
AutoNumber
Text
Text
Text

Description
Sebagai Primary Key

Type
AutoNumber
Text
Text
Text
Number
Number

Description
Sebagai Primary Key

6. Tabel DataPengelola
FieldName
IDPengelola
Nama
Jabatan
NIP
7. Tabel DataBarang
FieldName
IDBarang
Nama
Satuan
Jenis
HargaSatuan
JmlPersediaan

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

8. Tabel DataDistribusi
FieldName
Type
Description
IDDistribusi
AutoNumber
Sebagai Primary Key
KodeDistribusi
Text
Tanggal
Date / Time
IDPengelola
Number
IDRekanan
Number
IDUnitKerja
Number
IDBarang
Number
DasarTerima
Text
NoDasarTerima
Text
BuktiTerima
Text
NoBuktiTerima
Text
DasarKeluar
Text
NoDasarKeluar
Text
BuktiKeluar
Text
NoBuktiKeluar
Text
JumlahBarang
Number
NilaiRupiah
Number
Keterangan
Text
Pada Field Properties ( task dibawahnya ) dari tabel ini, untuk field IDPengelola,
IDRekanan, IDUnitKerja dan IDBarang , pada bagian Default Value jika defaultnya
tertulis nol ( 0 ), maka hapuslah dan biarkan kosong.
9. Setelah table table terbentuk, kita buat relationship-nya. Caranya, klik kanan area
kosong bidang kerja Access, pilih Relationships.
Ketika muncul task Show Table, masukan ( seleksi table
klik Add ) tabel
DataDistribusi, DataBarang, DataRekanan, DataUnitKerja, dan Data Pengelola.

10. Setelah itu, klik Close untuk menutup task.


11. Untuk membuat relasi tabel, kita tinggal drag n drop antar field yang akan kita
relasikan. DataDistribusi kita fungsikan sebagai tabel induk.
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

Primary Key atau Kunci Utamanya adalah field IDDistribusi. Sedangkan


IDPengelola, IDRekanan, IDUnitKerja dan IDBarang difungsikan sebagai kunci
tamu.

klik OK.

12. Setelah selesai, lalu save and close.

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

MICROSOFT ACCESS DRIVER ( *.mdb )


ODBC ( OPEN DATABASE CONECTION )
Sesuai dengan namanya, ODBC adalah sebuah database terbuka yang dapat diakses oleh
beberapa aplikasi. Dalam sebuah aplikasi jaringan, pada umumnya ODBC inilah yang
membuat sebuah aplikasi dikatakan menjadi sebuah aplikasi jaringan ( Client Server ).
Dengan menggunakan ODBC maka hanya perlu menetapkan satu kali aturan saja untuk
dapat berhubungan dengan file database yang digunakan.
Ada 3 jenis pengaturan koneksi data base ( Data Source Name atau DSN ) yang dapat
dibuat baik di komputer server maupun klien.
1. User DSN
: adalah ODBC yang hanya berlaku untuk pengguna yang membuat DNS
tersebut dan hanya bisa digunakan pada komputer dimana ODBC
tersebut dibuat.
2. System DSN : adalah ODBC yang bisa digunakan oleh semua pengguna ( user ) pada
komputer dimana ODBC tersebut dibuat.
3. File DSN
: adalah ODBC yang dapat digunakan bersama ( share / sharing ) dalam
suatu jaringan, sepanjang komputer pengguna mempunyai ODBC yang
sesuai dengan File DSN tersebut
Jenis jenis file yang dapat digunakan sebagai data source antara lain file dengan ekstensi
*.xls atau *.mdb atau *.dbf atau tabel dan database Visual Foxpro serta masih
banyak yang lainnya.
Setelah database kita buat, langkah selanjutnya adalah membuat sebuah koneksi yang
menghubungkan database tersebut dengan aplikasi lainnya, yaitu menggunakan OBDC.
Caranya Start Control Panel Administration Tools ( dalam group Performance and
Maintenance ) ODBC.
Klik Add,

pilih Microsoft Access Driver ( *.mdb) lalu Finish


Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

10

ketik nama data source pada field Data Source Name,

lalu klik Select, dan browse dan pilih file database yang telah kita buat sebelumnya,
terakhir klik OK hingga keluar dari task pane.

Dengan koneksi tersebut, akan memudahkan kita dalam memanipulasi, link, maupun
export dan import data, dari dan ke file database tersebut.
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

11

Tutorial Visual Basic 6.0


Membuat Program Logistik Barang
( Inventory System )
Imam Budi Kustanto
sim_rusak@yahoo. com

Lisensi Dokumen:
Copyright 2003 - 2006 IlmuKomputer.Com
Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan
secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau
merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen.
Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu
dari IlmuKomputer.Com.

TUTORIAL 2
FORM & SCRIPT CODE ( 01 )
Sebagai langkah persiapan, buat folder kerja anda pada direktori C:\ dengan nama
LogHIS. Dalam folder tersebut buat beberapa sub folder baru, masing masing Images (
untuk menyimpan file gambar ), Data ( untuk menyimpan file data ), Form ( untuk
menyimpan file *.frm ), dan Report ( untuk menyimpan file *.rpt ).
Buat file gambar ukuran 800 x 600 pixel lalu simpan dalam sub folder Images dengan
nama background.jpg. File ini akan kita fungsikan sebagai background dari tampilan
form - form yang ada dalam proyek kita nanti.
Contoh background.jpg sederhana ( anda bisa menggunakan Adobe Photoshop etc untuk
membuatnya lebih cantik lagi ) :

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

12

Copy file Harrow.cur yang ada di C:\Windows\Cursor ke dalam folder kerja


C:\LogHIS\Images. File cursor ini kita jadikan sebagai mouse pointer shortcut dan
tombol.
Dengan program icon editor yang anda punya atau copy & rename file icon yang sudah
ada, buatlah sebuah file icon dengan nama loghis.ico, simpan dalam sub folder Images.

Form1( MenuUtama.frm)
1.
2.

3.
4.

5.

6.

Jalankan Microsoft Visual Basic 6.0, buat proyek baru jenis Standard EXE
Defaultnya, dalam proyek baru tersebut sudah tersedia sebuah form kosong dengan
nama Form1, atur properti formnya sebagai berikut :
Border Style
= 0-None
Picture
= ( browse pada direktori) C:\LogHIS\Images\background.jpg
StartupPosition
= 2-CenterScreen
Atur luas area Form1 menyesuaikan luas background.
Setelah itu, buat 13 buah Label, atur propertinya sebagai berikut :
AutoSize
= True
BackStyle
= Transparant
Caption
= ( lihat gambar tampilan Form1 )
Font dan ForeColor = ( anda atur sendiri )
MouseIcon
= ( browse pada direktori) C:\LogHIS\Images\Harrow.cur
MousePointer
= 99-Custom
Masukkan 1 buah object Image , atur property sebagai berikut :
Picture
= browse pada direktori file gambar yang anda inginkan.
Strecth
= True
Lalu atur posisi dan luas image secara manual menyesuaikan area form yang ada.
Gambar tampilan Form1.

Object Label1 s/d Label13


Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

Object Image1
13

7.

8.
9.

Simpan form tersebut dalam direktori C:\LogHIS\Form dengan nama


MenuUtama.frm dan simpan proyek dengan nama LogHIS.vbp dalam direktori
C:\LogHIS.
Form1(MenuUtama.frm) ini kita jadikan sebagai startup object, caranya Project
Project1 Properties lalu dalam field Startup Object pilih Form1.
Cobalah anda jalankan Form1 tersebut ( atau press F5 ).
Dalam tahap ini anda telah selesai membuat tampilan muka yang merupakan gerbang
utama program logistik ini. Object label yang ada dalam Form1 tersebut akan kita
fungsikan sebagai shortcut untuk masuk ke form form selanjutnya.

Catatan :
Anda juga dapat menggunakan Tools
Menu Editor untuk membuat shortcut
shortcut tersebut. Bedanya kalau menggunakan cara itu, tampilan form tidak bisa
dibuat borderless.
Menuliskan ( scripting ) kode Form1
Pertama sekali kita akan menuliskan kode pemanggilan form form lainnya dari shortcut
shortcut yang ada dalam Form1.
Ketika mouse pointer kita arahkan ke shortcut tersebut, cursor yang tadinya
berupa anak panah akan berubah menjadi gambar tangan yang sedang menunjuk
(Harrow.cur). Hal tersebut sudah kita atur sebelumnya dalam langkah ke 4 di atas.
Apabila shortcut tersebut kita klik maka terdengan bunyi Beep sekali,
Form1(MenuUtama.frm) kita buat disable, lalu form yang dituju kita load dan
tampilkan di layer
Apabila Label13 ( Keluar ) di klik maka program selesai dan keluar.
10. Dalam mode View Object, kita klik ganda Label2 ( Caption = Data Barang ).
11. Lalu tampilan kerja anda akan berubah dalam mode View Code, dalam sub prosedur
Label2_Click masukan / ketik script sebagai berikut :
---------------------------------------------------------------------------------------------Private Sub Label2_Click()
Beep
Form1.Enabled = False
Load Form2
Form2.Show
End Sub

ketika Label2 di klik maka,


terdengar bunyi beep sekali
form1 disable
form2 loading
form2 tampil di layar
akhir sub prosedur

---------------------------------------------------------------------------------------------Selanjutnya lakukan langkah no 11 untuk Label3 ( Caption = Data Rekanan ).


---------------------------------------------------------------------------------------------Private Sub Label3_Click()
Beep
Form1.Enabled = False
Load Form3
Form3.Show
End Sub

ketika Label2 di klik maka,


terdengar bunyi beep sekali
form1 disable
form3 loading
form3 tampil di layar
akhir sub prosedur

---------------------------------------------------------------------------------------------Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

14

12.

Lakukan juga sub prosedur tersebut di atas untuk label - label selanjutnya :
Caption
Ref.
Nama Label
Label4
Data Unit Kerja
shortcut ke Form4
Label5
Data Pengelola
shortcut ke Form5
Label6
List Master
shortcut ke Form6
Label7
Penerimaan
shortcut ke Form7
Label8
Pengeluaran
shortcut ke Form8
Label10
(Cetak Data) Penerimaan
shortcut ke Form9
Label11
(Cetak Data) Pengeluaran
shortcut ke Form10
Label12
(Cetak Data) Persediaan
shortcut ke Form11

13.

Untuk Label13 ( Caption = Keluar ) script kodenya adalah :


-------------------------------------------------------------------------------------------------Private Sub Label13_Click() ketika Label13 di klik,
Beep
terdengar bunyi beep sekali
pesan = MsgBox("Keluar dari program aplikasi?", vbYesNo +
vbQuestion, "Konfirmasi") deklarasi variabel pesan
disertai
pilihan Yes No + icon question
If pesan = vbYes Then
bila tombol Yes di pilih maka
End
selesai dan keluar dari program
Else
bila bukan Yes yang ditekan
Exit Sub
keluar dari sub prosedur
End If
akhir struktur control if..then
End Sub
akhir sub prosedur

------------------------------------------------------------------------------------------------Langkah selanjutnya adalah membuat form baru yang merupakan target shortcut shortcut
yang ada dalam Form1. Klik Project Add Form, pilih object Form, lalu klik Open.

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

15

Atau dengan cara lain, dalam area Project Explorer ( Project Project1 ), klik kanan
Form lalu pilih Add Form.

14.
15.

Buat form baru sejumlah 7 buah ( Form2 s/d Form8 )


Simpan form form tersebut dalam sub folder C:\LogHIS\Form dengan nama
sesuai label / shortcutnya, yaitu :
Form2(DataBarang.frm),
Form3(DataRekanan.frm),
Form4(DataUnitKerja.frm),
Form5(DataPengelola.frm),
Form6(ListMaster.frm),
Form7(Penerimaan.frm),
Form8(Pengeluaran.frm),
Kecuali Form6(ListMaster), atur properti form form yang telah tersimpan tadi
sebagai berikut :
Border Style
= 0-None
Picture
= ( browse pada direktori) C:\LogHIS\Images\background.jpg
StartupPosition
= 2-CenterScreen

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

16

Form6(ListMaster.frm)
Form ini merupakan form untuk menginput daftar pilihan list data yang digunakan dalam
form form lainnya. Misalnya list Jenis Barang, Satuan Barang, Daftar Unit Kerja, Daftar
Rekanan dan yang lainnya.
Sebelumnya, masukkan dulu komponen TDBGrid Pro 6.0 pada area toolbox. Caranya,
klik Project Component ( atau press Ctrl + T )

APEX True DBGrid Pro


6.0 ( OLEDB )
Microsoft ADO Data
Control 6.0 ( OLEDB )
Microsoft DataGrid
Control 6.0 ( OLEDB )
Microsoft DataList
Controls 6.0 ( OLEDB )

Aktifkan ( klik pada check field ) komponen komponen sebagai berikut :


Apex True DBGrid Pro 6.0 ( OLEDB )
Microsoft ADO Data Control 6.0 ( OLEDB )
Microsoft DataGrid Control 6.0 ( OLEDB ), dan
Microsoft DataList Controls 6.0 ( OLEDB )
Form6(ListMaster.frm) ini merupakan input list data sebagai berikut :
Jenis Barang
Satuan Barang
Dasar Penerimaan
Bukti Penerimaan
Dasar Pengeluaran
Bukti Pengeluaran
Pada area Project Explorer, double klik Form6(ListMaster.frm), dalam mode View
Object, lakukan langkah berikut:
16. Atur property form sebagai berikut :
Border Style
= 1-Fixed Single
Caption
= ..:: Input List Data ::..
Icon
= browse pada direktori file icon anda
StartupPosition
= 2-CenterScreen
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

17

17.

Dalam Form6 tersebut buat object object dibawah ini, lalu atur propertinya seperti
gambar di bawah ini :
Icon

Form Caption

Label

ComboBox

TDBGrid
Adodc
TextBox

CommandButton

Object
Label

ComboBox

TDBGrid

TextBox

Properti Object

Name
AutoSize
BackStyle
Caption
Font
ForeColor
Name
MouseIcon
MousePointer
Style
TabStop
Name
AllowAddNew
AllowArrow
AllowUpdate
AllowDelete
TabStop
Name
Text
TabStop

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

= Label1
= True
= Transparant
= List Data
=
=
= ComboBox1
= Harrow.cur
= 99-Custom
= 2-Dropdown List
= True
= TDBGrid1
= False
= True
= False
= False
= False
= Input_Data
= ( blank )
= False
18

Name
= btnTambah
Caption
= &Tambah
MouseIcon
= Harrow.cur
MousePointer = 99-Custom
TabStop
= False
CommadButton
Name
= btnSimpan
Caption
= &Simpan
MouseIcon
= Harrow.cur
MousePointer = 99-Custom
TabStop
= False
CommadButton
Name
= btnHapus
Caption
= &Hapus
MouseIcon
= Harrow.cur
MousePointer = 99-Custom
TabStop
= False
CommadButton
Name
= btnKeluar
Caption
= &Keluar
MouseIcon
= Harrow.cur
MousePointer = 99-Custom
TabStop
= False
18. Pada langkah ini, kita masukan jenis jenis list data ke dalam object ComboBox.
Kita menggunakan ComboBox karena data tersebut relative statis. Caranya :
Klik atau seleksi object ComboBox(ComboBox1) tersebut, lalu dalam
propertinya kita pilih List press F4 ketik Jenis Barang akhiri dengan
Enter.
Masukan lagi kedalamnya berturut turut Satuan Barang, Dasar Penerimaan,
Bukti Penerimaan, Dasar Pengeluaran dan terakhir Bukti Pengeluaran.
19. Kita masukan 6 buah object Adodc pada area form samping kanan. Masing masing
Adodc tersebut kita namakan ( Property
(Name) ) dengan JenisBarang,
SatuanBarang, DasarTerima, BuktiTerima, DasarKeluar, dan terakhir
BuktiKeluar.
20. Klik kanan pada object Adodc ( JenisBarang )
Properti, muncul task berikut :
CommadButton

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

19

Dalam task di atas, pilih Use ODBC Data Source Name, pilih db_logHIS.
Kemudian klik Tab RecordSource hingga muncul gambar di bawah ini :

Dalam list Command Type kita isikan 2 adCmdTable. Dan dalam kolom Table
or Stored Procedur Name kita pilih tabel mstJenisBarang, lalu klik OK
21. Lakukan lagi langkah tersebut di atas pada Adodc(SatuanBarang) untuk tabel
mstSatuanBarang dan seterusnya sampai Adodc(BuktiKeluar) untuk tabel
mstBuktiKeluar. Setelah semua diatur, sempitkan area form ke kiri hingga tampilan
object Adodc tidak terlihat dalam area form.
22. Klik kanan object TDBGrid1, pilih Edit.
23. Seleksi ( klik bagian atas / heading ) kolom kedua, klik kanan dan pilih Delete.
Perintah ini akan menghapus kolom kedua dari TDBGrid.
24. Klik kanan object TDBGrid1 kembali, pilih Properti, hingga muncul :

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

20

Pada tab Column Column(00) DataField dalam Selection or String ketik


Nama. Artinya bahwa kolom pertama dari TDBGrid1 ini mereferensi pada field
Nama dari tabel database kita.
Pada Column(00) Caption String kita buat kosong ( blank )
Menuliskan ( scripting ) kode Form6
25. Sebelumnya, buatlah script kode sub untuk merefresh data yang bisa dipanggil oleh
sub prosedur lainnya
---------------------------------------------------------------------------------------------Sub RefreshData()
nama sub adalah RefreshData
JenisBarang.Refresh
SatuanBarang.Refresh
DasarTerima.Refresh
BuktiTerima.Refresh
DasarKeluar.Refresh
BuktiKeluar.Refresh
refresh data data tersebut
End Sub

26.

---------------------------------------------------------------------------------------------Ketika Form6 ini di-loading ( form_load ), database kita refresh, kita arahkan
operator untuk memilih list index yang ada dalam ComboBox(ComboBox1) atau
pembatalan operasi pada form ini.
Sehingga ada baiknya BtnTambah, BtnSimpan dan BtnHapus kita buat disable
dahulu, sementara BtnKeluar kita biarkan enabled.
Double klik area form yang kosong, tuliskan script sub prosedur form load berikut :
---------------------------------------------------------------------------------------------Private Sub Form_Load()

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

21

Call RefreshData
btnSimpan.Enabled = False
btnTambah.Enabled = False
btnHapus.Enabled = False
End Sub

panggil script refresh data


BtnSimpan di-disable
BtnSimpan di-disable
BtnSimpan di-disable

---------------------------------------------------------------------------------------------27. Bila ternyata operator memilih membatalkan operasi pada form ini, kemungkinan
yang ada adalah operator meng-klik BtnKeluar atau bisa juga dengan meng-klik
tanda silang yang ada pada pojok kanan atas form.
Bila operator memilih klik tanda silang ( unload ) maka script prosedurnya adalah :
---------------------------------------------------------------------------------------------Private Sub Form_Unload(Cancel As Integer)
Call RefreshData
panggil sub refresh data
Form1.Show
Form1(MenuUtama.frm)
ditampilkan
Form1.Enabled=true
menjadikan Form1 enable
Unload me
Unload me ( Form6 )
Me.hide
Form6 tidak tampil di layar
End Sub

----------------------------------------------------------------------------------------------

Bila yang di klik adalah BtnKeluar, tambahkan lagi sub prosedur berikut :
---------------------------------------------------------------------------------------------Private Sub BtnKeluar_Click()
Call RefreshData
panggil sub refresh data
Form1.Show
Form1(MenuUtama.frm)
ditampilkan
Form1.Enabled=true
menjadikan Form1 enable
Unload me
Unload me ( Form6 )
Me.hide
Form6 tidak tampil di layar
End Sub

28.

---------------------------------------------------------------------------------------------Bila list dalam ComboBox yang dipilih adalah Jenis Barang, maka source tabel
TDBGrid1 adalah Adodc(JenisBarang). Atau juga ketika dalam list tersebut kita
pilih Satuan Barang maka sourcenya adalah Adodc(SatuanBarang), dan
seterusnya.
---------------------------------------------------------------------------------------------Private Sub ComboBox1_Click()
event klik pada combobox1 maka
Call RefreshData
me-refresh data
If ComboBox1.ListIndex = 0 Then
bila yang dipilih dalam combobox1 tersebut adalah list index yang ke 0 atau Jenis Barang maka
TDBGrid1.DataSource = JenisBarang
source
data
dari
tabel
TDBGrid1
adalah
Adodc(JenisBarang)
TDBGrid1.Columns(0).Caption = "Jenis"
Title / judul kolom pertama dari TDBGrid1 adalah Jenis
dan seterusnya
End If

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

22

If ComboBox1.ListIndex = 1 Then
TDBGrid1.DataSource = SatuanBarang
TDBGrid1.Columns(0).Caption = "Satuan"
End If
If ComboBox1.ListIndex = 2 Then
TDBGrid1.DataSource = DasarTerima
TDBGrid1.Columns(0).Caption = "Dasar Penerimaan"
End If
If ComboBox1.ListIndex = 3 Then
TDBGrid1.DataSource = BuktiTerima
TDBGrid1.Columns(0).Caption = "Bukti Penerimaan"
End If
If ComboBox1.ListIndex = 4 Then
TDBGrid1.DataSource = DasarKeluar
TDBGrid1.Columns(0).Caption = "Dasar Pengeluaran"
End If
If ComboBox1.ListIndex = 5 Then
TDBGrid1.DataSource = BuktiKeluar
TDBGrid1.Columns(0).Caption = "Bukti Pengeluaran"
End If
btnTambah.Enabled = True
btnHapus.Enabled = True
End Sub

---------------------------------------------------------------------------------------------Ketika script tersebut dijalankan, untuk mengakses list index yang ada pada
ComboBox1 dapat dilakukan dengan pres F4.
Penggunaan keyboard Enter kita sediakan untuk menggantikan click ComboBox1.
---------------------------------------------------------------------------------------------Private Sub ComboBox1_KeyPress(KeyAscii As Integer)
event penekanan tombol keyboard
If KeyAscii = 13 Then
bila yang ditekan adalah Enter
If ComboBox1 <> "" Then
bila Combobox1 tidak kosong
btnTambah.SetFocus focus pada BtnTambah
Else
Exit Sub
End If
End If
End Sub

29.

---------------------------------------------------------------------------------------------Asumsi pertama operasi pada form ini adalah penambahan record pada salah satu
jenis list data atau prosedur klik pada BtnTambah
---------------------------------------------------------------------------------------------Private Sub btnTambah_Click()
event klik pada button tambah
If ComboBox1.ListIndex = 0 Then
bila list index pada combo box adalah Jenis Barang maka,
JenisBarang.Recordset.AddNew
Tambah satu record baru dalam Adodc(JenisBarang)
Else
bila bukan itu / selain itu dan seterusnya
If ComboBox1.ListIndex = 1 Then
SatuanBarang.Recordset.AddNew

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

23

Else
If ComboBox1.ListIndex = 2 Then
DasarTerima.Recordset.AddNew
Else
If ComboBox1.ListIndex = 3 Then
BuktiTerima.Recordset.AddNew
Else
If ComboBox1.ListIndex = 4 Then
DasarKeluar.Recordset.AddNew
Else
If ComboBox1.ListIndex = 5 Then
BuktiKeluar.Recordset.AddNew
Else
Exit Sub
keluar dari sub prosedur
End If
akhir dari if pertama
End If
akhir if kedua
End If
akhir if ketiga
End If
akhir if keempat
End If
akhir if kelima
End If
akhir dari if yang ke enam
Input_List.SetFocus
TextBox(Input_List)posisi aktif
BtnTambah.Enabled=False
BtnTambah menjadi disable
BtnHapus.Enabled=False
BtnTambah menjadi disable
BtnSimpan.Enabled=True
BtnSimpan menjadi enable
End Sub

---------------------------------------------------------------------------------------------Selain menggunakan kontrol If . Then, bisa juga menggunakan Select Case.


Untuk mudahnya, semua akan menggunakan If.Then ( padahal yang bener penulis
emang bisanya cuman if then aja, Brur!!)
Setelah penambahan record, posisi cursor terletak di TextBox(Input_List).
Penekanan Enter keyboard dalam object ini akan memindahkan focus pada
BtnSimpan dengan syarat bila TextBox(Input_List) tidak kosong.
---------------------------------------------------------------------------------------------Private Sub Input_List_KeyPress(KeyAscii As Integer)
event penekanan tombol keyboard
If KeyAscii = 13 Then
bila yang ditekan adalah Enter
If Input_List <> "" Then
bila Input_List tidak kosong
btnSimpan.SetFocus
focus pada BtnSimpan
Else
selain itu
Exit Sub
keluar dari sub prosedur
End If
End If
End Sub

30.

---------------------------------------------------------------------------------------------Syarat agar operasi simpan record dapat dilakukan adalah bila terdapat kondisi :
Record pada TDBGrid1 tidak terisi,
TextBox(Input_List) tidak kosong.
Apabila belum terpenuhi syarat / kondisi tersebut, operasi simpan ditunda, lalu keluar
pesan text agar operator memenuhi persyaratan tertentu untuk operasi simpan data.
Dalam mode View Object, double click Button(BtnSimpan), lalu dalam mode View
Code ketik script code :

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

24

---------------------------------------------------------------------------------------------Private Sub btnSimpan_Click()


If TDBGrid1.Columns(0) <> "" Then
pesan1 = MsgBox("Record sudah terisi data", vbOKOnly +
vbCritical, "Record Terisi")
Else
If Input_List = "" Then
pesan2 = MsgBox("Input data belum untuk disimpan masih
kosong", vbOKOnly + vbCritical, "Isikan Data")
Else
If ComboBox1.ListIndex = 0 Then
JenisBarang.Recordset!nama = Input_List
JenisBarang.Recordset.Update
Input_List = ""
btnTambah.Enabled = True
btnHapus.Enabled = True
btnSimpan.Enabled = False
Else
If ComboBox1.ListIndex = 1 Then
SatuanBarang.Recordset!nama = Input_List
SatuanBarang.Recordset.Update
Input_List = ""
btnTambah.Enabled = True
btnHapus.Enabled = True
btnSimpan.Enabled = False
Else
If ComboBox1.ListIndex = 2 Then
DasarTerima.Recordset!nama = Input_List
DasarTerima.Recordset.Update
Input_List = ""
btnTambah.Enabled = True
btnHapus.Enabled = True
btnSimpan.Enabled = False
Else
If ComboBox1.ListIndex = 3 Then
BuktiTerima.Recordset!nama = Input_List
BuktiTerima.Recordset.Update
Input_List = ""
btnTambah.Enabled = True
btnHapus.Enabled = True
btnSimpan.Enabled = False
Else
If ComboBox1.ListIndex = 4 Then
DasarKeluar.Recordset!nama = Input_List
DasarKeluar.Recordset.Update
Input_List = ""
btnTambah.Enabled = True
btnHapus.Enabled = True
btnSimpan.Enabled = False
Else
If ComboBox1.ListIndex = 5 Then
BuktiKeluar.Recordset!nama = Input_List
BuktiKeluar.Recordset.Update
Input_List = ""
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

25

btnTambah.Enabled = True
btnHapus.Enabled = True
btnSimpan.Enabled = False
Else
Exit Sub
End If
End If
End If
End If
End If
End If
End If
End If
End Sub

---------------------------------------------------------------------------------------------Dalam sub prosedur diatas, ada pengulangan baris script ( baris 12 s/d 15 dari bawah
) Bila terdapat kondisi yang demikian, kita dapat membuat sebuah sub sendiri :
Sub NamanyaBebas()
Input_List = ""
btnTambah.Enabled = True
btnHapus.Enabled = True
btnSimpan.Enabled = False
End Sub

31.

Dalam sub prosedur BtnSimpan_Click hapus dan ganti baris yang diulang ulang
tersebut dengan script : call NamanyaBebas
BtnHapus adalah untuk menghapus record yang ada pada tabel. Prosedur menghapus
record logikanya adalah sama dengan prosedur penambahan record ( AddNew
diganti Delete ). Double klik BtnHapus
Copy script pada sub prosedur BtnTambah_Click dari baris pertama s/d end if ke
enam, paste dalam script prosedur BtnHapus_Click.
Seleksi hasil copyan tersebut, press Ctrl+H, dalam field Find What: kita isi dengan
Addnew, dan field Replace With : kita isi Delete.

lalu klik Replace All dan OK, lalu tutup task Replace tersebut.
Apabila tidak terdapat record dalam TDBGrid1 dan BtnHapus kita klik maka akan
keluar pesan error sebagai berikut :

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

26

hal tersebut dikarenakan dalam tabel database sama sekali belum terdapat record.
Error ini kita tangani dengan penambahan list berikut pada baris pertama :
If NamaAdodc.Recordset.BOF=True then
---------------------masukan pesan text -------------------else
-------------------isi script yang sudah ada----------------end if

Catatan :
Entah karena penulis merasa hal tersebut tidak terlalu urgen atau karena dasarnya
memang penulis orangnya malas, biasanya kondisi seperti itu penulis hanya
menambahkan
On Error Resume Next.

lalu taruh pada baris pertama / awal script . ( Semoga anda tidak )

Running Project
Jalankan script yang telah anda buat pada Form6(ListMaster) dengan cara klik Run
Start atau press F5.
Lalu satu persatu masukkan data data sebagai berikut :
Jenis Barang
Alat Kesehatan
Inventaris
Alat Tulis Kantor
Alat RT / Kebersihan
Barang Cetakan
Linen / Kain
Alat Elektronika
Lainnya
Satuan Barang
Buah
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

27

Unit
Rim
Pak
Dos
Dsn
Box
Meter
Pasang
Dasar Penerimaan
BA Penerimaan
BA Pemeriksaan
Lainnya
Bukti Penerimaan
Faktur
Nota
Tanda Terima
Lainnya
Dasar Pengeluaran
DO ( Delivery Order )
Surat Perintah
Lainnya
Bukti Pengeluaran
Blanko Permintaan
Tanda Terima
Lainnya

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

28

Form2(DataBarang)
32.

Tutup semua form yang sedang aktif, buka (dlm project explore double klik nama
form) Form2(DataBarang) atur properti sebagai berikut :
Border Style
= 0-None
Picture
= ( browse pada direktori) C:\LogHIS\Images\background.jpg
StartupPosition
= 2-CenterScreen
33. Dalam form tersebut lalu masukan object - object sebagai berikut :
Object
Label
( 5 buah )

DataCombo
( 2 buah )

TDBGrid
( 1 buah )

TextBox
( 2buah )
CmdButton

CmdButton

CmdButton

CmdButton

Nama
Label 1 s/d
Label 5

jenis
dan
satuan

TDBGrid1

nama,

hargasatuan,
BtnTambah

BtnSimpan

BtnRefresh

BtnKeluar

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

Properti Object
AutoSize
BackStyle
Caption
Font
ForeColor
MouseIcon
MousePointer
Style
TabStop
AllowAddNew
AllowArrow
AllowUpdate
AllowDelete
DataSource
Text
TabStop
Caption
MouseIcon
MousePointer
TabIndex
TabStop
Caption
MouseIcon
MousePointer
TabIndex
TabStop
Caption
MouseIcon
MousePointer
TabIndex
TabStop
Caption
MouseIcon
MousePointer
TabIndex
TabStop

= True
= Transparant
= lihat form layout
= atur menyesuaikan
=
= Harrow.cur
= 99-Custom
= 2-Dropdown List
= False
= False
= True
= False
= False
= DataBarang
= ( blank )
= False
= &Tambah
= Harrow.cur
= 99-Custom
=0
= False
= &Simpan
= Harrow.cur
= 99-Custom
=1
= False
= &Refresh
= Harrow.cur
= 99-Custom
=3
= False
= &Keluar
= Harrow.cur
= 99-Custom
=4
= False
29

Adodc

mstJenis

Adodc

mstSatuan

Adodc

DataBarang

Image

Image1

AllowUpdate = False
AllowAddnew = False
AllowArrow
= True
Allowdelete
= False
Visible
= False
ConnectionString = (browse dan pilih) DB_Loghis
CommandType = 2-adCmdTable
RecordSource = mstJenisBarang
ConnectionString = (browse dan pilih) DB_Loghis
CommandType = 2-adCmdTable
RecordSource = mstSatuanBarang
Lainnya sama dengan atas
ConnectionString = (browse dan pilih) DB_Loghis
CommandType = 2-adCmdTable
RecordSource = DataBarang
Lainnya sama dengan atas
Picture
= browse file gambar
Strecth
= True

Form Lay Out :

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

30

34.

Atur daftar pilihan ( list ) dalam object DataCombo( Jenis )


RowSource
= mstJenis ( nama Adodc dari tabel mstJenisBarang )
ListField
= nama ( nama Field / Kolom dari tabel mstJenisBarang )
Style
= 2-DropDownList
Text
= ( blank )
35. Atur daftar pilihan ( list ) dalam object DataCombo( Satuan )
RowSource
= mstSatuan ( nama Adodc dari tabel mstSatuanBarang )
ListField
= nama ( nama Field / Kolom dari tabel mstSatuanBarang )
Style
= 2-DropDownList
Text
= ( blank )
36. Bila default kolom yang tersedia dalam TDBGrid1 yang akan kita referensikan pada
tabel database DataBarang hanya ada 2 kolom sementara field yang akan kita
referensikan adalah lebih dari 2, maka klik kanan pada TDBGrid1 lalu pilih Edit.
Setelah itu, satu persatu tambahkan 3 buah field kosong lagi dengan cara klik kanan
pada area TDBGrid1 lalu pilih Insert.
Lihat langkah nomor 24, lakukan prosedur tersebut untuk mereferensikan field - field
dalam tabel DataBarang dengan kolom kolom yang tersedia dalam TDBGrid1.
Pada masing masing kolom tersebut, isian Caption tidak berpengaruh pada data.
Oleh karena itu anda bisa merubah atau membiarkan seperti defaultnya saja.
37. Ketika form ini di-loading, karena properti TabIndex pada btnTambah kita set pada
angka 0 maka akan menjadikannya aktif terseleksi.
Warna latar ( BackColor ) kolom kolom isian data ( TextBox dan DataCombo) kita
warnai dengan warna yang agak gelap.
---------------------------------------------------------------------------------------------Private Sub Form_Load()
DataBarang.Refresh
nama.BackColor=vbButtonFace
jenis.BackColor=vbButtonFace
satuan.BackColor=vbButtonFace
hargasatuan.BackColor=vbButtonFace
End Sub

38.

---------------------------------------------------------------------------------------------Bila kolom isian kolom isian dalam form tersebut terseleksi ( GotFocus ) , warna
latarnya ( back color ) akan berubah menjadi putih. Kalau lepas seleksi ( LostFocus )
akan kembali menjadi gelap.
---------------------------------------------------------------------------------------------Private Sub nama_GotFocus()
nama.BackColor = vbWhite
End Sub
Private Sub nama_LostFocus()
nama.BackColor = vbButtonFace
End Sub
Private Sub jenis_GotFocus()
jenis.BackColor = vbWhite
End Sub
Private Sub jenis_LostFocus()

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

31

jenis.BackColor = vbButtonFace
End Sub
Private Sub satuan_GotFocus()
satuan.BackColor = vbWhite
End Sub
Private Sub satuan_LostFocus()
satuan.BackColor = vbButtonFace
End Sub
Private Sub hargasatuan_GotFocus()
hargasatuan.BackColor = vbWhite
End Sub
Private Sub hargasatuan_LostFocus()
hargasatuan.BackColor = vbButtonFace
End Sub

39.

---------------------------------------------------------------------------------------------Setelah kita membuat pengaturan warna latar, hal lain yang perlu diatur juga adalah
aktivitas penggunaan keyboard dalam kolom kolom isian tersebut.
Misalnya, ketika ada aktivitas penekanan tombol Enter dalam object
TextBox(nama), apabila kolom ini tidak dalam keadaan kosong maka cursor aktif
akan mengarah pada object DataCombo(Jenis).
---------------------------------------------------------------------------------------------Private Sub nama_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If nama <> "" Then jenis.SetFocus
Else
nama.SetFocus
End If
End Sub

---------------------------------------------------------------------------------------------Demikian juga untuk object isian data yang lainnya. Enter pada object
TextBox(jenis) akan memindahkan cursor ke TextBox(satuan) dengan catatan
apabila TextBox(jenis) tidak kosong, dan seterusnya.
Namun khusus pada object HargaSatuan karena input yang kita butuhkan di sini
adalah data type numeric maka ada tambahan pengaturan lagi. Yaitu bila yang
diketikkan bukan angka maka akan kita munculkan pesan ( messege box ) adanya
kesalahan pengetikan yang bukan angka.
Pengecekan tersebut bisa menggunakan script :
---------------------------------------------------------------------------------------------Private Sub hargasatuan_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If Not IsNumeric(hargasatuan) Then
MsgBox "Kolom ini harus di isi dengan angka"
HargaSatuan.SetFocus
Else
cmdSimpan.SetFocus
End If
End If
End Sub

---------------------------------------------------------------------------------------------Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

32

Atau bisa juga :


---------------------------------------------------------------------------------------------Private Sub hargasatuan_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If hargasatuan <> "" Then cmdSimpan.SetFocus
End If
If (KeyAscii >= vbKey0 And KeyAscii <= vbKey9) Or KeyAscii
= 13 Or KeyAscii = vbKeyBack Then
Exit Sub
Else
KeyAscii = vbKeyReturn
pilih = MsgBox(" Kolom ini hanya dapat diisi dengan
angka!", vbOKOnly + 64, " Salah Ketik")
hargasatuan.SetFocus
End If
End Sub

---------------------------------------------------------------------------------------------Ada baiknya anda coba satu persatu dari dua script tersebut di atas. Setelah anda tahu
perbedaannya, pilih salah satu dari dua script tersebut.
N Klo penulis sih lebih suka script yang bawah. Konfirm langsung keluar getoo!!
40.

Sekarang apabila yang di klik adalah buton keluar maka form akan diunloading, form
utama ditampilkan kembali.
---------------------------------------------------------------------------------------------Private Sub BtnKeluar_Click()
Form1.Show
Form1(MenuUtama.frm)
ditampilkan
Form1.Enabled=true
menjadikan Form1 enable
Unload me
Unload me ( Form6 )
Me.hide
Form6 tidak tampil di layar
End Sub

41.

---------------------------------------------------------------------------------------------Operasi data yang akan kita gunakan dalam form ini adalah operasi penambahan data
dan penghapusan data. Sebaiknya kita buat sub yang bisa dipanggil.
---------------------------------------------------------------------------------------------Sub SimpanData()
Databarang.Recordset!nama=nama
Databarang.Recordset!jenis=jenis
Databarang.Recordset!satuan=satuan
Databarang.Recordset!hargasatuan=hargasatuan
Databarang.Recordset!JmlPersediaan=0
Databarang.Recordset.update
DataBarang.Recordset.MoveLast
End Sub

---------------------------------------------------------------------------------------------artinya, record aktif pada DataBarang dalam kolom ( field ) nama diisikan data
yang ada pada input nama dan seterusnya sampai field hargasatuan. Dan karena ini
adalah jenis barang baru, maka stock kita start dari 0. Setelah itu recordset akan
diupdate, dan recordset yang aktif set pada recordset terakhir.

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

33

42.

Untuk penambahan data atau klik pada btnTambah disamping record DataBarang
menjadi bertambah juga kondisikan agar object isian data semua kosong. Lalu cursor
akan aktif pada input nama.
---------------------------------------------------------------------------------------------Private Sub BtnTambah_Click()
DataBarang.Refresh
DataBarang.Recordset.AddNew
Nama=
Jenis=
Satuan=
hargaSatuan=
nama.SetFocus
End Sub

43.

Ketika btnSimpan di klik, sub di atas kita panggil setelah data isian kita validasi
dulu.
Jika BOF ( begin of file yang menandakan tidak terdapat record sama sekali ) dari
DataBarang adalah benar maka langsung kita tambahkan satu record baru lagi pada
DataBarang.
If DataBarang.Recordset.BOF = True then DataBarang.
Recordset.AddNew

Bila BOF tidak lagi True, tetapi jika Record pada DataBarang tidak kosong (
ditandai dengan salah satu fieldnya yang juga tidak sama dengan kosong ) maka kita
konfirmasikan bahwa record yang aktif sudah terisi data.
Else
If DataBarang.Recordset!IDBarang <> Then
RecordIsi=MsgBox(Record sudah terisi data, klik Tambah
untuk membuat data baru dulu!,vbOkOnly + 32, Record Isi
Data)

Dan bila salah satu input data masih kosong, konfirmasikan pula bahwa semua isian
data tidak boleh kosong.
Else
If nama = or jenis = or satuan = or hargasatuan
= Then
RecordIsi=MsgBox(Data isian yang anda masukan belum
lengkap, lengkapi isian data yang masih kosong!,vbOkOnly +
48, Data Tidak Lengkap)

Ketika semua kondisi sudah tervalidasi, panggil sub SimpanData.


Else
Call SimpanData

44.

Perintah pada klik btnRefresh akan merefresh data yang digunakan dalam form ini.
---------------------------------------------------------------------------------------------Private Sub BtnRefresh_Click()
DataBarang.Refresh
End Sub

----------------------------------------------------------------------------------------------

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

34

Tutorial Visual Basic 6.0


Mambuat Program Logistik Barang
( Inventory System )
Imam Budi Kustanto
sim_rusak@yahoo. com

Lisensi Dokumen:
Copyright 2003 - 2006 IlmuKomputer.Com
Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan
secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau
merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen.
Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu
dari IlmuKomputer.Com.

TUTORIAL 2
FORM & SCRIPT CODE ( 02 )
Form3( DataRekanan.frm)
Karena
pada
prinsipnya
operasional
form
ini
adalah
sama
dengan
Form2(DataBarang.frm), maka copy paste dan replace lebih banyak penulis gunakan
dalam mendesain form ini.
45. Biarkan Form2(DataBarang.frm) tetap terbuka, buka Form3(DataRekanan.frm)
46. Seleksi semua ( Edit Select All ) object yang ada dalam
Form2(DataBarang.frm),
lalu
copy
dan
pastekan
ke
dalam
Form3(DataRekanan.frm). Atur layoutnya sama persis dengan Form2. Buang
object Adodc(mstJenis), Adodc(mstSatuan), DataCombo(Satuan) dan
DataCombo(jenis)
47. Select TextBox(nama) lalu copy ( Ctrl + C ) dan paste ( Ctrl + V ). Kalau ada
konfirmasi telah ada object dengan nama tersebut maka abaikan saja dengan klik No.
Rename ( pada object properti ) TextBox hasil copyan tersebut dengan nama
Alamat.
48. Ulang langkah tersebut di atas, rename dengan nama Telp.
49. Rename TextBox(HargaSatuan) dengan nama NPWP.
50. Rename object Adodc DataBarang dengan nama DataRekanan. Atur properti
RecordSource mengarah pada tabel DataRekanan.
51. Demikian juga untuk properti Caption dari object label berikut ganti menjadi :
Data Barang Persediaan menjadi Data Rekanan / Supplier
Nama Barang kita ganti dengan Nama Rekanan
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

40

Jenis Barang ganti dengan Alamat


Satuan ganti dengan Telepon, dan
HargaSatuan ganti dengan Nomor NPWP
Hasil dari langkah langkah tersebut di atas adalah tampilan Form sebagai berikut :

52.
53.

Copy semua kode script dalam Form2, lalu paste dalam script Form3.
Lalu seleksi semua baris script yang ada dalam Form3, lakukan operasi find and
replace dengan cara Edit Replace ( atau press Ctrl + H ).

lalu Replace All.


54. Berturut turut, replace jenis menjadi alamat, hargasatuan menjadi NPWP, dan
satuan menjadi telp.
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

41

55.

Satu persatu sub prosedur kita teliti, koreksi atau buang yang tidak tepat / relevan
digunakan dalam form ini.
Private Sub NPWP_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If NPWP <> "" Then btnSimpan.SetFocus
End If
If (KeyAscii >= vbKey0 And KeyAscii <= vbKey9) Or KeyAscii = 13
Or KeyAscii = vbKeyBack Then
Exit Sub
Else
KeyAscii = vbKeyReturn
pilih = MsgBox(" Kolom ini hanya dapat diisi dengan angka!",
vbOKOnly + 64, " Salah Ketik")
NPWP.SetFocus
End If
End Sub

Pada script tersebut validasi numeric tidak kita berlakukan. Oleh karenanya buang
yang tidak perlu. Sehingga tersisa :
Private Sub NPWP_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If NPWP <> "" Then btnSimpan.SetFocus
Else
NPWP.SetFocus
End If
End Sub

56.

Dalam script Sub SimpanData ( ) buang baris yang tidak lagi digunakan yaitu :
DataRekanan.Recordset!jmlpersediaan = 0

57.

Dalam sub prosedur Private Sub btnSimpan_Click() ganti IDBarang menjadi


IDRekanan.
58. Ubah properti object TDBGrid1 agar referensi tabel mengarah pada tabel
DataRekanan yaitu dengan cara mengganti propertinya :
DataSource
= DataRekanan
Klik kanan Edit, lalu seleksi field terakhir ( Jumlah Persediaan ) dan hapuslah
59. Setelah itu, hubungkan kolom kolom yang ada dalam TDBGrid1 dengan field
field yang ada pada tabel database DataRekanan. Caranya seperti pada langkah ke 24
dalam tutorial ini.

Form4( DataUnitKerja.frm)
Ulangi langkah dalam pembuatan Form3 di atas untuk membuat Form4(DataUnitKerja).
60. Copy dan paste semua object dalam Form3 ke dalam Form4.
61. Buang Label5(Caption = NPWP) dan TextBox(NPWP).
62. Caption dari object label - label berikut ganti menjadi :
Data Rekanan / Supplier menjadi Data Unit Pengguna
Nama Rekanan kita ganti dengan Nama Pengguna
Alamat ganti dengan Kepala Unit
Telepon ganti dengan NIP.
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

42

63.
64.

65.
66.
67.

68.

Ubah nama input TextBox(Alamat) menjadi Kepala dan input TextBox(Telp)


menjadi NIP
Referensi Record atau RecordSource dari Adodc(DataRekanan) yang tadinya
merujuk pada tabel DataRekanan kita set ulang merujuk pada tabel DataUnitKerja.
Lalu rename nama Adodc tersebut menjadi DataUnitKerja.
Ubah properti object TDBGrid1 pada DataSource yang tadinya mereferensi pada
DataRekanan menjadi DataUnitKerja
Copy semua script code yang ada pada Form3, paste dalam script code Form4.
Buang baris perintah atau prosedur yang berhubungan dengan field NPWP. Antara
lain :
Buang baris yang mengandung text NPWP pada sub prosedur Form_Load ()
Buang sub prosedur NPWP_GotFocus(), NPWP_LostFocus(), dan
NPWP_KeyPress ( KeyAscii As Integer )
Pada sub prosedur telp_KeyPress(KeyAscii As Integer) ganti NPWP menjadi
btnSimpan.
Buang baris yang berisi text NPWP pada Sub SimpanData()
Buang baris yang berisi text NPWP pada Sub Prosedur btnTambah_Click()
Hapus text Or NPWP = "" pada Sub Prosedur btnSimpan_Click()
Seleksi semua ( Ctrl + A ) script code Form4, lalu Edit Replace ( Ctrl + H ) text
sebagai berikut :
Rekanan replace menjadi UnitKerja
Alamat menjadi Kepala
Telp replace menjadi NIP

Hasil dari langkah langkah tersebut di atas adalah tampilan Form sebagai berikut :

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

43

Form5( DataPengelola.frm)
Ulangi langkah dalam pembuatan Form4 di atas untuk membuat Form5(DataPengelola).
69. Copy dan paste semua object dalam Form4 ke dalam Form5.
70. Caption dari object label - label berikut ganti menjadi :
Data Unit Pengguna menjadi Data Pengelola Barang
Nama Pengguna kita ganti dengan Nama Pengelola
Kepala Unit ganti dengan Jabatan
71. Ubah nama input TextBox(Kepala) menjadi Jabatan
72. Referensi Record atau RecordSource dari Adodc(DataUnitKerja) yang tadinya
merujuk pada tabel DataUnitKerja kita set ulang merujuk pada tabel
DataPengelola. Lalu rename nama Adodc tersebut menjadi DataPengelola.
73. Ubah properti object TDBGrid1 pada DataSource yang tadinya mereferensi pada
DataUnitKerja menjadi DataPengelola. Sesuaikan Caption kolom kolomnya.
74. Copy semua script code yang ada pada Form4, paste dalam script code Form5.
75. Seleksi semua ( Ctrl + A ) script code Form4, lalu Edit Replace ( Ctrl + H ) text
sebagai berikut :
UnitKerja replace menjadi Pengelola
Kepala menjadi Jabatan

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

44

Hasil dari langkah langkah tersebut di atas adalah tampilan Form sebagai berikut :

Running Project
Cobalah anda jalankan script yang telah dibuat tadi. Masukkan data data Barang
Persediaan, Rekanan, Pengelola, dan Unit Kerja.
Contoh :
Data Barang
Nama
JenisBarang
Satuan
HargaSatuan
Buku Folio
Alat Tulis Kantor
Buah
7500
Kertas HVS A4
Alat Tulis Kantor
Rim
25000
Stetoskop
Alat Kesehatan
Buah
75000
Spuit 5 CC
Alat Kesehatan
Buah
9000
Sprey
Linen / Kain
Buah
25000
Gordyn
Linen / Kain
Buah
22500
Bolp Lamp 5 W
Alat Elektronika
Buah
3500
Stand Fan
Alat Elektronika
Unit
350000
Karcis Pendaftaran
Barang Cetakan
Pak
35000
Form CM 02
Barang Cetakan
Pak
22500
Sapu Ijuk
Alat RT / Kebersihan
Buah
5500
Sendok Makan
Alat RT / Kebersihan
Dsn
11250
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

45

Almari Pakaian
Meja 1 Biro
Data Rekanan
Nama
PT Maju Mundur
PT Angin Ribut
PT Morat Marit

Inventaris
Inventaris

Alamat
Jakarta
Purwokerto
Semarang

Buah
Buah

Telp
021 1111111
0281 222222
024 3333333

650000
850000

NPWP
123.456.789
234.567.890
345.678.901

Data Unit Kerja


Nama
Bidang Pelayanan
Instalasi Gawat Darurat
Instalasi Rawat Inap

Kepala
Dr. John, Sp.A
Dr. Smith
Ns. Jean, S.Kep

NIP
140 111 111
140 222 222
140 333 333

Data Pengelola
Nama
Mr. Brown
Mr. White
Mrs. Green

Jabatan
Kepala Gudang
Staff
Staff

NIP
500 111 222
500 222 333
140 444 444

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

46

Tutorial Visual Basic 6.0


Mamba Program Logistik Barang
( Inventory System )
Imam Budi Kustanto
sim_rusak@yahoo. com

Lisensi Dokumen:
Copyright 2003 - 2006 IlmuKomputer.Com
Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan
secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau
merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen.
Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu
dari IlmuKomputer.Com.

TUTORIAL 2
FORM & SCRIPT CODE ( 03 )
Form7( DataPenerimaan.frm)
75.

Object & Form LayOut

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

55

76.

Klik kanan pada area kosong Object Toolbox, pilih Component, tambahkan pada tab
Control komponen : Microsoft Windows Common Control 2 6.0 (SP6), sehingga
dalam area object toolbox akan muncul object DTPPicker
Object dan Properties Object pada Form7 :
Object
Adodc

Adodc

Adodc

Adodc

Adodc

Adodc

Adodc

Adodc

Properti Object

Name
Caption
CommandType
ConnectionStrg
RecordSource
Name
Caption
CommandType
ConnectionStrg
RecordSource
Name
Caption
CommandType
ConnectionStrg
RecordSource

Name
Caption
CommandType
ConnectionStrg
RecordSource
Name
Caption
CommandType
ConnectionStrg
RecordSource
Name
Caption
CommandType
ConnectionStrg
RecordSource
Name
Caption
CommandType
ConnectionStrg
RecordSource
Name
Caption
CommandType
ConnectionStrg

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

= mstBuktiTerima
= Bukti Terima
= 2 adCmdTable
= DSN=DB_Loghis
= mstBuktiTerima
= mstDasarTerima
= Dasar Terima
= 2 adCmdTable
= DSN=DB_Loghis
= mstDasarTerima
= DataDistribusi
= Data Distribusi
= 1 adCmdText
= DSN=DB_Loghis
= select * from DataDistribusi where
KodeDistribusi = 'T'
= DataBarang
= Data Barang
= 1 adCmdText
= DSN=DB_Loghis
= select * from DataBarang
= DataRekanan
= Data Rekanan
= 1 adCmdText
= DSN=DB_Loghis
= select * from DataRekanan
= DataPengelola
= Data Pengelola
= 1 adCmdText
= DSN=DB_Loghis
= select * from DataPengelola
= DataBarang1
= Data Barang 1
= 2 adCmdTable
= DSN=DB_Loghis
= DataBarang
= DataRekanan1
= Data Rekanan 1
= 2 adCmdTable
= DSN=DB_Loghis
56

Label ( 1 s/d
16 )

DTPicker

TextBox

DataCombo

DataCombo

DataCombo

TextBox

DataCombo

TextBox

TextBox

DataCombo

TextBox

TextBox

Adodc

RecordSource = DataRekanan
Name
= DataPengelola1
Caption
= Data Pengelola1
CommandType = 2 adCmdTable
ConnectionStrg = DSN=DB_Loghis
RecordSource = DataPengelola
Caption
= lihat form layout
AutoSize
= True
BackStyle
= Transparant
Font
= ( anda atur sendiri )
ForeColor
= ( anda atur sendiri )
Name
= tanggal
Format
= 1 dtpShortDate
Font
=
Name
= idRekanan
Lainnya lihat properti TextBox di atas
Name
= AsalRekanan
RowSource
= DataRekanan1
ListField
= Nama
MouseIcon
= Harrow.cur
MousePointer = 99-Custom
Style
= 2-Dropdown List
TabStop
= False
BackColor
= &H8000000F&
Name
= PenerimaBarang
RowSource
= DataPengelola1
ListField
= Nama
Lainnya lihat properti DataCombo di atas
Name
= BuktiTerima
RowSource
= mstBuktiTerima
ListField
= Nama
Lainnya lihat properti DataCombo di atas
Name
= NoBuktiTerima
Name
= DasarTerima
RowSource
= mstDasarTerima
ListField
= Nama
Lainnya lihat properti DataCombo di atas
Name
= NoDasarTerima
Name
= idBarang
Name
= NamaBarang
RowSource
= DataBarang1
ListField
= Nama
Style
= 0-Dropdown Combo
Lainnya lihat properti DataCombo di atas
Name
= JenisBarang
Name
= HargaSatuan

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

57

TextBox
TextBox
TextBox
TextBox
TextBox
CmdButton

CmdButton

CmdButton

CmdButton

TDBGrid

TDBGrid

77.

78.

Name
= Satuan
Name
= JumlahTerima
Name
= TotalHarga
Name
= StockAwal
Name
= StockAkhir
Name
= btnTambah
Caption
= &Tambah
TabIndex
=0
MouseIcon
= Harrow.cur
MousePointer = 99-Custom
TabStop
= False
Name
= btnSimpan
Caption
= &Simpan
TabIndex
=1
Lainnya lihat properti CmdButton di atas
Name
= btnRefresh
Caption
= &Refresh
TabIndex
=3
Lainnya lihat properti DataCombo di atas
Name
= btnSelesai
Caption
= S&elesai
TabIndex
=4
Lainnya lihat properti DataCombo di atas
Name
= TabelBarang
AllowAddNew = False
AllowArrow
= True
AllowUpdate = False
AllowDelete
= False
DataSource
= DataBarang
Name
= TabelDistribusi
AllowAddNew = False
AllowArrow
= True
AllowUpdate = False
AllowDelete
= False
DataSource
= Data Penerimaan Barang

Atur kolom kolom yang ada dalam TDBGrid(TabelBarang) merujuk pada field
field dalam tabel DataBarang. Demikian pula pada TDBGrid(TabelDistribusi)
merujuk pada tabel DataDistribusi.
Apabila form di-loading maka data data yang berhubungan dengan penerimaan
barang kita refresh.
---------------------------------------------------------------------------------------------Private Sub Form_Load()
DataBarang.Refresh
DataRekanan.Refresh
DataPengelola.Refresh

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

58

DataDistribusi.Refresh
Tanggal=Now() isian tanggal adalah tanggal sekarang
End Sub

79.

---------------------------------------------------------------------------------------------Apabila form ditutup ( klik pada btnSelesai ) maka Form1 ditampilkan, Form7 diunload dan disembunyikan.
---------------------------------------------------------------------------------------------Private Sub BtnSelesai_Click()
Form1.Show
Form1(MenuUtama.frm)
ditampilkan
Form1.Enabled=True
menjadikan Form1 enable
Unload Me
Unload Form7
Me.Hide
Form7 tidak tampil di layar
End Sub

80.

---------------------------------------------------------------------------------------------Script code untuk btnTambah. Klik ganda btnTambah, pada area kode tambahkan :
---------------------------------------------------------------------------------------------Private Sub btnTambah_Click()
DataDistribusi.Refresh
tabel distribusi di refresh
DataDistribusi.Recordset.AddNew
tambah 1 record baru
PenerimaBarang.SetFocus
cursor
aktif
pada
PenerimaBarang
End Sub

81.

---------------------------------------------------------------------------------------------Script code object PenerimaBarang


Private Sub PenerimaBarang_GotFocus() event terseleksi
DataPengelola.Refresh
tabel DataPengelola di refresh
PenerimaBarang.BackColor = vbWhite warna dasar jadi putih
idPengelola.BackColor = vbWhite
NamaBarang = kolom isian namaBarang dikosongkan
End Sub
Private Sub PenerimaBarang_LostFocus()event lepas seleksi
PenerimaBarang.BackColor = vbButtonFace warna jadi gelap
idPengelola.BackColor = vbButtonFace
End Sub
Private Sub PenerimaBarang_KeyPress(KeyAscii As Integer)
event penekanan tuts keyboard
If KeyAscii = 13 Then bila keyboard ditekan adalah Enter
If PenerimaBarang <> "" Then asalrekanan.SetFocus bila
isian kolom tidak kosong, cursor berpindah pada input
asalrekanan
End If
End Sub
Private Sub PenerimaBarang_Change() even perubahan isian
Dim caripenerima As String deklarasi variabel caripenerima
caripenerima
=
PenerimaBarang.Text
yaitu
isi
PenerimaBarang
cariID = " select * from DataPengelola where Nama like '" &
caripenerima & "' " mencari dalam DataPengelola pada field
nama yang seperti text pada PenerimaBarang

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

59

DataPengelola.RecordSource = cariID
DataPengelola.Refresh
idPengelola = DataPengelola.Recordset!idPengelola
End Sub

82.

Script code object AsalRekanan prinsip sama dengan PenerimaBarang.


Private Sub AsalRekanan_GotFocus()
asalrekanan.BackColor = vbWhite
idrekanan.BackColor = vbWhite
End Sub
Private Sub AsalRekanan_LostFocus()
asalrekanan.BackColor = vbButtonFace
idrekanan.BackColor = vbButtonFace
End Sub
Private Sub AsalRekanan_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If asalrekanan <> "" Then BuktiTerima.SetFocus
End If
End Sub
Private Sub asalrekanan_Change()
Dim carirekanan As String
carirekanan = asalrekanan.Text
cariID = " select * from DataRekanan where Nama like '" &
carirekanan & "' "
DataRekanan.RecordSource = cariID
DataRekanan.Refresh
idrekanan = DataRekanan.Recordset!idrekanan
End Sub

83.

Dari input BuktiTerima sampai NoDasarTerima hanya ada aturan perubahan warna
dasar saja ketika terseleksi dan tidak. Apabila terseleksi ( GotFocus ) maka
BackColor menjadi putih, dan sebaliknya ( LostFocus ) maka akan menjadi gelap.
Kemudian apabila ada aktivitas penekanan keyboard Enter maka cursor akan
berpindah pada input di bawahnya. Contoh :
Private Sub BuktiTerima_GotFocus()
BuktiTerima.BackColor = vbWhite
End Sub
Private Sub BuktiTerima_LostFocus()
BuktiTerima.BackColor = vbButtonFace
End Sub
Private Sub BuktiTerima_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If BuktiTerima <> "" Then NoBuktiTerima.SetFocus
End If
End Sub

84.

Dan seterusnya sampai NoDasarTerima


Selain warna dasar NamaBarang yang akan menjadi putih bila ia mendapatkan
fokus, IDBarang juga akan mengikuti.
Private Sub NamaBarang_GotFocus()
NamaBarang = ""

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

60

NamaBarang.BackColor = vbWhite
idBarang.BackColor = vbWhite
End Sub

85.

Apabila isian text pada NamaBarang berubah, maka akan dilakukan pencarian nama
barang dalam database sesuai karakter yang di ketikkan padanya.
Private Sub NamaBarang_Change()
If NamaBarang = "" Then
idBarang = ""
Else
Dim caribarang As String
caribarang = "%" & NamaBarang.Text & "%"
cariID = " select * from Databarang where Nama like '" &
caribarang & "' "
DataBarang.RecordSource = cariID
DataBarang.Refresh
End If
End Sub

86.

Setelah dilakukan pencarian yang dikarenakan perubahan isi dari kolom input ini,
apabila fokus terlepas darinya maka :
Private Sub NamaBarang_LostFocus()
On Error GoTo TdkAdaBarang
NamaBarang.BackColor = vbButtonFace warna dasar jadi gelap
idBarang.BackColor = vbButtonFace s.d.a
NamaBarang = DataBarang.Recordset!nama hasil pencarian
pada tabel database akan dimasukan dalam kolom isian
NamaBarang
idBarang = DataBarang.Recordset!idBarang kolom IDBarang
mengikuti
Satuan = DataBarang.Recordset!Satuan satuan, jenis juga
iya
HargaSatuan = DataBarang.Recordset!HargaSatuan
JenisBarang = DataBarang.Recordset!jenis
stockawal = DataBarang.Recordset!jmlpersediaan jml
persediaan akan menjadi stock awal
JumlahTerima.SetFocus
Exit Sub
TdkAdaBarang:
Pesan=MsgBox ("Nama barang yang anda masukkan tidak
terdaftar dalam database", VBOKOnly + 64, Data Tidak
Ada)
NamaBarang = ""
NamaBarang.SetFocus
End Sub

Apabila prosedur pencarian yang kita tetapkan mengakibatkan error pada program,
mudahnya kita katakan saja bahwa data yang dicari tidak ada. Apabila itu terjadi
maka proses akan diarahkan menuju deklarasi TdkAdaBarang yang berisi pesan
barang tidak ditemukan.
87. Demikian juga halnya bila ada penekanan keyboard Enter dalam kolom isian ini.
Scriptnya hampir sama dengan atas.
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

61

Private Sub NamaBarang_KeyPress(KeyAscii As Integer)


On Error Resume Next
If KeyAscii = 13 Then
If NamaBarang <> "" Then
NamaBarang = DataBarang.Recordset!nama
idBarang = DataBarang.Recordset!idBarang
Satuan = DataBarang.Recordset!Satuan
HargaSatuan = DataBarang.Recordset!HargaSatuan
JenisBarang = DataBarang.Recordset!jenis
stockawal = DataBarang.Recordset!jmlpersediaan
JumlahTerima.SetFocus
End If
End If
End Sub

88.

Isian kolom NamaBarang yang kosong akan berakibat IDBarang menjadi kosong.
Dan IDBarang kosong akan berpengaruh pula pada satuan, jenis, harga satuan dan
stockawal.
Private Sub
If idBarang
Satuan = ""
HargaSatuan
JenisBarang
stockawal =
End If
End Sub

89.

idBarang_Change()
= "" Then
= ""
= ""
""

Selanjutnya bila JumlahTerima berubah, maka bila HargaSatuan dan


JumlahTerima tidak sama dengan kosong, pada kolom NilaiTerima akan terjadi
operasi hitung perkalian. Sedangkan pada StockAckhir ada operasi hitung
penjumlahan.
Private Sub JumlahTerima_Change()
If HargaSatuan <> "" And JumlahTerima <> "" And stockawal
<> "" Then
Dim Variabel1 As Double
Dim VAriabel2 As Double
Dim VAriabel3 As Double
Variabel1 = HargaSatuan.Text
VAriabel2 = JumlahTerima.Text
VAriabel3 = stockawal.Text
NilaiTerima = Variabel1 * VAriabel2
stockakhir = VAriabel2 + VAriabel3
Else
NilaiTerima = 0
stockakhir = stockawal
End If
End Sub

90.

Apabila semua data dianggap telah terisi, maka logikanya data data isian tersebut
akan dimasukan dalam database sesuai dengan fieldnya masing masing. Untuk
mudahnya kita jadikan sub dengan nama Simpan.
Sub simpan()
DataDistribusi.Recordset!tanggal = tanggal

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

62

DataDistribusi.Recordset!idPengelola = idPengelola
DataDistribusi.Recordset!idrekanan = idrekanan
DataDistribusi.Recordset!BuktiTerima = BuktiTerima
DataDistribusi.Recordset!NoBuktiTerima = NoBuktiTerima
DataDistribusi.Recordset!DasarTerima = DasarTerima
DataDistribusi.Recordset!NoDasarTerima = NoDasarTerima
DataDistribusi.Recordset!idBarang = idBarang
DataDistribusi.Recordset!JumlahBarang = JumlahTerima
DataDistribusi.Recordset!nilairupiah = NilaiTerima
DataDistribusi.Recordset!kodedistribusi = "T"
DataDistribusi.Recordset.Update
DataBarang.Recordset!jmlpersediaan = stockakhir
DataBarang.Recordset.Update
DataDistribusi.Refresh
DataDistribusi.Recordset.MoveLast
End Sub

91.

Klik mouse pada btnSimpan akan memanggil sub tersebut di atas setelah melalui
validasi dan persyaratan tertentu :
Bila belum terdapat record sama sekali dalam tabel database atau BOF = True,
maka record baru kita tambahkan.
If
DataBarang.Recordset.BOF
Recordset.AddNew

True

Then

DataBarang.

Bila salah satu kolom isian masih ada yang kosong maka dikonfirmasikan ( text
messege ) untuk melengkapi dulu.
If idPengelola = "" Or idrekanan = "" Or idBarang = "" Or
BuktiTerima = "" Or NoBuktiTerima = "" Or DasarTerima = ""
Or NoDasarTerima = "" Or JumlahTerima = "" Then
Pesan = MsgBox("Periksa kembali data isian anda. Lengkapi
yang masih kosong", vbOKOnly + 64, "Data Tidak Lengkap")

Apabila record telah terisi data ( terindikasi dengan sudah terisinya field
IDDistribusi ) maka pesan perintah untuk klik btnTambah dahulu.
If DataDistribusi.Recordset!IDDistribusi <> "" Then
Pesan = MsgBox("Record sudah terisi data. Klik tombol
Tambah untuk membuat record baru ! ", vbOKOnly + 64,
"Record Terisi")

Apabila tidak terdapat kondisi sebagaimana tersebut di atas, berarti operasi


simpan data dapat dilakukan yaitu dengan cara memanggil sub Simpan
Else
Call simpan

92.

Perubahan pada kolom isian StockAwal akan menyebabkan adanya operasi hitung
pada StockAkhir
Private Sub stockawal_Change()
If stockawal <> "" And JumlahTerima <> "" Then
Dim VAriabel2 As Double
Dim VAriabel3 As Double
VAriabel2 = JumlahTerima
VAriabel3 = stockawal
stockakhir = VAriabel2 + VAriabel3

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

63

Else
stockakhir = ""
End If
End Sub

93.

Demikian juga perubahan isian pada kolom HargaSatuan aka menyebabkan operasi
hitung perkalian pada kolom NilaiTerima

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

64

Form8( DataPengeluaran.frm)
94.

Pada prinsipnya, logika pengeluaran barang adalah sama dengan logika penerimaan
barang. Oleh karena itu, copy semua object pada Form7(DataPenerimaan), pastekan ke dalam Form8(DataPengeluaran)
Beberapa object dan propertiesnya yang perlu diganti adalah :
a. Pada object Label, hanya merubah properti Caption-nya saja. Misal Data
Penerimaan di ganti Data Pengeluaran, atau Bukti Terima di ganti Bukti Keluar,
dan seterusnya.
b. Semua nama object yang mengandung kata Terima diganti menjadi Keluar.
Misalnya mstBuktiTerima menjadi mstBuktiKeluar, NilaiTerima menjadi
NilaiKeluar, dan seterusnya.
c. Untuk object Adodc maka SourceData-nya juga mengikuti baik yang
ComandType-nya Text maupun Table.
d. Perubahan nama Adodc mstBuktiTerima dan mstDasarTerima harus diikuti
dengan
perubahan
properti
RowSource
dari
object
DataCombo(mstBuktiKeluar) dan DataCombo(mstDasarKeluar).
e. Pada pengeluaran barang, data rekanan tidak dibutuhkan. Yang dibutuhkan adalah
data unit kerja. Oleh karenanya DataRekanan diganti DataUnitKerja. Demikian
pula DataCombo(AsalRekanan) di ganti menjadi DataCombo(UnitKerja)

95.

Setelah semua object pada Form8 disesuaiakan untuk menginput data pengeluaran,
sekarang copy dan paste semua script Form7 dalam script Form8.
Mengikuti perubahan nama objectnya, script juga perlu dirubah. Caranya seleksi
semua script yang ada ( press Ctrl + A ) lalu Ctrl + H untuk memanggil dialog Find
and Replace. Jangan lupa aktifkan ( beri tanda cek ) pada check box Match Case

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

65

a.
b.
c.
d.
e.

96.

Find What : Terima , Replace With : Keluar


Find What : AsalRekanan , Replace With : UnitKerja
Find What : Rekanan, Replace With : UnitKerja
Find What : T , Replace With : K
Find What : stockakhir = Variabel2 + Variabel3, Replace With : stockakhir =
Variabel3 - Variabel2
Apabila anda ingin merubah tampilan Form ini agar berbeda dengan penampilan
Form Penerimaan Barang, lakukan dengan merubah form layoutnya. Baik itu
penempatan object maupun latar belakang form ( picture ) saja.

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

66

Tutorial Visual Basic 6.0


Mamba Program Logistik Barang
( Inventory System )
Imam Budi Kustanto
sim_rusak@yahoo. com

Lisensi Dokumen:
Copyright 2003 - 2006 IlmuKomputer.Com
Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan
secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau
merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen.
Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu
dari IlmuKomputer.Com.

TUTORIAL 3
REPORT DESIGN
Untuk memudahkan penanganan report, dalam tabel database buat 2 buah query masing
masing untuk data penerimaan dan pengeluaran.
97. Buka file database DB_Loghis.mdb, pada tab Object, pilih Queries, lalu double klik
Create query by using wizard.

98.

Dalam task Simple Query Wizard, pada field Tables/Queries pilih


Tabel:DataBarang, lalu masukkan field Nama, Satuan, Jenis dan HargaSatuan yang
ada dalam kolom Available Field. ( lihat gambar di bawah ini )

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

76

Lakukan juga tersebut untuk Table:DataDistribusi


JumlahBarang, KodeDistribusi dan NilaiRupiah.

atas

field

Tanggal,

Klik Next, dalam kolom isian title pada task berikutnya, isi dengan nama
CetakPenerimaan, lalu klik Finish.

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

77

99.

Simpan query tersebut dengan nama CetakPenerimaan. Lalu masuk dalam mode
design view ( View
Design View )

Dalam baris Criteria pada field KodeDistribusi, isikan T . Sehingga data yang
tampil dalam query tersebut hanya data penerimaan saja yang berkode T.
100. Simpan dengan nama lain ( press F12 ) yaitu CetakPengeluaran. Pada
KodeDistribusi criteria yang tadinya T gantilah dengan K.

CrystalReport1(ReportPenerimaan.Dsr)
Form9(CetakPenerimaan.frm)

&

101. Pastikan tool Seagate Criystal Report 8.5 telah terinstall dalam PC anda. Klik kanan
pada area Project Explorer, pilih Add diikuti klik Crystal Reports 8.5, akan muncul
task pane seperti gambar berikut :

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

78

lalu klik OK
102. Klik Project

103. Pada kolom ODBC pilih atau ketik nama ODBC-nya yaitu DB_Loghis diikuti OK

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

79

104. Dalam list Object, pilih query data penerimaan

105. Ketika dalam task Standar Report Expert, pada tab Data, dalam kolom Tables
telah muncul ado, klik Next.
106. Pada tab Field masukan Tanggal, Nama, Jenis, HargaSatuan, JumlahBarang,
Satuan, dan NilaiRupiah. Setelah itu Finish.

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

80

107. Dalam Project Explorer akan terlihat 1 buah form baru dengan nama Form9.frm, dan
1 buah report dengan nama Crystal Report1.dsr. Klik Save Project, simpan report
dengan nama ReportPenerimaan dalam C:/Loghis/Report dan Form9 dengan nama
CetakPenerimaan dalam sub folder Form.
108. Double klik CrystalReport1, dalam mode View, klik kanan area kosong pada section
Report Header
Designer
Printer Setup. Langkah ini untuk mengatur format
halaman report. ( penulis menggunakan printer HP DeskJet 3535 )

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

81

Contoh format halaman yang kita pakai adalah Kertas Ukuran A4 Landscape.
109. Masih dalam area tersebut di atas tadi, klik kanan dan pilih Format Section .. .
Langkah ini untuk mengaktifkan bagian bagian ( section ) dari halaman report yang
belum aktif ( ditandai dengan arsiran pada section )

Pada gambar di atas menunjukan bahwa section Report Header belum aktif. Untuk
mengaktifkannya kosongi check box Suppress (No Drill-Down). Lakukan juga
untuk section yang belum aktif lainnya.
Pembagian section :
110. Report Header adalah section tempat kita menaruh header dari laporan kita.
Biasanya berupa kop atau identitas organisasi / instansi / kantor. Caranya: dalam area

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

82

ToolBox, pada tab CrystalReport pilih dan klik TextObject. Lalu klik mouse pada
section ini.
Anda buat contoh kop instansi sesuai yang anda inginkan. Pengaturannya sama
seperti mengatur text box pada Ms. Word ( kebangeten kalo gak bisa, Brur!! ) yaitu
lewat klik kanan mouse pada text box tersebut.
111. Page Header adalah section tempat kita menaruh header dari tiap tiap halaman
laporan kita. Biasanya berupa header dari kolom kolom dalam tabel laporan dan
atau judul / titel dari laporan itu.
DATA PENERIMAAN BARANG
Tanggal :
Lalu aturlah lay out header kolom tabel data menyesuaikan kebutuhan dan luas area.
Anda dapat memasukan object Line Object untuk membatasi batas atas dan bawah
titel / header tabel data ini.
Tanggal

Nama Barang

Jenis Barang

Harga Satuan

Jumlah Terima

Satuan Total Harga

112. Details adalah section untuk menempatkan data atau isi tabel. Sama seperti di atas,
aturlah menyesuaikan area yang ada baik dari jenis huruf atau text alignnya
menyesuaikan header tabel yang ada pada section Page Header
113. Kebalikan dari Report Header adalah Report Footer. Section ini tampil dalam
halaman laporan sebagai footer dari laporan. Biasanya berisi pejabat / orang yang
berkompeten menandatangani laporan.
114. Sedangkan kebalikan dari Page Header adalah Page Footer. Section ini tampil pada
setiap halaman laporan pada bagian bawah. Biasanya berupa nomor halaman.

Contoh tampilan laporan ketika dijalankan

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

83

115. Save dan Close CrystalReport1, Langkah selanjutnya adalah mengatur tampilan
halaman output dari CrystalReport1 yaitu Form9(CetakPenerimaan.frm). Atur
properties formnya sebagai berikut :
Caption
= Cetak Data Penerimaan
StartUpPosition
=2-CenterScreen
ScaleMode
=3-Pixel
Lalu atur secara manual ( klik dan drag dengan mouse ) luas area form hingga :
ScaleHeight
= menunjuk pada angka 600
ScaleWidth
= menunjuk pada angka 800
116. Double klik form9, lalu tambahkan script untuk sub prosedur form_unload sebagai
berikut :
---------------------------------------------------------------------------------------------Private Sub Form_Unload(Cancel As Integer)
Form1.Show
Form1(MenuUtama.frm)
ditampilkan
Form1.Enabled=true
menjadikan Form1 enable
Unload me
Unload me ( Form9 )
Me.hide
Form9 tidak tampil di layar
End Sub

---------------------------------------------------------------------------------------------117. Defaultnya, Form ini hanya berisi object CRViewer saja. Klik object tersebut, lalu
atur propertiesnya sebagai berikut :
DisplayGroupTree
= False
DisplayTabs
= False
EnabledExportButton
= True
EnabledGroupTree
= False
EnabledRefreshButton
= True

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

84

CrystalReport2(ReportPengeluaran.Dsr)
Form9(CetakPengeluaran.frm)

&

118. Cobalah anda buat sendiri keduanya. Langkah langkah untuk membuat
CrystalReport2(ReportPengeluaran.Dsr) dan Form10(CetakPengeluaran.frm)
adalah identik atau sama dengan membuat ReportPengeluaran dan CetakPenerimaan
sebagaimana di atas tadi. Source data yang digunakan adalah query
CetakPengeluaran.

CrystalReport3(ReportPersediaan.Dsr) & Form9(CetakPersediaan.frm)


119. Sama seperti langkah ke 118, buatlah CristalReport3 dan Form11 untuk data data
persediaan barang. Source datanya adalah DataBarang.
120. Dan sebagai penutup dari langkah langkah di atas adalah meng-compile ( bahasa
Indonesianya Compile apa ya ?? ) project yang telah anda buat ini.
Sebelumnya simpan project terlebih dahulu ( Save Project ).
Lalu File
Make Loghis.Exe.. dan tempatkan file compile tersebut dalam folder
C:/Loghis.
Setelah proses compile selesai, keluarlah dari Ms. ViBas 6.0 yang menandakan 90%
pekerjaan anda telah terselesaikan.
Langkah selanjutnya adalah membuat file setup-nya ( Packaging )
Catatan penulis :
Bila perlu, anda cari artikel yang membahas secara tersendiri tentang soft Crystal Report
8.5 ini. Atau kalau masih ada kesempatan, penulis juga akan mencoba membahasnya lebih
terperinci lagi. Karena pada dasarnya soft Seagate Crystal Report 8.5 ini fungsinya tidak
sebatas pada apa yang telah dikerjakan tadi.

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

85

Tutorial Visual Basic 6.0


Membuat Program Logistik Barang
( Inventory System )
Imam Budi Kustanto
sim_rusak@yahoo. com

Lisensi Dokumen:
Copyright 2003 - 2006 IlmuKomputer.Com
Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan
secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau
merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen.
Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu
dari IlmuKomputer.Com.

TUTORIAL 4
PACKAGING PROJECT
Untuk membuat file setup dari project ini sangatlah mudah. Anda tinggal mengikuti ( Next
dan OK saja ) wizard yang anda panggil dari :
Start
Microsoft Visual Basic 6.0
Microsoft Visual Basic 6.0 Tools
Package &
Deployment Wizard.

Pada bagian ini anda menentukan lokasi dan nama project yang telah dibuat tadi, yaitu (
klik Browse ) pada folder C:/Loghis/Loghis.vbp
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

85

Lalu komputer akan memproses perintah tersebut.

klik Next atau Enter saja.

Defaultnya, komputer akan menempatkan file setup tersebut sub folder Package dalam
folder yang sama dengan lokasi file project-nya. Klik Next
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

86

Hanya pernyataan bahwa sub folder Package belum ada. Klik Yes untuk membuatnya.

klik OK saja, komputer akan mencarinya pada step selanjutnya.

Bila kita tidak akan menambahkan file lainnya, klik Next

Pilih Single cabs bila ingin file setup ( *.cab ) menjadi satu, atau Multiple cabs bila ingin
di-split dalam ukuran tertentu. Klik Next.
Komunitas eLearning IlmuKomputer.Com
Copyright 2003-2006 IlmuKomputer.Com

87

adalah isian judul / title dari proses instalasi program. Next aja lagi.

adalah penempatan lokasi / shortcut dari file project yang ter-compile

gue juga bingung apa maksudnya. Next aja lagi ahh!!!

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

88

nih juga iya. Gak usah dibaca. Next teruuus!!

Nah kalo yang ini lah gue super tahu. Itu artinya proses telah selesai. Lalu.. FINISH,
Man!

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

89

Penutup
Ternyata untuk membuat sebuah program aplikasi berbasis Visual Basic tidaklah sesulit
yang kita bayangkan semula. Meskipun sedikit yang bisa kita mengerti tentangnya bukan
berarti bahwa itu tidak bisa digunakan untuk membuat program yang jadi.
Namun, hal tersebut juga bukan berarti bahwa proses pembelajaran Visual Basic hanya
cukup sebatas ini saja. Karena tutorial ( yang lumayan panjang ) ini hanyalah membahas
struktur If..Then saja. Masih banyak struktur dan perintah Visual Basic lain yang belum
kita tahu. Sementara sistem informasi yang kita bangun tadi juga masih sangat jauh
untuk dikatakan sebagai sebuah sistem informasi yang sebenarnya.
Ada 2 hal penting yang perlu kita pegang dalam membuat sebuah program :
1. Kegagalan umum yang sering terjadi pada sebuah sistem informasi berbasis computer,
faktor utama penyebabnya bukanlah dari bahasa pemrograman apa digunakan untuk
scripting programnya, juga bukan dari software apa yang digunakan untuk administrasi
databasenya. Sehingga kita tidak bisa mengatakan bahwa ViBas lebih baik dari Fox
Pro atau Delphi, Ms SQL lebih baik dari Ms. Access atau yang lainnya. Kegagalan itu
justru disebabkan oleh karena kekurang-pahaman seorang programmer terhadap sistem
yang hendak dibangunnya itu. Karenanya, langkah pertama yang harus dilakukan
dalam membangun sebuah program aplikasi adalah pahami sedetail mungkin tentang
sistem yang akan kita transformasikan dalam bahasa pemrograman tersebut.
2. Jangan pernah beranggapan bahwa program yang kita buat sudah fix segalanya. Selalu
berpikirlah bahwa program yang kita buat adalah tidak pernah sempurna. Selalu
berpikirlah bahwa orang yang mengoperasikan program kita adalah orang yang masih
awam mengoperasikan komputer. Segala kemungkinan kesalahan pengoperasian
program yang bisa saja terjadi harus kita pikirkan antisipasinya. Misalnya, dari awal
program itu dijalankan, kita sudah harus berpikiran bahwa program tersebut running
hanya karena salah pencet shortcut saja. Segala kemungkinan perkembangan sistem
harus kita pikirkan penanganannya.
Terakhir, bila ada kesalahan dan kekurangan dalam tulisan ini yang menyebabkan error
pada project ini, selamat ber- try and error .

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

90

BIODATA :
Imam Budi Kustanto, lahir 09 Maret 1975. STM Elektronika Komunikasi & S1
FISIP keduanya di Purwokerto. Saat ini bekerja di RS Banjarnegara bagian
Sistem Informasi RS.
Lebih tertarik pada Teknik Komputer, Jaringan, Administrasi Server dan
Database. Klo software suka VB dan AV Editing. Web Programming nggak
terlalu bisa.
Motto : Klo bisa dibikin mudah, kenapa mesti cari yang susah ??!!
Mail : sim_rusak@yahoo. com

Komunitas eLearning IlmuKomputer.Com


Copyright 2003-2006 IlmuKomputer.Com

91

Anda mungkin juga menyukai