AccessTr.neT
Kullanıcı Adına Göre Textbox Veri Kaynağını Değiştirmek - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html)
+--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Kullanıcı Adına Göre Textbox Veri Kaynağını Değiştirmek (/konu-kullanici-adina-gore-textbox-veri-kaynagini-degistirmek.html)

Sayfalar: 1 2


Kullanıcı Adına Göre Textbox Veri Kaynağını Değiştirmek - accessman - 25/03/2020

Başlıktan da net bir şekilde anlaşıldığı gibi
İlişkili Bir form var içinde birden çok metin kutusu var
Metin kutularından birisi
Admin açınca farklı bir alanı mesela kaydın gerçek zamanını
kullanıcı açınca başka bir alanı mesela manuel girilen zamanı
Ziyaretçi açınca da hiç bir alanı göstermeyecek
Bunu visible özelliği ile yapabilirim ama bunu sormuyorum
Nasılki runtime listbox satır kaynağını değiştirebiliyoruz
Metin kutusu içinde bu yapılabilir mi
Kutu gözükecek ama adamına göre veri kaynağı değişecek


Cvp: Kullanıcı Adına Göre Textbox Veri Kaynağını Değiştirmek - berduş - 25/03/2020

kaba bir tabir yaklaşımla aşağıdaki gibi yapılabilir
Me.Metin2.ControlSource = "=" & Me.Acilan_Kutu0
ben burada açılan kutudaki değer değiştiğinde metin alanının kaynağını değiştirecek şekilde yaptım
burada 2 sütunlu bir açılır kutu kullandım açılır kutunun ilk sütunu alan adı 2. sütunu ise admin /kullanıcı/ziyaretçi
ama siz giriş ekranlı bir çalışmada kullanıcı kimliğini kullanıp ona göre alanı alabilirsiniz


Cvp: Kullanıcı Adına Göre Textbox Veri Kaynağını Değiştirmek - accessman - 25/03/2020

teşekkürler sn. @berduş
bunu tablodaki alanlardan biri olarak yazacak olsaydık nasıl yazacaktık mesela 
if(usertype="admin")then
Me.Metin2.ControlSource = isim '(tablodaki alan)
else
Me.Metin2.ControlSource = soyisim '(tablodaki alan)
end if



Cvp: Kullanıcı Adına Göre Textbox Veri Kaynağını Değiştirmek - ozanakkaya - 25/03/2020

Siz direk sormak yerine örnek uygulamanızda

Me.Metin2.ControlSource = "Alan1"

Şeklinde deneme yapmıyor musunuz??


Cvp: Kullanıcı Adına Göre Textbox Veri Kaynağını Değiştirmek - accessman - 25/03/2020

bu kod ile yetkisiz kişiler için bazı metin kutularınının içeriğini gizledik diyelim sonra yetkili kişi için her metin kutusunun ControlSource değerine  tek tek alan mı tanımlayacağız
Dim ctl As Control
    For Each ctl In Me.Form
        If InStr(1, ctl.Tag, tagname) <> 0 Then
            If ctl.ControlType = acTextBox Or ctl.ControlType = acComboBox Then
                ctl.Enabled = deger
                ctl.ControlSource = "=****"
            ElseIf ctl.ControlType = acOptionGroup Or ctl.ControlType = acCheckBox Then
                ctl.Enabled = deger
                ctl.Value = Null
            Else
                ctl.Enabled = True
            End If
        End If
    Next ctl
    Set ctl = Nothing



Cvp: Kullanıcı Adına Göre Textbox Veri Kaynağını Değiştirmek - accessman - 25/03/2020

şöyle yapınca daha kolay oldu
ctl.ControlSource = ctl.name