AccessTr.neT

Tam Versiyon: Kullanıcı Yetkisine Göre Form Açtırmak
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Sayfalar: 1 2
Selamlar Sayın Hocalarım...

Kullanıcıları tanımlandırdım. Kullanıcılar için izinleri ayarladım. Herşey tamam. Sorun yok. Sınırlı Kullanıcının (Kullanıcı) gireceği formlarda değişiklik, ekleme, silme gibi değişiklikleri yapamaması için de şu kodu yazdım:

Kod:
Private Sub Form_Current()

Dim SonKayit As String
Dim Yetki As String
Dim ctl As Control

SonKayit = DMax("[ID]", "[tblKullaniciLoglari]")
Yetki = DLookup("[txtKullaniciYetkisi]", "[tblKullaniciLoglari]", "[ID]=" & SonKayit)

If Yetki = "Yönetici" Then
Else

MsgBox "Sisteme Kısıtlı Kullanıcı olarak giriş yaptınız. Bazı işlemleri yapamazsınız.", vbInformation, "Lütfen Dikkat..."

Form.AllowAdditions = False
Form.AllowDeletions = False
Form.AllowEdits = False

End If

End Sub

Bu kodun aynısını Public Function YetkiKontrol() şeklinde yapıp formların Açıldığında olayına Call YetkiKontrol yazıp denediğimde hata alıyorum. Hata da şu:

Kod:
Compile error
Expected variable or procedure, not module

Nerde hata yapıyorum acaba?

Yukarıdaki kodu da ben yazdım.
Log kayıtlarının yazıldığı tablodan en son giriş yapan kişinin ID numarasına DMax ile buldum. Sonra gelen sonucu da Dlookup ile birleştirdim. Gelen değer "Yönetici" ile eşleşirse boş (Mesaj da verdirilebilir) değilse engellemeler falan...

Bu kodu her formumun başına yazmak istemiyorum. Bir defa modul oluşturur, istediğimde de çağırırım diye düşündüm ama bi türlü işin içinden çıkamadım.

Nerde hata yapıyorum anlayamadım.

Yardımlarınız için şimdiden teşekkürler...

Kolay gelsin...
Sayın derebeyi,
Keşke bir örnek gönderseydin. Şimdi denemek için örnek hazırlamak zorunda kalacağız, erindiğimizden de sana yardım edemeyeceğiz.
Bu arada modülden call ile çağırmak için global modül olması gerekiyor sanırım. Acaba hata o mudur?
Hocam, Global olarak da denedim. Bi türlü olmuyor. Kodları direk yazınca oluyor ama Function, Public Function yapıp Call ile çağırınca bi türlü olmuyor.

Örneği eklemeyi düşündüm de, gerek yok gibi geldi. Neyse, örnek ekte hocam.

Çalışması gereken yer frmKurumBilgileri ve ona bağlı alt formlar...

Kolay gelsin...
Sn derebeyi, fonksiyonun ismini derebeyi yap ve öyle çağır düzelir Img-grin
Hemen deniyorum hocam... Img-grin

Valla bi de çalışırsaaaa... Roflmao
tabii ki çalışır. Doğru demiş. Fonksiyon ile modül aynı isim olunca karışır iş
Yalnız
Kod:
Else

Form.AllowAdditions = False
Form.AllowDeletions = False
Form.AllowEdits = False

End If

bölümü eğer kullanıcı yetkisizse hata veriyor.
Sayfalar: 1 2