Praktikum 7
Penggunaan Komponen Combo Box
A. TUJUAN • • • • •
Penambahan Combo Box pada Form Pengisian properti Combo Box Combo Box berdasar tabel yang lain Penyembunyian Key Fields pada Combo Box Perubahan urutan item dan tab pada Combo Box
B. DASAR TEORI PENDAHULUAN Combo box adalah daftar nilai yang bisa dipilih oleh user. Dengan menggunakan combo box, tidak hanya menghemat pengetikan tapi juga bisa ditambahkan hal lain untuk memperkuat referential integrity karena user tinggal memilih nilai yang ada dalam combo box. Semisal, combo box untuk memilih activity dari suatu course yang tersedia dalam daftar yang ada pada Gambar 7.1.
Gambar 7.1. : Combo box digunakan untuk field Activity
Meskipun control lanjutan semisal combo box dan list box kelihatan berbeda dari text box yang sederhana, fungsi mereka sebetulnya sama. Semisal, dalam Gambar 7.1, combo box terikat dengan field Activity. Pada saat sebuah item dalam combo box dipilih, string (misal, “LEC”) dikopikan ke dalam field pada saat kita ketikkan huruf L- E-C ke dalam text box.
MENAMBAHKAN KOMPONEN COMBO BOX PADA FORM Meskipun Access memiliki fasilitas wizard yang memudahkan proses pembuatan combo boxes, kita akan mulai dengan membangun combo box sederhana (seperti yang ditunjukkan pada Gambar 7.2). Ini akan memberikan suatu apresiasi yang mendalam tentang bagaimana cara kerja wizard dan memberikan suatu kemampuan untuk membuat suatu perbaikan dari yang dihasilkan oleh wizard. • Hapus text box Activity yang sudah ada dengan meng-click obyek tersebut kemudian menekan tombol Delete. • Tombol toggle dari wizard ( ) yang ada dalam toolbox membuat pilihan apakah wizard aktif atau tidak. Pastikan tombol wizard off atau tidak aktif. • Click pada combo box tool ( ). • Dengan combo box tool yang sudah dipilih, lakukan drag pada field Activity yang ada pada field list untuk diletakkan ke tempat yang dikehendaki pada form seperti yang diperlihatkan pada Gambar 7.2.
Gambar 7.2. : Pembuatan Bound Combo Box
Supaya suatu control (text box maupun combo box) bersifat bound atau terikat dengan field yang ada pada tabel, maka setelah memilih tool pada toolbox lakukan drag dari field list ke bagian form. Seperti contoh pembuatan unbound combo box yang ada pada Gambar 7.3.
Gambar 7.3. Sebuah unbound combo box (bukan seperti yang diinginkan)
COMBO BOX BERDASAR TABEL YANG LAIN ATAU QUERI Keterbatasan dari metode value- list dari pembuatan combo box itu adalah tidak mungkin untuk mengubah atau mengupdate item yang tampak pada daftar tanpa tahu tentang properti Row Source. Metode yang lebih fleksibel adalah dengan mengumpulkan semua nilai yang ada pada tabel atau queri. Meskipun proses dasar dari setting properti combo box pada dasarnya sama, lebih efisien jika digunakan wizard untuk membangun jenis combo box seperti ini. Sebelum kita lanjutkan, kita perlu tabel yang berisi nilai- nilai untuk activity dari suatu course. • Pindah ke database window dan buat tabel baru bernama Activities. • Tabel harus berisi dua field : satu field bernama Activity dan field lain yaitu Descript, seperti yang ada pada Gambar 7.4.
Gambar 7.4. : Membuat tabel yang berisi aktifitas sebuah course
• Isi nilai pada tabel seperti pada gambar • Kembali ke combo box untuk menggunakan nilai dari tabel Activity yang baru dibuat. Hapus combo box Activity. • Pastikan tombol wizard ( ) dalam toolbox diaktifkan • Ulangi langkah pembuatan bound combo box. Hasilnya seperti yang diperlihatkan pada Gambar 7.5.
Gambar 7.5. : Membuat combo box dengan menggunakan combo box wizard
Wizard akan menanyakan sejumlah hal berkaitan dengan combo box : 1. table (atau or query) yang terlibat dalam combo box 2. field yang ingin ditampilkan dalam combo box 3. lebar field dalam combo box (lihat Gambar 7.6);
Gambar 7.6. : Isi kotak dialog dari combo box wizar d
4. Pada Gambar 7.7 pemilihan dari combo box kemudian diisikan ke dalam field, dan setelah itu combo box diberi label (judul)
Gambar 7.7. : Isi kotak dialog dari combo box wizard (lanjutan)
Setelah semuanya selesai dikerjakan, hasilnya akan sama dengan yang diperlihatkan pada Gambar 7.1. Perubahan nilai dari combo box akan mudah dilakukan jika combo box tersebut berdasarkan nilai dari suatu tabel. • Tambahkan nilai “SEM” (Seminar) ke dalam tabel Activities. • Kembali ke form, kemudian click combo box Activity, lalu tekan tombol F9. • Pada combo box tersebut akan ditampilkan nilai “SEM” yang baru diisikan. Combo box akan secara otomatis merefleksikan perubahan nilainya dengan dua cara : (a) menutup kemudian membuka kembali form (b) melakukan requery pada form dengan menekan tombol F9. MENYEMBUNYIKAN KEY FIELD Misalkan pada tampilan combo box yang sudah kita buat, kita ingin menyembunyikan nilai dari salah satu field, sehingga pemilihan nilai dari combo box berdasarkan nilai field Descript yang dipilih dari combo box. Akan tetapi meskipun demikian hasil dari pemilihan tersebut tetap merujuk pada 3 huruf sebagai nilai dari field Activity, untuk itu pada combo box yang kita buat, kita akan mengatur kolom agar primary key dari suatu tabel disembunyikan, seperti yang ada pada Gambar 7.8.
Gambar 7.8. Mengatur kolom untuk menyembunyikan primary key
• Pastikan properti Input Mask dari combo box diset kosong (blank). • Uji hasil dari pembuatan combo box ini sehingga menampilkan hasil seperti pada Gambar 7.9.
Gambar 7.9. Combo box dengan primary key yang disembunyikan
PERUBAHAN URUTAN ITEM DALAM COMBO BOX Combo box menampilkan nilai dari tabel melalui dua cara : 1. Jika tabel tidak memiliki primary key, record yang ditampilkan akan diurutkan secara alami (urutan berdasarkan kapan suatu record ditambahkan ke database) 2. Jika tabel memiliki primary key, maka records akan diurutkan secara menaik (ascending) berdasarkan primary key tersebut. Jika kita menginginkan urutan record yang berbeda dari dua cara tersebut diatas, maka ada dua hal yang bisa dilakukan, yaitu: 1. Buat stand-alone query (urutan yang sudah ditentukan) kemudian gunakan queri ini sebagai source untuk combo box. 2. Modifikasi “ad hoc” query melalui properti Row Source yang dimiliki combo box. Jika kita bermaksud membuat beberapa perubahan pada informasi dasar yang ada pada tabel (join, calculated fields), maka lebih baik jika dibuat stand-alone query. Dengan cara ini, query yang sama dapat digunakan oleh beberapa combo boxes. Sebelumnya, kita mengeset properti Row Source menjadi sama dengan daftar nilai yang ingin ditampilkan. Jika nilai dari combo box berdasarkan table atau query, kita bisa memodifikasi properti Row Source dengan memberi perintah SQL yang sesuai. Kita bisa mengedit perintah SQL secara langsung dengan memanggil QBE editor. Pada bab ini, kita akan mencoba untuk mengurutkan item dalam combo box berdasarkan panjang dari field Descript • Modifikasi properti dari combo box Activity • Tempatkan cursor pada properti Row Source. Seperti yang terlihat pada Gambar 7.10, akan muncul tombol builder ( ).
Gambar 7.10. Memanggil builder dari properti Row Source
• Tekan tombol builder untuk masuk ke “SQL builder” (atau QBE editor). • Buat calculated field yang diberi nama DescLength dengan menggunakan ekspresi sebagai berikut : DescLength: Len([Descript]) (Len() adalah fungsi built- in yang mengembalikan panjang dari string karakter). • Urutkan DescLength dengan urutan menurun (descending). • Pindah ke datasheet view untuk memastikan query telah bekerja dengan baik. • Pastikan kotak Show pada field tidak diberi tanda check seperti yang ada di Gambar 7.11.
Gambar 7.11. : Menggunakan QBE Editor untuk memodifikasi properti Row Source
• Untuk menyimpan query, tutup kotak QBE dengan menggunakan tombol close ( ). Jika kita tutup jendela QBE dengan tombol close maka properti Row Source akan diupdate dan tidak ada obyek database baru yang dibuat. MENAMBAHKAN KOMPONEN COMBO BOX PADA FORM UNTUK MENCARI RECORD Form yang dibuat dapat dit ambahkan komponen combo box untuk meningkatkan fungsionalitas dari form yang dibuat. Berikut ini ditambahkan komponen combo box untuk mencari record. • Buat form dari table pribadi dengan menggunakan wizard
• •
Tambahkan combo box wizard untuk mencari record Pilih opsi ketiga, Find a Record Based On the Value I Selected in My Combo Box
MENAMBAHKAN KODE AGAR COMBO BOX SINKRON DENGAN NAVIGASI DATA Meskipun bisa menemukan record, combo box tidak sela lu bisa menampilkan nilai yang sesuai dengan form. Untuk mensinkronkan combo box, maka perlu ditambahkan kode pada properti on current yang ada pada form :
C. PERCOBAAN Kerjakan sesuai dengan dasar teori yang sudah dijelaskan sebelumnya. 1. Pada form table pribadi, buat combo box untuk melakukan pencarian record, modifikasi daftar nilai yang ada di kotak combo sehingga yang tampil adalah kolom nama & alamat Petunjuk : pada properti row source ketik : Nama & “,” & Alamat 2. Modifikasi form table pribadi yang telah dibuat sebelumnya dengan menambahkan combo box yang berisi nilai pria dan wanita untuk pilihan pengisian kolom jenis kelamin.
D. LAPORAN RESMI 1. Buat laporan untuk setiap langkah yang diperlukan dalam menjawab soal yang ada pada bagian Percobaan. 2. Untuk desain database pada bab2, buat form untuk menginputkan data karyawan, pada form tersebut buat combo box yang berisi nama- nama bagian yang ada pada tabel Bagian untuk keperluan pengisian data. 3. Rangkum hasil yang anda dapat pada pembahasan tentang penggunaan combo box