Posted by: Rofiq Siregar | July 12, 2007

Otorisasi dan Klasifikasi User dengan Login Form, Data Module dan Main Menu

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.
dm01.png

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

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.
dm03.png

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:

dm15.png

Lalu tambahkan uses Forms, Dialogs, Controls; dibawah baris implementation seperti berikut:

dm04.png

Tampilkan kembali form DataModule-nya (tekan F12) lalu klik 2x pada window yang kosong (yang berwarna putih), lalu ketikkan code sebagai berikut:

dm05.png

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.)

dm09.png

Untuk membuat menu, klik 2x pada object MainMenu1 lalu buatlah struktur menu seperti gambar berikut ini:

dm10.png

dm11.png

dm12.png

Klik pada area kosong Form Utama. Dari Object Inspector di tab Events, carilah OnShow. Klik 2x pada OnShow tersebut dan ketiklah code berikut:

dm13.png

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.dm06.png

Setelah desain selesai, buka menu File lalu pilih Use Unit. Pilih datamodul lalu klik OK.

dm07.png

dm08.png

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:
dm16.png

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 !

Advertisement

Responses

  1. Salam kenal mas, mo nanya kalo mbuat form login pake delphi 7 tapi databasenya pake access codingnya gimana tuh?mohon bimbingannya. terima kasih.

  2. Salam kenal juga, kalau mas pake access, yang berbeda hanyalah setting ConnectionString pada komponen ADOConnectionnya saja. Selebihnya sama.

    Silahkan dicoba…

  3. Saya mau coba dengan DBMS SQL Server 2000..yang pasti sama juga kan ?

  4. Salam Kenal Mas,
    Web Anda sangat bermanfaat untuk saya yang baru belajar delphi.
    saya akan ikuti terus …
    :) Adi

  5. Lam kenal juga mas

    Insya Allah materi Delphi akan terus bertambah

    Thx

  6. wah mas….
    pagenya ko ga di save ya?
    buat referensi niy…
    hehehe….


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Categories

Follow

Get every new post delivered to your Inbox.