[FORM] Butonlara Yetkiye Göre Aktif Pasif Olsun
#1

.rar   YaslıEngelli.rar (Boyut: 1,83 MB / İndirilme: 21)


Yaşlıların kaydının tutulduğu bir uygulama

Bu uygulamada eski usul Anaform yönetiminde bu işlemleri butonlar üzerinden yapmıştım ancak Ana Formu daha estetik ve esnek bir ana form yapmak adına Bu Ana Formu GezintiFormu'na dönüştürdüm.

Bu nedenle gezinti butonlarına personelin yetkisine göre aktif pasif olmasını sağlayamadım.

Örneğin Yetkide Yönetici Yaşlı formunu açabilir. Ama Personel yaşlı formunu açamaz pasif olacak şekilde yani kısacası siz değerli üstadlarımdan gezinti butonunları personelin yetkisine göre aktif yetkisi yoksa pasif olsun bu konuda yardımlarınızı bekliyorum.

Şifre 3 kullanıcı için de 1 dir.


Şimdiden teşekkür ederim.



  Alıntı
Bu mesajı beğenenler:
#2
Visual Basic
  1. Private Sub Form_Current()
  2. Dim ctl As Control
  3. For Each ctl In Me.Controls
  4. '*** Tag/Im bolumunde Kontrol yazan düğmeleri Pasif Yap ***********
  5.    If ctl.Tag = "Kontrol" Then Me.Controls(ctl.Name).Enabled = 0
  6. Next ctl
  7. Dim Kyt As Recordset
  8. Set Kyt = CurrentDb.OpenRecordset("SELECT formadi, dugmeadi FROM TYetkiDugme WHERE grupid = " & Me.yetki)
  9. If Kyt.RecordCount = 0 Then Exit Sub
  10. Do Until Kyt.EOF
  11.    '************ Yetki eşitlemesi ile Düğmeleri Aktif Yap*******************
  12.    Me.Controls(Kyt!DugmeAdi).Enabled = -1
  13. Kyt.MoveNext
  14. Loop
  15. Kyt.Close
  16. Set Kyt = Nothing
  17. End Sub



Form geçerli olay yordamına prosedür uygulanabilir.



  Alıntı
Bu mesajı beğenenler:
#3
(14-01-2024, 03:33)dsezgin demiş ki:
Visual Basic
  1. Private Sub Form_Current()
  2. Dim ctl As Control
  3. For Each ctl In Me.Controls
  4. '*** Tag/Im bolumunde Kontrol yazan düğmeleri Pasif Yap ***********
  5.    If ctl.Tag = "Kontrol" Then Me.Controls(ctl.Name).Enabled = 0
  6. Next ctl
  7. Dim Kyt As Recordset
  8. Set Kyt = CurrentDb.OpenRecordset("SELECT formadi, dugmeadi FROM TYetkiDugme WHERE grupid = " & Me.yetki)
  9. If Kyt.RecordCount = 0 Then Exit Sub
  10. Do Until Kyt.EOF
  11.    '************ Yetki eşitlemesi ile Düğmeleri Aktif Yap*******************
  12.    Me.Controls(Kyt!DugmeAdi).Enabled = -1
  13. Kyt.MoveNext
  14. Loop
  15. Kyt.Close
  16. Set Kyt = Nothing
  17. End Sub



Form geçerli olay yordamına prosedür uygulanabilir.
Üstadım yarın iş yerinde tavsiyenizi uygulayacağım. Evde bilgisayar yok. Teşekkür ederim. Bu mesajı telefondan yazıyorum



  Alıntı
Bu mesajı beğenenler:
#4
(14-01-2024, 03:33)dsezgin demiş ki:
Visual Basic
  1. Private Sub Form_Current()
  2. Dim ctl As Control
  3. For Each ctl In Me.Controls
  4. '*** Tag/Im bolumunde Kontrol yazan düğmeleri Pasif Yap ***********
  5.    If ctl.Tag = "Kontrol" Then Me.Controls(ctl.Name).Enabled = 0
  6. Next ctl
  7. Dim Kyt As Recordset
  8. Set Kyt = CurrentDb.OpenRecordset("SELECT formadi, dugmeadi FROM TYetkiDugme WHERE grupid = " & Me.yetki)
  9. If Kyt.RecordCount = 0 Then Exit Sub
  10. Do Until Kyt.EOF
  11.    '************ Yetki eşitlemesi ile Düğmeleri Aktif Yap*******************
  12.    Me.Controls(Kyt!DugmeAdi).Enabled = -1
  13. Kyt.MoveNext
  14. Loop
  15. Kyt.Close
  16. Set Kyt = Nothing
  17. End Sub



Form geçerli olay yordamına prosedür uygulanabilir.

Üstadım sabahtan bu yana ilgili kodu Form geçerli olay yordamına  ve Form Yüklendiğinde olay yordamına uyguladım.
Maalasef sözkonusu Gezintidüğmelerini kullanıcılara göre aktif pasif yapamadım.

