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
1
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
2
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
3
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
4
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
5
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
6
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
7
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
8
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
9
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