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

1 2 3
30/01/2009, 18:11

Coskun0559

değerli arkadaşlarım sizlerden öğrenmiş olduğum bilgilerle çalışmammı her gün değiştiriyorum baya bi yol aştım.yalnız takılıpta yapamadım bişi kaldı.ekte gönderdiğim vt de kullanıcı yetkilendirmek istiyorum.kullanıcı tablomda admin ve user var.şifre giriş formundaki açılan kutuda isimleri geliyo sadece mesela coşkun kullanıcısı admin,hüseyin kullanıcısı user.ben hüseyini veya başka bir user kullanıcı seçtiğim zaman sadece raporlama yapsın istiyorum.bunuda şöyle düşündüm değerli üstatlar eğer user olarak oturum açılırsa yeni bi form tasarlıcam ve üzerine sadece süzme yapan butonlar koyacam.normalde admin olarak girilirse denetim masası diye bi form var her şey ordan yapılıyo ben user olarak girince denetim masası formunun değil user için sadece süzme yada filtreleme yapacak olan formun gelmesini istiyorum.değerli üstadlar bu hususta bana yardımcı olursanız fikirlerinizi paylaşırsanız sevinirim tesekkur ederim herkese. şifre coşkun için 11200602956 hüseyin için 3458 dir
30/01/2009, 20:48

tdsharun

Şifre yanlış olunca da giriş yapıyordu. Kodlamada hata yapmışım. Düzeltip gönderirim birazdan...
30/01/2009, 23:07

tdsharun

Evet, şimdi kusursuz çalışan bir hal aldı...

Tam senin istediğin gibi oldu. Sifre formundaki Command2 butonunun tıklandığında olayındaki kodların yerine aşağıdaki kodları yerleştir:

Kod:
Private Sub Command2_Click()
Dim SifreKontrol As String

SifreKontrol = DLookup("Sifre", "tblsifre", "[ID]=" & Me.kullanıcı.Value)
'Girilen kullanıcı adı ve sifreyi "tblsifre" tablosundan kontrol et

    If IsNull(Me.kullanıcı) Or Me.kullanıcı = "" Then
            MsgBox "Lutfen Kullanıcı Adı Giriniz.", vbCritical, "CSKN CKL"
            Me.kullanıcı.SetFocus
        Exit Sub
    End If

    If IsNull(Me.Sifre) Or Me.Sifre = "" Then
            MsgBox "Lutfen Şifre Giriniz.", vbCritical, "CSKN CKL"
            Me.Sifre.SetFocus
        Exit Sub
    End If

'Eger Kullanıcı 3 kez yanlıs islem yaparsa programı kapat
    
    intLogonAttempts = intLogonAttempts + 1
    If intLogonAttempts > 3 Then
        MsgBox "Sisteme giris icin uygun kod ve Sifre üretilemedi.", vbCritical, "CSKN CKL"
        Application.Quit
    End If



If Me.Sifre.Value = SifreKontrol Then

YetkiKontrol

Else
        MsgBox "Hatalı Sifre! Lütfen Tekrar Deneyiniz", vbCritical, "CSKN CKL"
        Me.Sifre.SetFocus
    End If
    
End Sub

Private Function YetkiKontrol()
Dim Yetkili As String
Yetkili = DLookup("Yetki", "tblsifre", "[ID]=" & Me.kullanıcı.Value)

If Yetkili = "ADMINISTRATOR" Then
        DoCmd.Close acForm, "sifre"
MsgBox "Admin olarak giriş yaptınız. Denetim Masasına yönlendiriliyorsunuz.", vbInformation, "Lütfen Dikkat..."
        DoCmd.OpenForm "Denetim Masası"

Else

        DoCmd.Close acForm, "sifre"

MsgBox "Sisteme Kısıtlı Kullanıcı olarak giriş yaptınız. Raporlama formuna yönlendiriliyorsunuz.", vbInformation, "Lütfen Dikkat..."
        DoCmd.OpenForm "frmGecisFormu"

End If

End Function

Kolay gelsin...
31/01/2009, 00:40

Coskun0559

tesekkurler arkadaşım deneme fırsatım olmadı ama en kısa zamanda denicem.
14/02/2009, 05:55

ozanakkaya

Konuyu Access Cevaplanmış Soruları bölümüne taşıyorum. Konu ile ilgisi sorun devam ederse lütfen konudaki herhangi bir mesajda bulunan "BİLDİR" butonunu tıklayarak Yöneticiden Konuyu Sorular Bölümüne taşımasını isteyiniz. Teşekkürler.
20/02/2009, 23:30

Tombakoglu

Teşekkürler,
Hayırlı çalışmalar dilerim
1 2 3