Xrm.Page.context.getUserRoles() ifadesını kullanınca kullanıcının rollerı bir dizi halınde doner.Bellı bir role gore ıslem yapabilme yetkisi vereceksek tek yapmak gereken dizinin elemanlarında aradıgımız degerle eslestırmek.
Önemli: Dizinin satırları bize kullanıcı rolunun guid degeri verir.Eger kullanıcı rolunun adını almak ıstıyorsak ya fetchxml yoluyla ya da jquery kullanarak elimizdekı guid degere karsılık gelen rolu Crm içerısındekı guvenlık rolu entitysınden cekmemız gerekmektedir.
Asagıda ornek bir kod satırı bulunmaktadır.
Örnek:
Asagıda guid degerıne sahip oldugum bir user rolunu bulup,ona gore belırlı bır alanın enable ozellıgını set edıyorum.
function funk1() {
var deger= Xrm.Page.getAttribute("attributename").getValue();
if (deger== 1) {
var currentUserRoles = Xrm.Page.context.getUserRoles(); // kullanıcının rollerını alma
if (currentUserRoles != null && currentUserRoles.length != 0)// kullanıcı rollerını tek tek dolasma
for (var i = 0; i < currentUserRoles.length; i++) {
var userRole = currentUserRoles[i];
if (userRole.toString() == 'CF3289F2-2398-E111-9F2C-00155D1A5106') {
Xrm.Page.getControl("check").setDisabled(false);
break;
}
else {
Xrm.Page.getControl("check").setDisabled(true);
break;
}
}
}
}
Hiç yorum yok:
Yorum Gönder