Добрый день!
Подскажите, пожалуйста, как сделать запрет на сохранение в детали с редактируемым реестром в зависимости от стадии которая находится в связанном объекте? Заранее благодарен за помощь
Нравится
Навскидку в детали ты можешь получить id объекта к которой деталь прикреплена через this.get("MasterRecordId") Забиндить доступность сохранение на стади. полученую по MasterRecordId
Добрый день. Проще всего переопределить метод Save в карточке редактирования. Он отработает при сохранении записи детали с редактируемым реестром. Если все в порядке, то вызвать родителя, иначе выдать сообщение.
Можно также переопределить доступность кнопки добавить в детали с редактируемом реестром
getAddRecordButtonEnabled: function() { var isFinalStaus = this.sandbox.publish("UpdateIsFinalStatus", null, [this.sandbox.id]); return !isFinalStaus; }
А в самой детали реализовать подписку на определение статуса UpdateIsFinalStatus
Пащенко Александр Сергеевич пишет:
Добрый день. Проще всего переопределить метод Save в карточке редактирования. Он отработает при сохранении записи детали с редактируемым реестром...ЕщеСвернуть
Я думаю забиндить на видимость доступность или переопределить метод сохранения в детале не принципиально. Более интересно как в детали получить статус родительского объекта и определить доступность сохранения.
Можно на смену стадии завязать БП с выдачей прав на деталь.
Владимир
ну направление я вам кинул, если не получится пишите на чем застряли, будет интересно посмотреть. Для начала переопределите метод getAddRecordButtonEnabled как описанно выше (можно вообще чтоб возвращал false) и посмотреть вас так устроит. Потом обмен сообщениями из детали в основную схему.
Саша а примерчиком процесса раздачи прав поделится?
Готового примера нет, но в дизайнере БП есть стандартный элемент «Изменить права доступа». Если завязаться на смену значения поля в основном объекте, забирать права у всех или раздавать кому надо. А поскольку это поле «стадия», может, есть ещё и кейс и можно процессы сделать как часть его DCM.