im alınana "Kontrol" yazınca da tüm kullanıcılar için düğmeyi pasif yaptı.

Sezgin hocam başka bir fikir veya düşünceniz varmıdır bu konuda yardımlarınızı beklerim. Teşekkürler



  Alıntı
Bu mesajı beğenenler:
#5
(15-01-2024, 13:00)Ahmet51 demiş ki: Üstadım sabahtan bu yana ilgili kodu Form geçerli olay yordamına  ve Form Yüklendiğinde olay yordamına uyguladım.
Maalasef sözkonusu Gezintidüğmelerini kullanıcılara göre aktif pasif yapamadım.

im alınana "Kontrol" yazınca da tüm kullanıcılar için düğmeyi pasif yaptı.

Uygulamanızda ADO kitapçığı olup, kodu güncelledim. Form uzerınde hangi kontrolün pasif yapılacağı belirlenmesi için im alınana "Kontrol" yazma unutulmamalı.
Visual Basic
  1. Private Sub Form_Current()
  2. Dim ctl As Control
  3. For Each ctl In Me.Controls
  4. '*** Tag/Im bolumunde Kontrol yazan düğmeleri Pasif Yap ***********
  5. If ctl.Tag = "Kontrol" Then Me.Controls(ctl.Name).Enabled = 0
  6. Next ctl
  7. Dim Kyt As New ADODB.Recordset
  8. Kyt.Open "SELECT formadi, dugmeadi FROM TYetkiDugme WHERE grupid = " & Me.yetki, CurrentProject.Connection, adOpenStatic, adLockReadOnly
  9. If Kyt.RecordCount = 0 Then Exit Sub
  10. Do Until Kyt.EOF
  11. '************ Yetki eşitlemesi ile Düğmeleri Aktif Yap*******************
  12. Me.Controls(Kyt!DugmeAdi).Enabled = -1
  13. Kyt.MoveNext
  14. Loop
  15. Kyt.Close
  16. Set Kyt = Nothing
  17. End Sub





  Alıntı
Bu mesajı beğenenler:
#6
(15-01-2024, 13:38)dsezgin demiş ki: Uygulamanızda ADO kitapçığı olup, kodu güncelledim. Form uzerınde hangi kontrolün pasif yapılacağı belirlenmesi için im alınana "Kontrol" yazma unutulmamalı.
Visual Basic
  1. Private Sub Form_Current()
  2. Dim ctl As Control
  3. For Each ctl In Me.Controls
  4. '*** Tag/Im bolumunde Kontrol yazan düğmeleri Pasif Yap ***********
  5.    If ctl.Tag = "Kontrol" Then Me.Controls(ctl.Name).Enabled = 0
  6. Next ctl
  7. Dim Kyt As New ADODB.Recordset
  8. Kyt.Open "SELECT formadi, dugmeadi FROM TYetkiDugme WHERE grupid = " & Me.yetki, CurrentProject.Connection, adOpenStatic, adLockReadOnly
  9. If Kyt.RecordCount = 0 Then Exit Sub
  10. Do Until Kyt.EOF
  11.    '************ Yetki eşitlemesi ile Düğmeleri Aktif Yap*******************
  12.    Me.Controls(Kyt!DugmeAdi).Enabled = -1
  13. Kyt.MoveNext
  14. Loop
  15. Kyt.Close
  16. Set Kyt = Nothing
  17. End Sub


İşlem Tamamdır.

Üstadım emeğine sağlık. Sonsuz Teşekkür ederim. İnsanların birbirinden selamı bile esirgediği günümüzde;İyiki varsınız



  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  [FORM] Aktif Saati Tablodaki Saat Arasına Göre Bulup Forma Yazdırma yahyamacit 5 136 14-03-2024, 11:07
Son Mesaj: yahyamacit
  Sürekli Formda Yeni Kayıt üstte Olsun hegu 4 188 05-10-2023, 20:55
Son Mesaj: hegu
  [SORGU] Sınıfa Kayıtlı Aktif öğrenci Sayısını Bulmak Dcount Fonksiyonu by_hayalci 2 128 24-08-2023, 08:38
Son Mesaj: by_hayalci
  Aktif Formdaki Raporu Yazdırma ankaram 3 188 27-01-2023, 00:46
Son Mesaj: BeyTor
  [FORM] Access Aktif Olan Formu, Mail Olarak Göndermek. Fenerli88 5 383 25-01-2023, 02:14
Son Mesaj: BeyTor
  [FORM] Sürekli Form Düzeninde Her Kayıt Için Ayrı Ayrı Alanların Pasif Olması Hk. dormin 1 182 09-12-2022, 15:36
Son Mesaj: onur_can
  Sürekli Formda Yeni Kayıt üstte Olsun hegu 15 428 07-11-2022, 11:43
Son Mesaj: hegu
  Aktif Formda Raporu Pdf Olarak Almak ankaram 4 190 06-11-2022, 22:40
Son Mesaj: onur_can

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi