Имя: Пароль:
1C
 
Как запретить перетаскивание партнеров в форме списка?
,
0 spblrt
 
25.12.15
14:08
Как запретить менеджерам с ролью "МенеджерCRM" перетаскивание партнеров в форме списка? Дело в том, что менеджеры не должны менять головное предприятие партнера(в форме элемента это запрещено) но эти хитрецы умудрились делать это путем перетаскивания мышкой партнеров в форме списка(Как бы в группы, где головное предприятие и есть "Группа").
1 fmrlex
 
25.12.15
14:13
РазрешитьПеретаскивание = Ложь
2 YurAnt
 
25.12.15
14:13
А запретить им в роли редактирование партнеров не вариант?
3 YurAnt
 
25.12.15
14:13
(1) +1
4 spblrt
 
25.12.15
14:15
Они редактируют информацию о партнерах, но головное предприятие менять не должны
5 spblrt
 
25.12.15
14:21
Если Роль.МенеджерCRM Тогда
        Элементы.РазрешитьПеретаскивание = Ложь
    КонецЕсли

чет я не правильно делаю да?
6 FIXXXL
 
25.12.15
14:23
при записи, а она неявно происходит при перетаскивании, проверяй Объект.Группа=Ссылка.Группа
шли лесом тех, кому неположено
7 spblrt
 
25.12.15
14:50
Разобрался! Нужно было написать в форме списка в процедуре "ПриСозданииНаСервере"вот так:

    Если РольДоступна("МенеджерCRM") Тогда
        Элементы.Список.РазрешитьПеретаскивание = Ложь
    КонецЕсли
8 FIXXXL
 
25.12.15
14:57
(7) завтра манагеры еще дырку найдут, будешь опять разгребать
9 Лефмихалыч
 
25.12.15
15:01
во-первых, запрещать, если роль доступно - это идиотизм. Потому, что при расширении набора ролей права должны расширяться, а не сужаться. Иначе попадешь потом в непонятное, противопоставляя себя политике разрешения, действующей в платформе.

во-вторых, чтобы не менять форму списка (чтоб, например, с типовыми обновками не париться потом), можно подписку перед записью добавить, где

Если ЭтомуПользюкуНельзяДавать() Тогда
Если Источник.Ссылка.ГоловнойКонтрагент <> Источник.ГоловнойКонтрагент Тогда
  Отказ = Истина;
  ВызватьИсключение "А иди-ка ты, Уася, натурально отравы попей";