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.
Tidak ada komentar:
Posting Komentar