Dears, У нас есть агенты, использующие Microsoft Dynamics CRM 2015 Мне нужно, чтобы некоторые из них могли отмечать завершение Activity и редактирование в любой деятельности, а остальная часть может редактировать в любой деятельности, но не может изменить Статус действия или кнопка завершения использования. Спасибо,Ограничить доступ к отметке в Microsoft CRM
0
A
ответ
3
Невозможно из коробки. Лучший способ справиться с этим конкретным сценарием - предотвратить Mark as Complete
с помощью javascript, основанного на роли безопасности пользователя. Также никогда не рекомендуется менять кнопки с ящиками и их функциональность.
function onSave(executionContext) {
var saveMode = executionContext.getEventArgs().getSaveMode();
if (saveMode === 58) { //mark as complete
var canMarkAsComplete = false;
window.Xrm.Page.context.getUserRoles().forEach(function(role) {
if (role === 'GUID of the security role allowed to mark as complete') {
canMarkAsComplete = true;
return;
}
});
if (!canMarkAsComplete) {
executionContext.getEventArgs().preventDefault();
return false;
}
}
}
Спасибо дорогой, но как я могу проверить, если пользователь может пометить как полный или нет –
То есть требование бизнеса, возможно, пользователи только с определенной ролью? или, возможно, создать новую роль безопасности для всех пользователей, которые могут выполнить действие. – dynamicallyCRM
Предположим, что мне нужно ограничить доступ к агентам с помощью роли xyz и предоставить доступ только к агентам с ролью CSR, поэтому я должен написать в вашем коде. –