Arsip: tmainmenu dari database

more 19 years ago
alfian
aq mo nanya nih misalnya kita membuat sebuah tmainmenu untuk tiap user yang berbeda2 dan bisa ditambah atau dikurangi dan link nya kpd form yang berbeda2 dimana menu tersebut disimpan di sebuah database
kira2 isi databasenya seperti apa captionnya doang ato sama link nya terus pembuatan tmainmenunya seperti apa2 kira2 kakak yg berpengalaman ngakalinya kayak apa

more 19 years ago
ZeAL
errr...agak gak nangkep nih pertanyaannya..
Tapi kalo soal TMainMenu yang bisa berbeda-beda tergantung level user, kira2 bisa dicapai dengan hanya menggunakan 1 TMain Menu saja... Ketika user melakukan login, Gunakan visible := true/false bergantung dengan tingkat user.
contoh :
if userlvl = 1 then // <-- user level
begin
MainMenu1.Login.visible := false;
MainMenu1.Logout.visible := true;
MainMenu1.DataBiasa.visible := true;
MainMenu1.DataPenting.visible := false;
end
else if user = 2 then // <-- admin level
begin
MainMenu1.Login.visible := false;
MainMenu1.Logout.visible := true;
MainMenu1.DataBiasa.visible := false;
MainMenu1.DataPenting.visible := true;
end
else <-- unkown level sehingga ditolak.
begin
MainMenu1.Login.visible := true;
MainMenu1.Logout.visible := false;
MainMenu1.DataBiasa.visible := false;
MainMenu1.DataPenting.visible := false;
end;
Mudah2an ngerti maksudnya.. hihihi..susah jelasin pake tulisan... :P
GudLuck!
more 19 years ago
alfian
maksudku misalnya : menu untuk user a menunya:login,logout,databiasa,datapenting lalu besok admin mau menambah menunya dengan datatidakpenting lau besoknya lagi admin menghilangkan hak aksesnya terhadap data penting.
apa kah tidak sebaiknya menu2 tersebut disimpan ke temporary table lau misalnya kita mau nambah menu tinggal insert kalo mo ngurangi tinggal delete
gimana implementasinya untuk membuat linknya dan membuat mainmenu sesuai databasenya

more 19 years ago
grounders
Gak tau ini nyambung kagak, tapi tetep tak posting ah biar nambahin postingku.. hehehehe
Setahuku bukan mainmenunya yg ditambahin ato dikurangin, tapi mainmenunya di disabled or enabled. Jadi mainnya user managementnya.
yg kamu simpan di database cuma roles or privileges untuk masing2 user. Kamu bisa gunakan field dengan tipe Boolean ato char (yg isinya 0 or 1 aja).
Trus waktu user tertentu masuk, aplikasi akan mengecek terlebih dahulu privileges dari user tersebut, bisa menggunakan if.. then or case...of. Tus waktu pengecekan jika nilainya true or 1 maka menunya enabled begitu seterusnya sampai seluruh menu pada main menu selesai dilakukan pengecekan.
Kalo sampai membuat menu yg sifatnya runtime, wah aku juga belum tau, sory ... wakakakaka

more 19 years ago
ZeAL
emm....tar dulu... ini yang mau dirubah-rubah, hak aksesnya atau TMainMenu-nya neh...?? Artinya beda..
Kalo hak aksesnya, cukup buat 1 TMainMenu dengan SEMUA kemungkinan..
Dari contoh lo diatas berarti Login, Logout, databiasa, datapenting, datatidakpenting.
Sama dengan contoh gue sebelumnya, perbandingkan dengan hak aksesnya sesuai dengan didatabase.
Hanya saja dibagi per-menu..
Di contoh ini gue pake TTable dengan bentuk
| Username (varchar) | Hak_Data_Biasa (small_int) | Hak_Data_Penting (small_int) | Hak_Data_Tidak_Penting (small_int) |
Anggap posisi pointer sudah menunjuk ke posisi yang benar dan password benar.
if TTable.fieldbyname('Hak_Data_Biasa').asintger = 1 then TMainMenu1.DataBiasa.visible := true else TMainMenu1.DataBiasa.visible := false;
if TTable.fieldbyname('Hak_Data_Penting').asintger = 1 then TMainMenu1.DataPenting.visible := true else TMainMenu1.DataPenting.visible := false;
dan seterusnya..dan seterusnya..dan seterusnya..

