Skip to main content

AccessTr.neT


Kullanıcı Yetkisine Göre Form Açtırmak

Kullanıcı Yetkisine Göre Form Açtırmak

Çözüldü #1
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...
Cevapla
Çözüldü #2
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?
NZ Fonksiyonunun (İşlevinin) Ayrıntılı Anlatımı İçin Tıklayın...
DSum ve Sum Fonksiyonunun (İşlevinin) Ayrıntılı Anlatımı İçin Tıklayın...
DLookup Fonksiyonunun (İşlevinin) Ayrıntılı Anlatımı İçin Tıklayın...
Cevapla
Çözüldü #3
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...
.rar OZELTANI.rar (Dosya Boyutu: 118,26 KB | İndirme Sayısı: 77)
Cevapla
Çözüldü #4
Sn derebeyi, fonksiyonun ismini derebeyi yap ve öyle çağır düzelir Img-grin
[Resim: image.php?s=df028e861d094075be82dfc55ca1...1225646923][Resim: mousey.gif]
Cevapla
Çözüldü #5
Hemen deniyorum hocam... Img-grin

Valla bi de çalışırsaaaa... Roflmao
Cevapla
Çözüldü #6
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.
NZ Fonksiyonunun (İşlevinin) Ayrıntılı Anlatımı İçin Tıklayın...
DSum ve Sum Fonksiyonunun (İşlevinin) Ayrıntılı Anlatımı İçin Tıklayın...
DLookup Fonksiyonunun (İşlevinin) Ayrıntılı Anlatımı İçin Tıklayın...
Son Düzenleme: 01/02/2009, 22:27, Düzenleyen: mehmetdemiral.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da