Pak Azhar.. Mungkin maksud bapak adalah; setiap user mempunyai hak akses
masing-masing…? JIka memang begitu,maka ada beberapa cara(hanya saran aja
kok….hehehehe..)
CARA 1 :
Saat Login,buatkan script untuk membatasi hak akses dari setiap pemakai.
Sebagai contoh,membuat sebuah table untuk user login.
SELECT t_user.user_kd, t_user.user_nama
INTO :guserid, :gusername //ini merupakan variable yang dibuat sebelumnya
FROM t_user
WHERE t_user_peserta.USER_KD = :sle_1.text ;
SELECT t_user.user_password, t_user.user_group
INTO :usr_pass, :kelompok //ini merupakan variable yang dibuat sebelumnya
FROM t_user
WHERE t_user.USER_KD = :sle_1.text
AND t_user.user_password = :sle_2.text ;
//yang berhuruf tebal diatas merupakan nama kolomnya
//yang bergaris miring adalah variabelnya
if kelompok='1' then
STRING usr_pass
LONG jc
SELECT t_user.USER_KD, t_user.user_nama
INTO :guserid, :gusername
FROM t_user
WHERE t_user.USER_KD = :sle_1.text ;
IF SQLCA.SQLCODE = 0 THEN
SELECT t_user.user_password, t_user.user_group
INTO :usr_pass, :group
FROM t_user
WHERE t_user.USER_KD = :sle_1.text
AND t_user.user_password = :sle_2.text ;
IF SQLCA.SQLCODE = 0 THEN
ELSE
messagebox('Perhatian','Password anda salah')
sle_2.text = ''
sle_2.setfocus()
return
RETURN
iret = 'Y'
END IF
ELSE
messagebox('Perhatian','User-id tidak terdaftar')
sle_1..text = ''
sle_2..text = ''
st_uname.text = ''
sle_1..setfocus()
return
return
iret = 'Y'
END IF
open(w_utama) //dengan catatan window yang dibuka adalah window
dengan level akses tingkat satu.
end if
//Begitu pula dengan hak akses selanjutnya…………..
/*dengan catatan akses :
Kode 1 = akses untuk melihat transaksi yang dilakukan oleh pegawai di bidangnya
saja
Kode 2 = akses Untuk Departemen
Kode 3 = Full Akses */
CARA KE 2 :
Cara yang kedua Ya ikuti cara yang di ajarkan oleh Pak Eric.. Bagus juga tuh..
hehehehehe.....
datawindow query yang anda maksud buatnya kan di datawindow painter bukan?
Kalau ya berarti 3 paramater yang anda maksudkan adalah retrieval argument?
Tergantung sih sebenarnya… Kalo yang dicari disini cuman NIP, maka NIP aja yang
dibuatkan retrieval argument nya, dengan syarat Anda sudah harus Mengambil dulu
Nilai dari data yang dicari dengan menggunakan Variabel dan fungsi GETITEM ato
juga fungsi lainnya…
Hasilnya ternyata control datawindow hanya bisa mengenali satu orang user saja
yaitu yang sedang login dan datawindownya tidak bisa menambah user baru (dw_1
nya dalam posisi disabled) serta kalau kita edit dia minta dimasukkan value
dari retrievel argument.
Scriptnya yang dibuat kayak gimana Pak….? Boleh tahu..? Jangan Jangan Retieve
disaat event untuk menambah Data.
CARA KETIGA : BATASI HAK AKSES DISETIAP TRANSAKSI…
Semoga bisa membantu………….
Maaf yah panjang banget nih ………….heheheheheheh…
Wassalam….
Farul….