Visual Basic adalah sebuah alat yang memungkinkan kita untuk membuat
aplikasi berbasis Windows GUI (Graphical User Interface). Aplikasi yang
dihasilkan mirip seperti aplikasi-aplikasi windows lainnya, seperti MS
Word, MS Excel, Wordpad, dsb; sehingga user yang terbiasa bekerja di
lingkungan windows akan cepat menguasai aplikasi yang kita buat
nantinya.
Aplikasi yang dibuat dengan Visual Basic bekerja
berdasarkan event-event. Contoh event : user klik tombol, pilih menu,
dll. Jadi ketika tidak ada event yang terjadi (user tidak melakukan
apa-apa), aplikasi berada dalam kondisi tidak aktif. Sebenarnya semua
aplikasi windows bekerja berdasarkan event-event. Contoh : MS Word tidak
akan melakukan pekerjaan sebelum kita menyuruhnya (ketik teks, pilih
warna, format font, dsb).
Penggunaan event ini sangat menguntungkan,
karena kita tidak perlu menyelesaikan aplikasi hanya untuk mencoba
sebuah event tertentu. Contoh : untuk melihat apakah aplikasi kita dapat
membuka file, kita cukup menjalankan event tersebut (biasanya pemilihan
menu file open).
Sejarah Visual Basic
- Visual Basic for DOS dan Visual Basic for Windows diperkenalkan pada tahun 1991
- Visual Basic 3 dikeluarkan pada tahun 1993
- Visual Basic 4 dirilis pada akhir 1995 dengan menambahkan dukungan untuk aplikasi 32 bit.
- Visual Basic 5 dikeluarkan pada akhir 1996 dengan menghilangkan dukungan pembuatan aplikasi 16 bit.
- Visual Basic 6, 1998. Aplikasi yang dibuat dengan Visual Basic 6 dapat berjalan pada Windows 95, 98, Millenium, NT, 2000.
Pembuatan Aplikasi
Langkah Umum
1. Buat interface aplikasi dengan menempatkan control / object pada form.
2. Modifikasi properti control.
3. Buat kode pada event-event dari control, dan kode pelengkap (bukan event, misalnya fungsi/prosedur yang kita buat sendiri).
Dengan
adanya event, maka kita dapat mengerjakan aplikasi per event. Jika satu
event sudah berjalan dengan benar, kerjakan event yang lain. Dengan
demikian cara kita membuat aplikasi menjadi modular (kerjakan event 1,
event 2, event 3, dst sehingga menjadi aplikasi yang sebenarnya). Cara
ini juga memudahkan kita untuk men-debug program apabila terjadi
kesalahan.
Visual Basic berjalan pada 3 mode :
- Mode Design, dalam modus inilah pembuatan aplikasi dilaksanakan
- Mode Run, dalam mode ini aplikasi dijalankan.
-
Mode Break, dalam mode ini aplikasi di hentikan sementara mengaktifkan
Visual Basic Debugger (untuk mendebug program, biasanya dilakukan untuk
melacak kesalahan/error).
Visual Basic IDE (Integrated Development Environment)
Window Utama
Window
Utama terdiri dari Title Bar, Menu Bar, dan Toolbar. Pada Title Bar
terdapat nama project, dan mode Visual Basic. Menu Bar menyimpan
menu-menu yang berguna dalam pembuatan aplikasi. Dalam Toolbar kita
dapat menemukan sejumlah shortcut dari menu-menu pada Menu Bar. Pada
Window Utama juga terdapat posisi form dan ukuran form relatif terhadap
layar dalam ukuran Twips.
Form
Di dalam form
inilah kita membuat user interface aplikasi yang akan kita buat dengan
menempatkan control-control. Bayangkan form sebagai kanvas, di dalam
“kanvas” inilah kita akan menggambar bagaimana bentuk GUI aplikasi.
Toolbox
Didalam
Toolbox kita dapat menemukan control-control yang dapat dipergunakan
pada form. Control-control yang lain dapat ditambah dengan mengakses
menu Project Components atau dengan menekan tombol Ctrl + T.
Window Properties
Kita
dapat merubah property-property dari object pada window property ini.
Drop down pada window property menyimpan control-control pada form yang
sedang aktif. Window property mempunyai 2 macam view, Alphabetic dan
Categorized.
Form Layout Window
Dalam window ini kita dapat melihat posisi form relatif terhadap layar monitor kita.
Window Project
Window ini memperlihatkan daftar form dan module aplikasi yang sedang kita kerjakan.
Menempatkan control pada form
Ada 2 cara untuk menempatkan control pada form :
1.
Klik ganda control pada toolbox. Aksi ini akan menambahkan control
tersebut pada form dengan ukuran standar (default) di tengah-tengah
Form.
2. Klik control di Toolbox, lalu pindahkan mouse pointer ke
form. Tekan dan tahan tombol kiri mouse, drag sampai ukuran yang
diinginkan, lepas tombol mouse.
Untuk memindahkan control, klik
controlnya lalu pindahkan ke tempat yang anda inginkan. Pemindahan dapat
juga dilakukan dengan menekan tombol Ctrl dan tombol panah kanan, kiri,
atas atau bawah dengan catatan bahwa control yang ingin dipindahkan
harus mendapat fokus.
Untuk merubah ukuran control, pindahkan mouse
pointer ke tepi control, tekan dan tahan tombol kiri, drag sehingga
didapat ukuran yang diinginkan. Cara lain yaitu dengan cara menekan
tombol Shift dan tombol panah atas, bawah, kiri, atau kanan dengan
catatan control yang ingin dirubah ukurannya harus mendapat fokus. Namun
demikian, beberapa control tidak dapat dirubah ukurannya, contoh :
CommonDialog, Timer.
Penamaan Control
Yang dimaksud dengan
penamaan yaitu memberikan nilai kepada property Name pada control (semua
control mempunyai property Name). Adapun aturannya :
- Maksimal 40 karakter
- Diawali dengan huruf
- Hanya boleh mengandung huruf, angka, dan garis bawah “_”.
Secara kesepakatan, untuk mempermudah membaca kode program, para programmer Visual Basic memberi awalan / prefix 3 huruf.
Jenis Control
Prefix
CommandButton
Label
TextBox
Frame
CheckBox
ComboBox
Timer
OptionButton
HscrollBar
DirListBox
Shape
Image
OLE Container Control
PictureBox
OptionButton
ListBox
VscrollBar
DriveListBox
FileListBox
Line
Data cmd
lbl
txt
fra
chk
cbo
tmr
opt
hsb
dir
shp
img
ole
pic
opt
lst
vsb
drv
fil
lin
dat
Visual Basic Object
Berikut ini akan kita bahas beberapa objek-objek dari Visual Basic.
1. Label
Label
digunakan untuk menampilkan teks pada layar. Penamaan object label
biasanya diberi awalan “lbl” untuk membedakannya dari object-object yang
lain. Contoh: lblNamaPegawai, dapat digunakan untuk menamai sebuah
label yang dipergunakan untuk menampilkan nama pegawai di form. Seperti
object-object yang lain, label juga mempunyai property yang dapat
dirubah/disetting pada waktu design-time atau pada waktu running-time.
Beberapa property yang sering digunakan:
a. Alignment
Digunakan
untuk memberi efek perataan tulisan pada label. Left Justify (rata
kiri), Right Justify (rata kanan), Center (rata tengah).
b. Appereance
Digunakan dalam efek tampilan object. Flat atau 3D. Hanya dapat diatur pada design-time.
c. Autosize
Digunakan
dalam penentuan ukuran object. Jika bernilai True maka ukuran label
akan disesuaikan dengan ukuran tulisan/captionnya. Jika bernilai False
maka ukuran label dapat kita tentukan sendiri.
d. BackColor
Digunakan dalam penentuan warna latar belakang dari label.
e. BackStyle
Digunakan
dalam penentuan sifat label terhadap object lain yang berada
dibawahnya. Transparent digunakan agar object lain yang berada dibawah
label tersebut terlihat. Opaque digunakan agar object lain yang berada
dibawah label tidak terlihat.
f. BorderStyle
Digunakan dalam
penentuan border/garis tepi dari label. Gunakan None untuk membuat label
tanpa border, atau Fixed Single untuk membuat label dengan border.
g. Caption
Mungkin
ini property dari label yang paling sering kita atur. Dimana property
caption menentukan tulisan apa yang akan ditampilkan oleh label
tersebut.
h. Enable
Digunakan dalam penentuan apakah label itu
dapat menerima event (click, double click, dsb) dengan nilai True atau
tidak bila nilainya False.
i. Font
Digunakan dalam penentuan efek tulisan/caption. Jenis huruf, tebal, miring dapat ditentukan disini.
j. Fore Color
Digunakan dalam penentuan efek warna tulisan/caption label.
k. Visible
Digunakan
dalam penentuan apakah label tersebut dapat terlihat atau tidak. Jika
True maka kita dapat melihat label tersebut, sedangkan jika False kita
tidak dapat melihat label tersebut.
2. TextBox
TextBox biasa
dipakai untuk interaksi dengan user yang memerlukan input data dari
keyboard. Misalnya kita gunakan textbox untuk nama user. Penamaan
textbox diberi awalan “txt”. Sebagian besar property textbox sama dengan
label, tetapi ada beberapa yang berbeda dan atau mempunyai arti yang
tidak persis sama.
a. Enable
Jika property Enable dari textbox di
set menjadi True maka kita dapat mengedit isi dari textbox, sedangkan
jika bernilai False kita tidak dapat mengedit isi dari textbox tersebut.
b. MultiLine
Digunakan
untuk menentukan apakah tulisan dalam textbox dapat terdiri dari
beberapa baris. Jika bernilai True maka isi textbox dapat terdiri dari
beberapa baris, sedangkan jika False hanya terdiri dari 1 baris.
c. Alignment
Berbeda dengan label, pada textbox property Alignment hanya dapat bekerja bila property MultiLine bernilai True.
d. PasswordChar
Digunakan
untuk mengganti tampilan karakter yang kita ketik. Misalnya
PasswordChar bernilai “*”, maka setiap karakter yang kita ketik akan
ditampilkan dengan karakter “*” tersebut.
e. ScrollBar
Digunakan
untuk menentukan apakah textbox tersebut memakai scrollbar atau tidak.
None tanpa scrollbar, Horizontal jika textbox memakai scrollbar
horizontal, Vertical jika textbox memakai scrollbar vertical, Both jika
textbox memakai scrollbar horizontal dan vertical.
f. Text
Property textbox yang paling sering kita atur. Yaitu property tulisan/isi textbox.
3. CommandButton
CommandButton merupakan implementasi tombol pada Visual Basic. Jika
kita memakai program berbasis windows yang lain, biasanya mereka
menggunakan command button untuk interaksi user, seperti tombol OK,
Cancel, Save, dsb. Awalan yang dipakai adalah "cmd". Property
commandbutton sebagian besar sama dengan label. Beberapa perbedaan:
a. Cancel
Jika
property ini bernilai True maka kita tidak perlu meng-klik tombol
tersebut, kita cukup menekan tombol escape (ESC) pada keyboard. Dalam
satu form hanya ada 1 tombol yang dapat mempunyai nilai True pada
property Cancel-nya.
b. Default
Jika property ini bernilai
True maka kita tidak perlu meng-klik tombol tersebut, kita cukup menekan
tombol ENTER pada keyboard. Dalam satu form hanya ada 1 tombol yang
dapat mempunyai nilai True pada property Default-nya.
4. OptionButton
OptionButton
biasanya digunakan dalam pemilihan, dimana hanya satu pilihan yang
dapat dipilih pada suatu saat tertentu. Penempatan OptionButton
tergantung pada container-nya. Sekumpulan OptionButton dalam satu
container, dianggap dalam satu grup dimana hanya ada 1 OptionButton yang
dapat dipilih. Lihat gambar dibawah ini.
Disini 3
OptionButton dianggap satu grup dalam 1 container, yaitu form. Oleh
karena itu hanya ada 1 OptionButton yang dapat dipilih (Option1).
Bandingkan dengan gambar dibawah ini.
Dalam gambar
diatas ada 2 OptionButton yang dipilih (Option2 dan Option4). Hal ini
dimungkinkan karena container yang dipakai berbeda (Frame1 dan Frame2).
Jika sebuah OptionButton dipilih, maka property Value-nya bernilai True. Jika tidak dipilih maka Value-nya bernilai False.
5. CheckBox
Berbeda dengan OptionButton yang hanya dapat dipilih 1 dalam 1
container, kita dapat memilih satu, beberapa, atau bahkan semua checkbox
karena chekbox tidak tergantung kepada container-nya. Walaupun begitu,
kita dapat menempatkannya pada container seperti Frame untuk memberikan
tampilan yang lebih jelas.
Property Value dari
CheckBox terdiri dari 3 kemungkinan, 0-Unchecked, 1-Checked, 2-Grayed.
Jadi dalam gambar kiri atas, nilai property Value Check1 adalah 0,
Check2 adalah 1, dan Check3 adalah 2.
6. Menu Editor
Menu
Editor dapat kita gunakan untuk membuat sistem menu dari program
aplikasi. Jika terbiasa menggunakan program berbasis windows, tentu
tidak asing lagi dengan istilah menu. Contoh : di dalam Microsoft Word
kita dapat menemui menu-menu File, Edit, View dan sebagainya.
Untuk
memulai pembuatan menu, aktifkan Menu Editor pada Toolbar Visual Basic.
Jika icon nya disabled, aktifkan/tampilkan dulu form tempat dimana kita
akan membuat sistem menu tersebut. Cara yang lain yaitu dengan klik
kanan pada form tempat dimana kita akan membuat sistem menu lalu pilih
Menu Editor.
Isi dari Caption akan ditampilkan pada
layar, seperti property Caption pada Label. Jika Captionnnya diberi
tanda "&" berarti selain mengklik menu kita dapat juga menggunakan
tombol Alt dan huruf yang menyertai dibelakang tanda "&".
Isi dari Name adalah merupakan pengenal menu, seperti juga pada property Name pada object-object lainnya.
Menu juga dapat dilengkapi dengan Shortcut yang dapat dipilih dari Drop
Down yang tersedia. Satu Shortcut hanya dapat diberikan kepada satu
menu. (Contoh: Jika Ctrl+O sudah diberikan kepada Open, maka tidak bisa
diberikan kepada menu Font, misalnya.)
Atur property Enabled untuk
mengatur apakah menu dapat dipilih atau tidak dan property Visible untuk
mengatur apakah menu dapat dilihat atau tidak.
Gunakan tombol panah
kiri/kanan untuk mengatur indent dari menu. Menu yang berindent
(menjorok ke dalam/kanan) adalah merupakan sub menu dari menu diatasnya
yang menjorok lebih kekiri. Dalam gambar diatas, menu New dan Open
merupakan sub menu dari menu File.
Fungsi String
Adakalanya
didalam pembuatan sebuah program kita perlu memanipulasi string.
Manipulasi ini dapat dilakukan dengan cara menggunakan fungsi-fungsi
bawaan Visual Basic yang memang diperuntukkan untuk memanipulasi string.
Berikut diberikan beberapa fungsi yang sering dipakai. (Catatan: dalam
program, penulisan string diapit dengan tanda kutip ganda).
1. Val(string)
Fungsi
Val menerima sebuah argumen berupa string dan merubahnya menjadi
numerik. Contoh: Val("1990") akan menghasilkan angka 1990. Val("1990
AD") akan menghasilkan angka 1990. Val("Th 1990") akan menghasilkan
angka 0.
2. Left(string, length)
Fungsi Left yang menerima 2 buah
argumen yaitu string dan length, akan menghasilkan string sepanjang
length karakter. Contoh: Left(“Global”,3) akan menghasilkan “Glo”
3. Right(string,length)
Jika
fungsi Left mengambil karakter dari kiri, maka fungsi Right akan
mengambil karakter dari kanan string sebanyak length karakter.
Contoh: Right(“Global”,3) akan menghasilkan “bal”
4. Mid(string,start,length)
Fungsi Mid akan mengambil karakter dari string dimulai pada posisi start sepanjang length karakter.
Contoh: Mid(“Global”,3,3) akan menghasilkan “oba”
5. Ltrim(string)
Fungsi Ltrim akan membuang semua spasi yang berada disebelah kiri string.
Contoh: Ltrim(“ Global”) akan menghasilkan “Global”
6. Rtrim(string)
RTrim akan membuang semua spasi yang berada disebelah kanan string.
Contoh: Nama = Ltrim(“Global ”) akan menghasilkan “Global”
7. Trim(string)
Fungsi Trim akan membuang semua spasi yang berada disebelah kanan dan di sebelah kiri string.
Contoh: Trim(“ Global ”) akan menghasilkan “Global”
8. Len(string)
Fungsi Len akan menghitung jumlah karakter yang terdapat pada string.
Contoh: Len(“Global”) akan menghasilkan 6
9. UCase(string)
Fungsi UCase akan merubah semua huruf pada string menjadi huruf besar/huruf kapital.
Contoh: UCase(“Global”) akan menghasilkan “GLOBAL”
10. LCase(string)
Kebalikannya dari UCase, LCase akan merubah semua huruf pada string menjadi huruf kecil.
Contoh: LCase(“GlobAL”) akan menghasilkan “global”
Percabangan Bersyarat
If..Then
IF THEN
hanya akan dijalankan bila benar
Contoh:
If Text1.Text = "Hallo" Then MsgBox "Hallo Juga!"
If..Then..Else
IF THEN
ELSE
END IF
Jika benar, jalankan , jika tidak jalankan .
Contoh:
If Val(Text1.Text) > 65 Then
MsgBox "Selamat! Anda Lulus"
Else
MsgBox "Maaf! Anda Tidak Lulus"
End If
Penggunaan IF..THEN..ELSE dapat saling berkait (nested):
IF THEN
ELSE
IF THEN
ELSE
END IF
END IF
Contoh:
If Val(Text1.Text) > 80 then
MsgBox "Nilai = A"
Else
If Val(Text1.Text) > 60 then
MsgBox "Nilai = B"
Else
MsgBox "Nilai = C"
End If
End If
Baris kode diatas dapat disederhanakan menjadi:
IF THEN
ELSEIF THEN
ELSE
END IF
Contoh:
If Val(Text1.Text) > 80 then
MsgBox "Nilai = A"
ElseIf Val(Text1.Text) > 60 then
MsgBox "Nilai = B"
Else
MsgBox "Nilai = C"
End If
Select Case
Digunakan untuk memilih dari beberapa pilihan bergantung pada nilai
yang akan diuji. Pengujian dilakukan dari blok case teratas sampai
terbawah, dan hanya ada satu blok case yang akan dijalankan.
SELECT CASE
CASE
CASE
CASE ELSE
END SELECT
Contoh:
Select Case Text1.Text
Case "A"
MsgBox "Nilai = 4"
Case "B"
MsgBox "Nilai = 3"
Case "C"
MsgBox "Nilai = 2"
Case "D"
MsgBox "Nilai = 1"
End Select
Pemindahan Fokus pada Textbox
Pemindahan
fokus untuk textbox dapat dilakukan dengan 3 cara. Cara pertama ialah
dengan menggunakan mouse, klik textbox yang ingin kita isi. Cara kedua
ialah dengan menggunakan tombol “Tab” pada keyboard. Cara yang ketiga
ialah dengan menggunakan kode pada event “keypress”.
Dengan cara
pertama, kita cukup meng-klik textbox yang kita mau dengan mouse. Dengan
cara ini pemindahan fokus textbox agak sulit dilakukan karena tangan
kita harus meraih mouse dan menekan tombol kiri pada textbox yang ingin
diisi terlebih dahulu.
Dengan cara kedua, pemindahan menjadi lebih
mudah karena kita hanya cukup menekan tombol tab. Pada cara ini
perpindahan fokus tergantung dari property TabIndex masing-masing
textbox. Dimana nilai terkecil akan menerima fokus terlebih dahulu.
Cara
ketiga lebih mudah lagi, karena perpindahan tidak tergantung pada
property TabIndex tersebut. Cukup tekan enter dan kita set textbox mana
yang akan menerima fokus berikutnya.
‘Kode dibawah ini akan memindahkan fokus ke Text2 setelah kita menekan Enter pada Text1
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn then
Text2.SetFocus
End If
End Sub
Penggunaan event Change pada textbox
Event Change pada textbox terjadi bila kita merubah isi dari textbox
melalui pengisian langsung pada textbox yang bersangkutan atau melalui
perubahan setting pada property Text-nya pada saat running-time.
‘Kode dibawah ini akan menambahkan “a” dengan isi dari Text1 dan menyimpannya ke Text2
Private Sub Text1_Change()
Text2.Text = “a” & Text1.Text
End Sub
Tipe-Tipe Data dalam Visual Basic
Tipe Data Range Karakter
Integer -32768 s/d 32767 %
Long -2147483648 s/d 2147483647 &
Single Negatif: -3,402823E38 s/d -1,401298E-45
Positif: 1,401298E-45 s/d 3,402823E38 !
Double Negatif: -1,79769313486232E308 s/d
-4,94065645841247E-324
Positif: 4,94065645841247E-324 s/d
1,79769313486232E308 #
Currency -922337203685477,5808 s/d
922337203685477,5807 @
String 0 s/d 2 milyar karakter (win32)
0 s/d 65535 karakter (win16) $
Byte 0 s/d 255
Boolean True (Benar) dan False (Salah)
Date 1 Januari 100 s/d 31 Desember 9999
Object Referensi Object
Variant Null, Error, dan seluruh tipe data lain diatas
Database Programming Dengan VB6
Membuat Database
Pembuatan database yang dibahas pada modul ini mencakup pembuatan
database Microsoft Access (*.mdb) dengan menggunakan Visual Basic
Add-Ins yaitu Visual Data Manager.
Untuk menjalankan Visual Data
Manager, pilih menu Add-Ins Visual Data Manager pada menu utama VB
6.0. Setelah itu akan muncul tampilan seperti dibawah ini.
Untuk membuat sebuah database, pilih menu File New Microsoft Access Version 7.0 MDB.
Setelah itu akan muncul tampilan yang meminta kita untuk memasukkan nama file database dan lokasinya.
Setelah menentukan lokasi dan nama databasenya, tekan tombol Save hingga muncul tampilan berikut.
Klik kanan pada Database Window dan pilih New Table, sehingga tampil window Table Structure.
Ketikkan TbBarang pada Table Name lalu tekan Add Field yang akan menampilkan form berikut
Ketikkan KodeBarang pada Name sebagai nama dari field yang pertama.
Pilih Text pada Type untuk menentukan tipe data dari field Kode Barang.
Isikan 8 pada Size untuk menentukan lebar data yang dapat disimpan pada
field tersebut. Klik OK.
Untuk menambahkan field-field yang lain,
isi lagi Name, pilih Type dan isi Size. Jika semua field sudah
dimasukkan, tekan Close untuk menutup window Add Field.
Penambahan Index dilakukan dengan cara yang hampir sama dengan penambahan Field. Klik Add Index hingga muncul tampilan
Ketikkan IdxKodeBarang pada Name sebagai nama dari index. Setelah itu
pilih field yang ingin di-index pada Available Fields. Field yang
di-Index akan tampil pada Indexed Fields. Dengan menggunakan Index, maka
record-record akan diurutkan berdasarkan field yang diindex. Selain itu
dengan adanya Index, kita dapat menggunakan metode Seek untuk mencari
record. Dengan cara ini pencarian record lebih cepat daripada dengan
cara sequential dengan metode Find.
Bound Control
Di
dalam Visual Basic, terdapat sebuah control yang disebut Data Control.
Dengan Data Control ini dan beberapa control yang dapat dihubungkan
dengan Data Control (disebut juga Data-Bound Control), kita dapat
membuat sebuah program database sederhana dengan mudah.
Walaupun
demikian, tidak semua database di support oleh Visual Basic Data
Control. Access dan dBase adalah beberapa contoh yang telah disupport
oleh Visual Basic. Untuk lebih jelasnya letakkan sebuah Data Control
pada form, lihat property Connect pada Data Control. Disana dapat
dilihat list yang disupport oleh Visual Basic.
Untuk pemakaian,
letakkan sebuah Data Control pada form. Set property DatabaseName dengan
nama database Access beserta path-nya. Set property RecordSource dengan
nama table yang ingin digunakan. Visual Basic juga memungkinkan
penggunaan statement SQL SELECT dan query yang disimpan pada database
Access.
Selain menghubungkan form dengan database, Data Control juga dapat digunakan untuk navigasi record-record.
Kasus I : Browsing Database dengan Bound Control
Buat sebuah project dengan nama prjBound.vbp. Selanjutnya lihat tabel di bawah :
Object Property Setting
Form Name frmBarang
Caption Pemeliharaan Data Barang
Data Name datBarang
Caption Barang
DatabaseName c:\vb\data.mdb
RecordSource tbBarang
Text Name txtKodeBarang
DataField KodeBarang
DataSource datBarang
Text
Name txtNama
DataField Nama
DataSource datBarang
Text Name txtHargaSatuan
DataField HargaSatuan
DataSource datBarang
Object Property Setting
Text Name txtStok
DataField Stok
DataSource datBarang
Gunakan Visual Basic Menu Editor untuk membuat menu sbb:
Caption Name
&File mnuFile
----E&xit mnuFileExit
Pada event click untuk mnuFileExit ketikkan perintah:
Private Sub mnuFileExit_Click()
Unload Me
End Sub
Jalankan
program, perhatikan bahwa textbox langsung terisi dengan data record
pertama dalam tabel tbBarang. Coba juga melakukan navigasi record-record
dengan mengklik First Record, Previous Record, Next Record, Last
Record. Perhatikan juga bahwa isi text akan otomatis di-update
berdasarkan navigasi yang kita lakukan.
Selain itu, jika kita
melakukan perubahan pada data yang aktif, perubahan akan otomatis
disimpan apabila kita berpindah record. Dengan demikian kita sudah dapat
membuat sebuah aplikasi database sederhana tanpa kode sedikitpun. Pada
contoh diatas, kode program hanya untuk menu keluar aplikasi.
Namun
demikian, aplikasi ini tidak / belum dapat melakukan validasi pemasukan
data, menambah data ataupun menghapus data. Untuk itu kita perlu
memodifikasi aplikasi tersebut diatas.
Kasus II : Validasi Data
Agar aplikasi kita dapat melakukan validasi data, maka kita harus
memodifikasi aplikasi sebelummnya. Tehnik yang dilakukan ialah dengan
menggunakan event Validate dari Data Control.
Setiap navigasi -
merubah posisi record / pindah ke record lain, Visual Basic akan
menjalankan event Validate dari Data Control tersebut. Di dalam event
inilah kita akan menulis kode yang nantinya dapat memvalidasi data yang
akan disimpan ke dalam database.
Perubahan posisi record dengan data
control dinyatakan dengan konstanta Visual Basic :
vbDataActionMoveFirst – pindah ke record pertama,
vbDataActionMovePrevious – pindah ke record sebelumnya,
vbDataActionMoveNext – pindah 1 record ke depan, dan
vbDataActionMoveLast – pindah ke record terakhir. Jadi di dalam event
ini kita akan mengecek berdasarkan konstanta di atas.
Selanjutnya
kita cek apakah pengisian data sudah sesuai dengan peraturan yang kita
buat, misalnya textbox KodeBarang harus diisi. Jika setelah kita cek
KodeBarang tidak diisi, maka keluarkan pesan dan set Action menjadi
dbDataActionCancel (konstanta built-in Visual Basic yang akan
membatalkan).
Buka project diatas, lalu ketikkan kode dibawah ini sebagai Validate event dari data control :
Private Sub datBarang_Validate (Action As Integer, Save As Integer)
If Action = vbDataActionMoveFirst or Action =
vbDataActionMovePrevious or Action = vbDataActionMoveNext or Action =
vbDataActionMoveLast then
If txtKodeBarang.Text = “” then
Msgbox “Kode Barang harus diisi”, vbExclamation
txtKodeBarang.SetFocus
Action = vbDataActionCancel
End If
End If
End Sub
Jika user melakukan perpindahan record, maka cek property text pada
txtKodeBarang. Jika textbox tersebut kosong, keluarkan pesan error, lalu
set focus pada textbox tersebut dan batalkan perpindahan pointer
record.
Catatan:
Konstanta Visual Basic Nilai Pengganti
vbDataActionCancel 0
vbDataActionMoveFirst 1
vbDataActionMovePrevious 2
vbDataAvtionMoveNext 3
vbDataActionMoveLast 4
Kasus III : Menyediakan Fitur Undo pada Aplikasi
Situasi : setelah user melakukan perubahan pada bound control tetapi
sebelum melakukan perpindahan pointer record untuk menyimpan perubahan,
user ingin membatalkan perubahan yang ia buat. Untuk itu Visual Basic
telah menyediakan UpdateControls Method dari Data Control. Dengan
mengeksekusi method ini, maka Visual Basic akan membaca ulang database
dan mengisi bound control dengan data asli dari database.
Modifikasi project diatas dengan merubah sistem menu menjadi :
Caption Name
&File mnuFile
----E&xit mnuFileExit
&Edit mnuEdit
----&Undo mnuEditUndo
Ketikkan kode berikut :
Private Sub mnuEditUndo_Click()
datBarang.UpdateControls
End Sub
Dengan adanya kode diatas, maka jika user memilih menu Edit Undo,
semua textbox akan terisi dengan data asli sebelum user melakukan
perubahan.
Kasus IV : Menambah Record
Penambahan
record pada bound controls dapat dilakukan dengan 2 cara : dengan
merubah property data control atau dengan bantuan kode.
Property
yang harus dirubah agar kita dapat menambah record baru ialah property
EOFAction. Set property tersebut dengan 2 – AddNew. Dengan demikian jika
pointer record telah berada pada record terakhir, penekanan tombol Move
Next akan menyebabkan Visual Basic menambahkan record baru dan mengisi
semua bound control dengan nilai default dari database (biasanya kosong /
tidak diisi). Setelah entry data selesai, penyimpanan dilakukan oleh
Visual Basic jika kita berpindah pointer ke record lain atau menambah
record baru.
Cara lain yaitu dengan menggunakan kode. Buka project
sebelumnya, kembalikan setting property EOFAction pada keadaan semula 0
– Move Last dan rubah sistem menu menjadi :
Caption Name
&File mnuFile
----E&xit mnuFileExit
&Edit mnuEdit
----&Undo mnuEditUndo
&Data mnuData
----&Add Record mnuDataAdd
----&Save Record mnuDataSave
Ketikkan kode dibawah ini :
Private Sub Form_Load()
mnuDataSave.Enabled = False
End Sub
Private Sub mnuDataAdd_Click()
datBarang.Recordset.AddNew
mnuDataSave.Enabled = True
mnuDataAdd.Enabled = False
txtKodeBarang.SetFocus
End Sub
Private Sub mnuDataSave_Click()
datBarang.Recordset.Update
mnuDataSave.Enabled = False
mnuDataAdd.Enabled = True
End Sub
Ketika user memilih menu Data Add, metode AddNew dari data control
akan mereset textbox menjadi nilai defaultnya (kosong / tidak diisi) dan
menyiapkan tempat untuk record baru nantinya. Selanjutnya menu Save
akan di-enable dan menu Add akan di-disable dan merubah focus ke
txtKodeBarang.
Ketika user memiih menu Data Save, metode Update
akan mengkopi isi dari textbox ke dalam database dan mengupdate table
sebagai langkah akhir penyimpanan. Selanjutnya menu Save akan di-disable
dan menu Add akan di-enable.
Kasus V : Menghapus Data
Kadang diperlukan juga suatu fitur aplikasi yaitu untuk menghapus data.
Penghapusan ini biasanya dilakukan apabila, misalnya, penjualan suatu
barang tertentu dihapuskan atau dengan kata lain kita tidak menjual
barang tersebut lagi untuk seterusnya.
Untuk itu buka kembali project diatas. Rubah sistem menu menjadi :
Caption Name
&File mnuFile
----E&xit mnuFileExit
&Edit mnuEdit
----&Undo mnuEditUndo
&Data mnuData
----&Add Record mnuDataAdd
----&Save Record mnuDataSave
----&Delete Record mnuDataDelete
Lalu ketikkan kode berikut :
Private Sub mnuDataDelete_Click()
if MsgBox(“Hapus data ini ?”, vbQuestion + vbYesNo + vbDefaultButton2) = vbYes then
datBarang.Recordset.Delete
datBarang.Recordset.MoveFirst
End If
End Sub
Jika user memilih menu Data Delete Record, maka akan keluar kotak
pesan yang menanyakan konfirmasi penghapusan. Jika user benar-benar
ingin menghapus data (user pilih Yes), maka record aktif akan dihapus.
Selanjutnya pointer record akan berpindah ke record pertama. Ini untuk
menghindari error sebab setelah record dihapus, pointer record tidak
akan menuju ke suatu record yang valid.
Kasus VI : Browse Data dengan DBGrid
Untuk user yang biasa menggunakan aplikasi Spreadsheet (Lotus, Excel),
mungkin membutuhkan suatu cara penyajian data dalam bentuk tabel. Untuk
menyediakan fitur tersebut, kita dapat menggunakan control Data Bound
Grid (DBGrid).
Buka kembali project diatas. Tambahkan sebuah CommandButton pada form tersebut :
Object Property Setting
CommandButton Name cmdBrowseBarang
Caption Browse Data Barang
Ketikkan kode berikut sebagai event klik dari tombol yang baru kita buat tersebut:
Private Sub cmdBrowseBarang_Click()
frmBrowseBarang.Show vbModal
End Sub
Maksudnya
ialah agar menampilkan form frmBrowseBarang tersebut sebagai modal.
Sebelum from frmBrowseBarang ditutup, user tidak akan bisa pindah ke
form yang lain.
Setelah itu tambah 1 buah form, 1 buah data control, sebuah DBGrid dan CommandButton:
Object
Property Setting
Form Name frmBrowseBarang
Caption Browse Data Barang
Data Name datBarang
Caption Barang
DatabaseName c:\vb\data.mdb
RecordSource tbBarang
Visible False
DBGrid Name grdBrowseBarang
Align 1 - vbAlignTop
DataSource datBarang
CommandButton Name cmdExit
Caption Keluar
Ketikkan kode berikut sebagai event click dari cmdExit :
Private Sub cmdExit_Click()
Unload Me
End Sub
Jadi jika user klik tombol Keluar, form akan di-unload dan kembali ke form sebelumnya.
Untuk mengisi judul kolom-kolom DBGrid, klik kanan pada DBGrid tersebut
dan pilih Retrieve Fields. Judul kolom tersebut akan terisi otomatis
berdasarkan nama field dari table tbBarang.
Klik kanan DBGrid, pilih
Properties…, pada tab General kita dapat memberikan judul untuk DBGrid
tersebut dengan mengisi box Caption.
Jika ingin merubah judul kolom, pilih tab Columns dan rubah Caption dari kolom-kolom tersebut.
Agar user dapat menambahkan data baru langsung pada DBGrid, rubah
property AllowAddNew menjadi True atau dengan membari tanda centang pada
AllowAddNew pada tab General.
Agar user dapat menghapus data
langsung pada DBGrid, rubah property AllowDelete menjadi True atau
dengan memberi tanda centang pada AllowDelete pada tab General.
Setelah program dijalankan, DBGrid akan langsung terisi dengan data dari
database. Selain itu user dapat menambah data baru, merubah data dan
menghapus langsung pada DBGrid.
Data Access Object
Dengan Data Control, kita dapat dengan mudah membuat aplikasi database
tanpa atau dengan sedikit kode. Walupun demikian Data Control membatasi
akses kita terhadap database itu sendiri. Untuk dapat melakukan kontrol
penuh terhadap database dengan fleksibilitas yang besar, Microsoft Jet
database engine menyediakan metode lain yaitu dengan menggunakan Data
Access Object (DAO) – walaupun dengan koding yang lebih banyak.
Deklarasikan variabel database dan recordset
Contoh:
Dim dbBarang As Database
Dim rsPemilik As Recordset
Set database dan recordset
Contoh:
Set dbBarang = OpenDatabase("c:\data.mdb")
Set rsPemilik = db.OpenRecordset("tbPemilik")
Catatan: tbPemilik adalah nama tabel.
Menambah record baru
Contoh:
rsPemilik.AddNew
rsPemilik!KodePemilik = txtKodePemilik.Text
rsPemilik!NamaPemilik = txtNamaPemilik.Text
rsPemilik.Update
Mencari data dengan index
Contoh:
rsPemilik.Index = "idxKodePemilik"
rsPemilik.Seek "=", txtCari.Text
Menghapus record
Contoh:
rsPemilik.Delete
rsPemilik.MoveFirst/MoveLast
Catatan:
setelah penghapusan data, pointer record tidak menunjuk ke record yang
valid. Oleh karena itu untuk menghindari masalah, pindahkan pointer
record ke record pertama/terakhir.
Merubah data
Contoh:
rsPemilik.Edit
rsPemilik!KodePemilik = txtKodePemilik.Text
rsPemilik!NamaPemilik = txtNamaPemilik.Text
rsPemilik.Update
Catatan
: Untuk menghapus atau merubah data, data yang ingin dirubah / dihapus
harus dijadikan record aktif dengan terlebih dahulu melakukan pencarian
terhadap record tersebut. Jika data yang dicari ada, baru dapat
dilakukan penghapusan / perubahan.
Contoh Kasus : Pembuatan aplikasi pemeliharaan data barang
Object Property Setting
Form Name FrmBarang
Caption Pemeliharaan Data Barang
TextBox Name txtKodeBarang
Text Kosongkan
TextBox Name txtNama
Text Kosongkan
TextBox Name txtHargaSatuan
Text Kosongkan
TextBox Name txtStok
Text Kosongkan
Frame Caption Kosongkan
CommandButton Name cmdAdd
Caption &Tambah
CommandButton Name cmdEdit
Caption &Rubah
CommandButton Name cmdDelete
Caption &Hapus
CommandButton Name cmdExit
Caption &Keluar
Listing Kode
Dim dbBarang As Database
Dim rsBarang As Recordset
Deklarasi variabel database dan recordset
Sub DisableBox()
txtNama.Enabled = False
txtNama.BackColor = vbButtonFace
txtHargaSatuan.Enabled = False
txtHargaSatuan.BackColor = vbButtonFace
txtStok.Enabled = False
txtStok.BackColor = vbButtonFace
End Sub
Prosedur DisableBox akan men-disable-kan textbox Nama, HargaSatuan dan Stok
Sub EnableBox()
txtNama.Enabled = True
txtNama.BackColor = vbWhite
txtHargaSatuan.Enabled = True
txtHargaSatuan.BackColor = vbWhite
txtStok.Enabled = True
txtStok.BackColor = vbWhite
End Sub
Prosedur EnableBox akan meng-enable-kan textbox Nama, HargaSatuan dan Stok
Sub ClearBox()
txtKodeBarang.Text = ""
txtNama.Text = ""
txtHargaSatuan.Text = ""
txtStok.Text = ""
txtKodeBarang.SetFocus
End Sub
Prosedur ClearBox akan membersihkan textbox KodeBarang, Nama, HargaSatuan dan Stok serta merubah focus ke KodeBarang.
Sub ClearBox2()
txtNama.Text = ""
txtHargaSatuan.Text = ""
txtStok.Text = ""
End Sub
Prosedur ClearBox2 akan membersihkan textbox Nama, HargaSatuan dan Stok.
Private Sub cmdAdd_Click()
rsBarang.AddNew
rsBarang!KodeBarang = txtKodeBarang
rsBarang!Nama = txtNama
rsBarang!HargaSatuan = txtHargaSatuan
rsBarang!Stok = txtStok
rsBarang.Update
ClearBox
DisableBox
cmdAdd.Enabled = False
End Sub
Jika
user klik tombol Add, method AddNew akan menyediakan tempat untuk data /
record baru. Selanjutnya field-field akan diisi berdasarkan textbox
yang bersangkutan. Setelah itu method Update akan melakukan penyimpanan,
panggil prosedur ClearBox dan DisableBox, disable-kan tombol Add.
Private Sub cmdDelete_Click()
rsBarang.Delete
rsBarang.MoveFirst
ClearBox
cmdEdit.Enabled = False
cmdDelete.Enabled = False
End Sub
Jika
user klik tombol Delete, data aktif yang ditampilkan di layar akan
dihapus, lalu panggil prosedur ClearBox dan disable-kan tombol Edit dan
Delete. Untuk menghapus data sebelumnya jalankan terlebih dahulu
fasilitas pencarian untuk mencari dan memindahkan pointer record ke
record yang ingin dihapus tersebut.
Private Sub cmdEdit_Click()
If cmdEdit.Caption = "&Rubah" Then
EnableBox
cmdEdit.Caption = "&Simpan Perubahan"
cmdDelete.Enabled = False
Else
rsBarang.Edit
rsBarang!KodeBarang = txtKodeBarang
rsBarang!Nama = txtNama
rsBarang!HargaSatuan = txtHargaSatuan
rsBarang!Stok = txtStok
rsBarang.Update
ClearBox
DisableBox
cmdEdit.Caption = "&Rubah"
cmdEdit.Enabled = False
End If
End Sub
Jika
captionnya “Rubah”, penekanan tombol akan memanggil prosedur EnableBox,
merubah Caption tombol menjadi “Simpan Perubahan” dan men-disable-kan
tombol Delete.
Jika captionnya “Simpan Perubahan”, simpan
perubahan data ke dalam database, panggil ClearBox, DisableBox, rubah
caption menjadi “Rubah” dan disablekan tombol tersebut.
Private Sub cmdExit_Click()
Unload Me
End Sub
Tombol Exit akan membawa user keluar dari program.
Private Sub Form_Load()
Set dbBarang = OpenDatabase(App.Path + "\glosell.mdb")
Set rsBarang = dbBarang.OpenRecordset("TbBarang")
DisableBox
cmdAdd.Enabled = False
cmdEdit.Enabled = False
cmdDelete.Enabled = False
End Sub
Buka database dan recordset, panggil DisableBox, disable-kan tombol Add, Edit dan Delete.
Private Sub txtKodeBarang_Change()
If Len(txtKodeBarang) < 8 Then
ClearBox2
DisableBox
cmdAdd.Enabled = False
Exit Sub
End If
rsBarang.Index = "IdxKodeBarang"
rsBarang.Seek "=", txtKodeBarang
If Not rsBarang.NoMatch Then
txtNama.Text = rsBarang!Nama
txtHargaSatuan.Text = rsBarang!HargaSatuan
txtStok.Text = rsBarang!Stok
cmdEdit.Enabled = True
cmdDelete.Enabled = True
Else
EnableBox
ClearBox2
cmdAdd.Enabled = True
End If
End Sub
Private Sub txtKodeBarang_KeyPress(KeyAscii As Integer)
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End Sub
Private Sub txtNama_KeyPress(KeyAscii As Integer)
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End Sub
Aplikasi Database dengan 2 Tabel atau Lebih
Dalam
pembuatan aplikasi database, ada kemungkinan pemakaian database dengan 2
tabel atau lebih. Misalnya dalam aplikasi penjualan, diperlukan tabel
Pelanggan, Barang dan Transaksi. Dimana ketika kita melakukan Transaksi
Penjualan, Pelanggan yang membeli dan Barang yang dibelinya akan kita
simpan ke dalam tabel Transaksi.
Untuk lebih jelasnya diberikan contoh kasus sebagai berikut :
Buatlah
sebuah aplikasi penjualan dengan menggunakan database Access yang
terdiri dari 3 tabel tbPelanggan, tbBarang dan tbTransaksi dengan
ketentuan field-field sebagai berikut:
Tabel tbPelanggan
Field Name Field Type Field Size
KodePelanggan Text 5
Nama Text 20
Alamat Text 100
Telepon Text 8
Tabel diindex berdasarkan field KodePelanggan dengan nama index idxKodePelanggan
Tabel tbBarang
Field Name Field Type Field Size
KodeBarang Text 5
Nama Text 20
Harga Currency
Stok Integer
Tabel diindex berdasarkan field KodeBarang dengan nama index idxKodeBarang
Tabel tbTransaksi
Field Name Field Type Field Type
NoTrans Text 5
Tanggal Date/Time
KodePelanggan Text 5
KodeBarang Text 5
Jumlah Integer
Total Currency
Tabel diindex berdasarkan field NoTrans dengan nama index idxNoTrans
Selanjutnya, buatlah form Menu Utama, Data Pelanggan ,Data Barang dan Transaksi.
Input
Kode Barang dan Kode Pelanggan pada form Transaksi dilakukan dengan
memilih data yang ada dari dropdown yang tersedia. Untuk itu kita
mempergunakan DBCombo dari Microsoft Data Bound List Controls 6.0.
Object Type Property Setting
Data Name dtaPelanggan
Caption Pelanggan
DatabaseName c:\vb\data.mdb
RecordSource tbPelanggan
Visible False
DBCombo Name dbcKodePelanggan
ListField KodePelanggan
RowSource dtaPelanggan
Style 2 - dbcDropDownList
Data Name dtaBarang
Caption Barang
DatabaseName c:\vb\data.mdb
RecordSource tbBarang
Visible False
DBCombo Name dbcKodeBarang
ListField KodeBarang
RowSource dtaBarang
Style 2 - dbcDropDownList
Deklarasikan recordset pencarian pada General Declaration:
Public rsBarangCari as Recordset
Public rsPelangganCari as Recordset
Set
recordset dengan tabel database pada Form_Load (asumsi : db adalah
variabel untuk database yang telah diset ke file database)
Set rsBarangCari = db.OpenRecordset(“tbBarang”)
Set rsPelangganCari = db.OpenRecordset(“tbPelanggan”)
rsBarangCari.Index = “idxKodeBarang”
rsPelangganCari.Index = “idxKodePelanggan”
Pada event Click dbcKodePelanggan ketikkan:
Private Sub dbcKodePelanggan_Click(Area As Integer)
If Area = dbcListArea then
rsPelangganCari.Seek "=",dbcKodePelanggan.Text
txtNamaPelanggan.Text = rsPelangganCari!Nama
End If
End Sub
Pada event Click dbcKodeBarang ketikkan:
Private Sub dbcKodeBarang_Click(Area As Integer)
If Area = dbcListArea then
rsBarangCari.Seek "=",dbcKodeBarang.Text
txtNamaBarang.Text = rsBarangCari!Nama
txtHargaSatuan.Text = rsBarangCari!Harga
End If
End Sub
Setelah program dijalankan, bukalah form Transaksi. Perhatikan bahwa
kita cukup memilih KodePelanggan dari dropdown yang tersedia maka
NamaPelanggan akan terisi secara otomatis. Hal ini berlaku pula jika
kita memilih KodeBarang dari drop down yang tersedia, Namabarang dan
Harga Satuan akan terisi secara otomatis.
Adapun untuk penyimpanan,
yang kita simpan adalah KodePelanggan (didapat dari
dbcKodePelanggan.Text) dan KodeBarang (didapat dari dbcKodeBarang.Text).
Pembuatan Laporan pada Visual Basic
Pendahuluan
Pembuatan report / laporan dimaksudkan agar user dapat menghasilkan
keluaran / output berupa cetakan ke atas kertas. Laporan ini biasanya
diperlukan oleh para manajer untuk pengambilan keputusan-keputusan.
Sebelumnya pembuatan laporan harus menggunakan program dari luar
seperti Seagate Crystal Report, atau dengan mengkoding sendiri semua
langkah-langkah dari pembacaan data, looping, pencetakan dan format
laporannya. Tentu saja pembuatan laporan dengan cara koding seperti ini
tidak mudah karena diperlukan berlembar-lembar kertas agar dapat dicapai
format laporan yang diinginkan.
Untunglah Microsoft menyadari hal
ini dan memasukkan fitur pembuatan laporan pada Visual Basic versi 6,
yaitu Microsoft Data Report Designer. Dengan fitur ini, programmer dapat
dengan mudah membuat laporan karena sifatnya yang WYSIWYG dan mirip
seperti pembuatan form pada umumnya. Laporan yang dihasilkan pun
defaultnya hanya di-preview, sehingga dapat mengurangi penggunaan kertas
yang tidak perlu untuk mencoba melihat hasilnya. Laporan juga dapat
dikonversikan ko format umum seperti HTML.
Pembuatan Laporan dengan MS Data Report Designer
Buat project baru (standard exe) pada Visual Basic. Pilih menu Project
Add Data Environment untuk menambahkan Data Environment pada project.
Klik
kanan pada Connection1 dan pilih Properties. Pada window yang muncul
kemudian, pilih Microsoft Jet 4.0 OLE DB Provider lalu klik Next. (Jika
tidak ada, dapat juga digunakan Microsoft Jet 3.51 OLE DB Provider)
Catatan: Microsoft Jet 4.0 OLE DB Provider dapat ditemukan apabila di komputer telah terinstall MS Access 2000.
Isikan
path dan nama file database (*.mdb) atau tekan tombol … untuk mencari
filenya (browse). Setelah itu tekan tombol Test Connection untuk
mengetes apakah sudah dapat terkoneksi dengan database tersebut dan klik
OK.
Klik kanan kembali pada Connection1 dan pilih Add Command
Klik kanan pada Command1 untuk menampilkan form berikut
Pilih
option Database Object lalu pilih Table dari dropdown di sebelahnya.
Setelah itu pilih nama tabel pada Object Name. Klik Apply lalu OK.
Tambahkan sebuah Data Report dengan memilih Project Add Data Report
Klik
dan tahan Command1 pada Data Environment, lalu drag ke Data Report pada
Detail (Section1) sehingga tampilan Data Report menjadi seperti dibawah
ini.
Perhatikan bahwa semua field dari tabel telah berada pada Report. Selanjutnya atur posisinya sesuai keperluan.
Langkah
selanjutnya adalah menentukan sumber data untuk Data Report tersebut.
Untuk itu pilih property DataSource pada Data Report dan pilih
DataEnvironment1 pada dropdown yang tersedia.
Setelah itu pilih
Command1 pada dropdown property DataMember. Tambahkan sebuah form pada
project. Pada Form_Load ketikkan kode berikut:
DataReport1.Show
Jika langkah-langkah diatas telah dijalankan dengan benar, maka ketika program dijalankan, datareport1 akan muncul.
Catatan
: 2 buah Icon yang berada diatas kegunaannya berturut-turut adalah
untuk mencetak dan untuk export laporan yang ada ke format lain,
misalnya, HTML.
Pembuatan Laporan dengan Menggunakan Crystal Report.
Jika di dalam Visual Basic versi 5 terdapat pilihan untuk menginstall
Crystal Report, maka pada Visual Basic versi 6 pilihan tersebut
dihilangkan. Hal ini mungkin dilakukan karena Visual basic versi 6 sudah
mempunyai Data Report Designer yang dapat digunakan untuk pembuatan
laporan.
Namun demikian bukan berarti kita tidak dapat menggunakan
Crystal Report. Crystal Report dapat ditemukan pada CD instalasi Visual
Basic pada folder/direktory "D:\Common\Tools\VB\Crysrept\" (ganti D
dengan drive CDROM Anda). Setelah berada di dalam folder/direktory ini,
jalankan file Crystl32.exe untuk menginstall Crystal Report.
Setelah diinstall, Crystal Report dapat Anda temui pada menu Add-Ins Visual Basic, yaitu Report Designer.
Menjalankan Crystal Report
Pilih menu Add-InsReport Designer untuk menampilkan window utama Crytal Report seperti dibawah ini.
Membuat Report Baru
Pilih menu File New untuk menampilkan windows berikut ini
Klik pada tombol Standard untuk menampilkan window Report Expert.
Memasukkan Database
Pada
tab Step1: Tables, klik pada Data File untuk menampilkan window Choose
Database File. Di window ini Anda dapat mem-browse direktory untuk
mencari file database yang akan dipakai sebagai sumber data dari report
yang akan kita buat.
Setelah file database yang diinginkan ditemukan, tekan tombol Add untuk menampilkan kembali tab Step1: Tables.
Menambahkan Tabel
Pada tab Step1: Tables, pilihlah tabel yang ingin dimasukkan ke dalam report, lalu klik Next >>.
Melihat/Modifikasi Relasi Tabel-Tabel
Jika
tabel yang dimasukkan lebih dari satu, maka pada tab 2: Links anda
dapat melihat/memodifikasi hubungan antara tabel-tabel. Selanjutnya
tekan Next >>.
Menambahkan Field-field
Pada tab 3:
Fields, Anda dapat memilih field-field mana saja yang ingin ditampilkan
di dalam report. Terlebih dahulu klik field-nya pada Database Fields
lalu klik Add ->, atau klik All -> untuk memasukkan semua field.
Klik Next >>.
Menentukan Sortir Data
Pada tab
4: Sort, Anda dapat memilih field yang akan di sort dan ordernya. Pada
gambar terlihat bahwa laporan akan diurutkan berdasarkan Field
KodeBarang secara menaik (Ascending).
Menentukan Field yang akan di Total
Pada tab 5: Total, Anda dapat memilih field-field yang akan ditotalkan.
Memilih Field Filter
Pada tab 6: Select, Anda dapat memilih field yang akan difilter.
Sebagai acuan, yang biasanya dipilih adalah field yang di-index.
Memilih Report Style
Pada field 7: Style, Anda dapat memberi judul pada laporan yang Anda
buat. Anda juga dapat memilih style dari laporan Anda, apakah bentuk
Standard, Table, dsb. Gambar style yang dipilih akan ditampilkan di
sebelah kanan. Setelah itu Anda dapat mengklik Preview Report untuk
melihat hasil laporan yang Anda buat.
Gambar Preview Report dapat dilihat seperti gamabr dibawah ini.
Jika Anda pilih tab Design maka Anda dapat merubah desain dari laporan yang baru Anda buat.
Merubah Desain Report
Di dalam tab Design ini Anda dapat menambahkan Field dari Tabel, Text
Field, sampai dengan menambahkan gambar pada laporan Anda.
Menambahkan Field
Untuk menambahkan field, pilih menu InsertDatabase Field. Pada window
yang tampil, pilih field yang ingin di-insert lalu klik Insert.
Jika Anda ingin menambahkan tulisan pada report. Pilih menu InsertText
Field. Pada window yang keluar, isikan teks yang akan ditampilkan.
Klik
Accept, setelah itu letakkan Text Field di tempat yang diinginkan.
Pilih tab Preview untuk menampilkan report dengan Text Field yang baru
dimasukkan.
Merubah Format Tanggal
Di dalam tab Design kita
dapat juga merubah format tampilan dari field tanggal. Contohnya merubah
format tanggal dari "dd/mm/yyyy" menjadi "dd-mm-yyyy". Klik kanan pada
Field Tanggal lalu pilih Change Format.
Pada window yang tampil, Anda dapat merubah format tampilan dari tanggal tersebut.
- Use Windows Default Format : field tanggal tersebut akan mengikuti format dari penanggalan system Windows.
- Suppress if Duplicated : apabila ada dua nilai yang sama, yang akan ditampilkan hanya satu nilai.
- Hide when Printing : jika report tersebut diprint, field tidak akan ikut tercetak.
- Alignment : Left (rata kiri), Center (rata tengah), Right (rata kanan), atau Default (standar).
- MDY : field akan berformat "mm-dd-yyyy", DMY berformat "dd-mm-yyyy" serta YMD akan berformat "yyyy-mm-dd".
Anda dapat memilih format angka bulan, tanggal dan tahun pada dropdown
yang tersedia. Anda juga dapat sekaligus merubah karakter pemisah
tanggal, bulan dan tahun.
Setelah perubahan selesai, klik OK untuk kembali ke tab Design.
Setelah kembali pada tab Design, perubahan yang dilakukan langsung diterapkan.
Merubah Format Angka Currency
Pada tab Design, klik kanan pada Field HargaSatuan dan pilih Change Format.
- Use Windows Default Format : Format Angka akan mengikuti format System Windows Anda.
- Suppress if Duplicated : ahnya menampilkan satu nilai walaupun ada nilai yang sama.
- Suppress if Zero : apabila jika nilainya 0 maka field tidak akan diisi.
- Hide when Printing : nilai tidak akan tercetak.
- Decimals : memilih format nilai desimal.
- Rounding : memilih pembulatan nilai.
- Negatives : memilih format tampilan nilai negatif.
- Currency Symbol : akan ditambahkan simbol Mata Uang pada nilai.
- One Symbol Per Page : hanya akan menampilkan satu simbol mata uang per halaman.
-
Fixed : Simbol Mata Uang berada di kiri sedangkan nilai angka berada di
kanan, sehingga kemungkinan ada spasi antara simbol dan nilai.
- Floating : simbol mata uang dan nilai berdekatan, rata kanan sehingga kemungkinan ada spasi di sebelah kiri simbol mata uang.
- Position : menentukan letak simbol mata uang.
- Decimal Separator : menentukan pemisah angka desimal
- Thousands Separator : menentukan pemisah angka ribuan
- Leading Zero : menentukan apakah ada angka 0 di depan.
Setelah perubahan selesai dilakukan, klik OK.
Menambah Gambar pada Laporan
Untuk menambah gambar pada laporan, pilih menu InsertPicture. Cari
file yang diinginkan lalu klik OK. Selanjutnya letakkan gambar di tempat
yang diinginkan.
Hasil dari perubahan diatas dapat di lihat pada gambar dibawah ini.
Setelah modifikasi selesai, simpan report dengan nama file : "Laporan Data Barang.rpt".
Memanggil Report dari Visual Basic
Pertama-tama yang perlu dilakukan ialah menambahkan Crystal Report
Control. Tekan Ctrl+T dan tandai Crystal Report Control 4.6 untuk
menampilkan icon Crystal Report di Toolbox.
Langkah selanjutnya
adalah menempatkan control pada form. Untuk itu buka lagi project
Aplikasi Pemeliharaan Data Barang. Tempatkan sebuah CommandButton dan
sebuah Crystal Report Control 4.6.
Object Property Setting
CommandButton Name cmdLaporan
Caption &Laporan
Crystal Report Control 4.6 Name rptLaporan
Pada event Click cmdLaporan ketikkan kode berikut:
rptLaporan.ReportFileName = app.path & _
"\Laporan Data Barang.rpt"
rptlaporan.PrintReport
Jalankan
program. Tekan tombol Laporan, maka akan muncul form Crystal Report
yang berisikan laporan data barang yang kita buat tadi.
Senin, 25 Maret 2013
Visual Basic
Lainnya dari vb
Langganan:
Posting Komentar (Atom)
0 komentar:
Posting Komentar