Otorisasi Menu sangat penting karena sistem dibuat bukan hanya untuk satu orang. Klo cuman dibuat untuk satu orang saja biasanya nyebutnya sistem standalone atau biasa nyebutnya program komputer. Menurut Definisi Sistem Informasi terdiri dari elemen hardware, software, prosedur dan manusia yang terlibat dalam sistem informasi. Sistem informasi dibentuk dan menghasilkan output berupa laporan, saran untuk pengambilan keputusan, bahkan sistem informasi bisa langsung menghasilkan keputusan jika parameter setiap masalah bisa didefinisikan ke dalam sistem.
Karena dalam suatu organisasi sistem informasi dipakai oleh banyak orang yang berbeda-beda sehingga membutuhkan pengaturan kewenangan atau otorisasi.
Otorisasi biasanya dibagi per Jabatan. Seorang Accountan biasanya hanya bisa melihat laporan keuangan dan transaksi jurnal, seorang administrasi penjualan bisa melihat menu input penjualan dan laporan penjualan tapi tidak bisa menginput jurnal dan lain sebagainya.
Bagaimanakah penerepannya di Delphi? so what gituloh
Menu bisa kita buat variabel dan disimpan dalam database dan menu dibuatnya pada saat form tersebut dicreate.
Sehingga pemunculan menu dihasilkan dari tabel kewenangan dan jabatan dan juga tabel menu, sehingga seorang dengan jabatan a hanya muncul menu sesuai jabatannya. Untuk membuat menu dinamis tersebut biasanya bisa menggunakan komponen menu dan variabel-variabel menu dibuat dengan tipe pointer..
5 komentar:
Contoh scriptnya seperti apa?
procedure TFMenu.FormActivate(Sender: TObject);
var namamenu:string;
i:integer;
begin
isimenu[1]:=pointer(MenuMaster);
isimenu[2]:=pointer(MenuAdmin);
isimenu[3]:=pointer(MenuUtility);
isimenu[4]:=pointer(MenuProcurement);
isimenu[5]:=pointer(MenuOrderTaking);
isimenu[6]:=pointer(MenuFakturPajak);
isimenu[7]:=pointer(MenuLaporan);
if nama <> 'admin' then
for i:=1 to 7 do
begin
isimenu[i].visible:=false;
end;
with DM.ADOQView do
begin
close;
sql.text:='select menu from kewenangan where kewenangan="'+kewenangan+'" ';
//showmessage(sql.Text);
open;
first;
while not EOF do
begin
namamenu:='Menu'+fields[0].asstring;
// showmessage(namamenu+' '+isimenu[i].name);
for i:=1 to 7 do
begin
if isimenu[i].name=namamenu then
isimenu[i].visible:=true;
end;
DM.ADOQView.Next;
end;
end;
end;
mohon penjelasan isimenu[], nama, kewenangan
contoh tabelnya? mohon query untuk membuat tabel nya?
table kewenangan
CREATE TABLE `kewenangan` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`kewenangan` varchar(20) NOT NULL DEFAULT '',
`menu` varchar(20) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
UNIQUE KEY `kunci` (`menu`,`kewenangan`)
)
Posting Komentar