more 19 years ago
ZeAL
Oia, hindari penggunaan enabled := true/false untuk membatasi akses.. mendingan di hidden aja..
Kalau perlu lakukan pengecekan hak akses lagi saat onClick..
Soalnya ada program untuk mengakses menu walau dalam keadaan enabled := false;

more 19 years ago
alfian
maksudku kalo mo nambah dan ngurangi mainmenunya dari sesuai database gimana ?

more 19 years ago
ZeAL
Lha, contoh diatas udah sesuai database... (walau gak termasuk "nambah" dan "ngurangi".. but it works..)
Kalo soal dinamis..dinamis-an..biasanya si deLogic doyan neh... :D monggoh, dipersilahkan...
ps:
kayaknya kalo pake yang dinamis, terlalu ribet dan sama "in-secure-nya" dibanding yang visible := true/false..
Jadi, buat apa milih yang susah.. ya, thoo.. ;) (menurut gue, loh..)

more 19 years ago
deLogic
[OOT Mode: ON]
Asem tenan ik, dasar si ZeAL, kemarin si cyber_hecker di suruh maju kedepan, eh sekarang giliran gw jadi korbannya.... :)
[/OOT]
saya sarankan untuk menggunakan solusi dari ZeAL, soalnya sudah menjawab pertanyaan dan praktis.
Satu hal perlu Anda perhatikan dan menjadi masalah jika Anda ingin membuat fitur administrasi menu bagi user tertentu dari database secara on the fly (belum Anda rancang pada saat design aplikasi) disamping Anda harus membuat menu, Anda harus membuat event-nya juga. dan yang namanya event, itu berkaitan dengan coding bahasa mesin. jika misalnya admin membuat menu baru untuk user A (on the fly), misalnya, menu bisa disimpan ke database, tapi bagaimana dengan event-nya...??? Anda tidak dapat menambahkan event kecuali program Anda harus di-compile ulang agar event tersebut tersimpan, kecuali Anda sudah menyediakan event tersebut, Anda tinggal men-link event onclick dari menuitem atau action-nya ke rutin / prosedur yang Anda inginkan.
mm.. jika ini membingungkan, well jangan dipikirkan, anggap aja Anda tidak membaca & lakukan saja solusi dari ZeAL... :)
more ...
- Pages:
- 1
reply |
Report Obsolete
AI Forward

🚀 We're thrilled to partner with Alibaba Cloud for "AI Forward - Alibaba Cloud Global Developer Summit 2025" in Jakarta! Join us and explore the future of AI. Register now:
https://int.alibabacloud.com/m/1000400772/
#AlibabaCloud #DeveloperSummit #Jakarta #AIFORWARD
Last Articles
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 4 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 5 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 12 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 12 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 12 years ago
Random Topic
- Business intelligence (BI)
by ichan29 in Tip n Trik Pemrograman more 18 years ago - Input data di postgres 2
by juandon in Lain-lain more 16 years ago - Program Enkripsi sederhana: tombol decrypt tidak berfungsi
by ilhuna in Lain-lain more 13 years ago - enkripsi
by nelu in Delphi.NET more 16 years ago - Undo dan Redo di Delphi
by dadanarifin in Tip n Trik Pemrograman more 14 years ago - masalah look up dbgrid
by vera in Tip n Trik Pemrograman more 16 years ago - Delphi Killer
by bo3l4q in OOT more 15 years ago - error unable to execute query
by lela in MySQL more 19 years ago - mengetahui apakah format suatu text sudah benar...
by goez in Tip n Trik Pemrograman more 16 years ago - batch processing
by doniking in Hal umum tentang Pascal Indonesia more 18 years ago