Kita sudah membuat Login Form sederhana yang meminta user name dan password. Kali ini saya akan memodifikasi Login Form tersebut dengan menambahkan DataModule dan Menu Utama. Kemudian seperti janji saya, kita akan bahas teknik implementasi user classification (klasifikasi user), dimana menu-menu yang muncul atau yang aktif akan disesuaikan dengan group user yang login.
OK, let’s do it.
Pembuatan DataModule
Sedikit cerita, DataModule merupakan sebuah form khusus yang biasanya digunakan untuk mengumpulkan (baca: sentralisasi) objek-objek untuk mengakses database. Seperti ADOConnection dan ADOQuery. Sehingga semua form yang membutuhkan objek tersebut cukup me-referensi ke DataModule dan tidak perlu menempatkan objek tersebut pada form masing-masing. Referensi dilakukan melalui menu File > Use Unit.
Baik, mari kita buat dulu DataModule-nya. Jalankan Delphi 7, kemudian klik menu File > New lalu pilih Data Module.

Jendela DataModule yang masih kosong akan muncul. Selanjutnya letakkan komponen ADOConnection dan ADOQuery seperti gambar berikut:

Kemudian atur properti masing-masing objek pada DataModule diatas seperti berikut ini:
ADOConnection1: LoginPrompt=false
QryUsers: Connection=ADOConnection1
DataModule1: Name=dm
Simpan DataModule tersebut dengan nama datamodul.

Sekarang kita beralih ke source codenya. Tampilkan jendela source code DataModule tersebut.
Carilah baris public..end, lalu sisipkan deklarasi variabel USERID, USERNAME dan USERGROUP seperti berikut:
Lalu tambahkan uses Forms, Dialogs, Controls; dibawah baris implementation seperti berikut:
Tampilkan kembali form DataModule-nya (tekan F12) lalu klik 2x pada window yang kosong (yang berwarna putih), lalu ketikkan code sebagai berikut:
Simpan form tersebut (Ctrl-S), nama filenya datamodul
Catatan: code diatas bisa Anda copy dari materi sebelumnya tentang Login Form (sebagian besar mirip)
Pembuatan Form Utama
Sekarang kita buat Form Utama yang berisi menu-menu utama.
Menu yang dibuat hanyalah contoh dan jika menu diklik belum ada form yang muncul.
Untuk membuat Form Utama, kliklah menu File > New lalu pilih Form. Rubahlah properti Name menjadi frmUtama. Letakkan object MainMenu pada form tersebut (object MainMenu bisa ditemukan di Component Palette pada tab Standard.)
Untuk membuat menu, klik 2x pada object MainMenu1 lalu buatlah struktur menu seperti gambar berikut ini:
Klik pada area kosong Form Utama. Dari Object Inspector di tab Events, carilah OnShow. Klik 2x pada OnShow tersebut dan ketiklah code berikut:
Simpanlah form tersebut dengan nama frmUtama.
Pembuatan Form Utama
Setelah pembuatan DataModule, tahapan selanjutnya adalah membuat Form Login. Form ini mirip seperti Form Login pada materi Login Form. Perbedaannya, form ini sudah dimodifikasi agar menggunakan DataModule yang kita buat tadi.
Setelah desain selesai, buka menu File lalu pilih Use Unit. Pilih datamodul lalu klik OK.
Use Unit sekali lagi, sekarang pilih utama lalu klik OK.
Catatan: pemilihan datamodul pada Use Unit diatas bertujuan agar Form Login yang sedang Anda rancang dapat berkomunikasi dengan DataModul dan Form Utama. Setelah Anda mengklik OK, maka object-object yang ada pada DataMpdul dapat diakses melalui Form Login. Sekedar mengingatkan, pada form DataModul terdapat 2 object, yaitu ADOConnection1 dan QryUsers.
Klik 2x tombol LOGIN lalu ketiklah code berikut:

Selesai ! Save project Anda lalu run. Isikan user id admin dan password admin. Perhatikan menu-menu yang aktif sesuai dengan user group nya. Coba juga login dengan user id user1 dan password user1 dan perhatikan menu apa saja yang aktif.
Silahkan berkreasi dengan menambahkan menu-menu lain, kemudian tentukan user groupnya. Tambahkan juga dua atau tiga user baru dengan usergroup yang berbeda dan buatkan menunya !
Selamat berkarya !










Salam kenal mas, mo nanya kalo mbuat form login pake delphi 7 tapi databasenya pake access codingnya gimana tuh?mohon bimbingannya. terima kasih.
By: Masandhie on August 28, 2007
at 4:22 am
Salam kenal juga, kalau mas pake access, yang berbeda hanyalah setting ConnectionString pada komponen ADOConnectionnya saja. Selebihnya sama.
Silahkan dicoba…
By: rofiqsiregar on September 12, 2007
at 11:58 pm
Saya mau coba dengan DBMS SQL Server 2000..yang pasti sama juga kan ?
By: Hapsoro on October 4, 2007
at 7:38 am
Salam Kenal Mas,
Adi
Web Anda sangat bermanfaat untuk saya yang baru belajar delphi.
saya akan ikuti terus …
By: peloose on December 4, 2007
at 8:52 am
Lam kenal juga mas
Insya Allah materi Delphi akan terus bertambah
Thx
By: Rofiq Siregar on December 4, 2007
at 1:12 pm
wah mas….
pagenya ko ga di save ya?
buat referensi niy…
hehehe….
By: guss on December 12, 2007
at 1:28 pm