Подключение к подсистеме Запрет редактирования реквизитов
Настройка общего модуля
В общем модуле ЗапретРедактированияРеквизитовОбъектовПереопределяемый
дополняем процедуру ПриОпределенииОбъектовСЗаблокированнымиРеквизитами
своими объектами
Процедура ПриОпределенииОбъектовСЗаблокированнымиРеквизитами(Объекты) Экспорт
Объекты.Вставить(Метаданные.Справочники.УДК_Подсистемы.ПолноеИмя(), ""); Объекты.Вставить(Метаданные.Справочники.УДК_ОбъектыМетаданных.ПолноеИмя(), ""); Объекты.Вставить(Метаданные.Справочники.УДК_ФормыКомандыМакеты.ПолноеИмя(), "");
КонецПроцедуры
В модуле менеджера
Для каждого объекта в модуле менеджера нужно определить экспортную функцию с указанием заблокированных методов
// См. пример в ЗапретРедактированияРеквизитовОбъектовПереопределяемый.ПриОпределенииОбъектовСЗаблокированнымиРеквизитами
// СтандартныеПодсистемы.ЗапретРедактированияОбъектовФункция ПолучитьБлокируемыеРеквизитыОбъекта() Экспорт
БлокируемыеРеквизиты = Новый Массив;
// упрощенный вариант настройки //БлокируемыеРеквизиты.Добавить("ЕдиницаИзмерения"); //БлокируемыеРеквизиты.Добавить("СтавкаНДС");
// расширенный вариант настройки Реквизит = ЗапретРедактированияРеквизитовОбъектов.НовыйБлокируемыйРеквизит(); Реквизит.Группа = "ОбщаяНадпись"; Реквизит.ПредставлениеГруппы = НСтр("ru = 'Проверьте места использования перед разблокировкой реквизитов.'"); БлокируемыеРеквизиты.Добавить(Реквизит);
Реквизит = ЗапретРедактированияРеквизитовОбъектов.НовыйБлокируемыйРеквизит(); Реквизит.Имя = "ЕдиницаИзмерения"; Реквизит.Предупреждение = НСтр("ru = 'Единицу измерения не рекомендуется изменять, если были закупки/продажи товара'"); БлокируемыеРеквизиты.Добавить(Реквизит);
Реквизит = ЗапретРедактированияРеквизитовОбъектов.НовыйБлокируемыйРеквизит(); Реквизит.Имя = "СтавкаНДС"; Реквизит.Предупреждение = НСтр("ru = 'Ставку НДС не рекомендуется изменять, если были закупки/продажи товара'"); БлокируемыеРеквизиты.Добавить(Реквизит);
Возврат БлокируемыеРеквизиты;
КонецФункции// Конец СтандартныеПодсистемы.ЗапретРедактированияОбъектов
В модуле формы
&НаСервереПроцедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// СтандартныеПодсистемы.ЗапретРедактированияРеквизитовОбъектов ЗапретРедактированияРеквизитовОбъектов.ЗаблокироватьРеквизиты(ЭтотОбъект); // Конец СтандартныеПодсистемы.ЗапретРедактированияРеквизитовОбъектов
КонецПроцедуры
&НаСервереПроцедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
// СтандартныеПодсистемы.ЗапретРедактированияРеквизитовОбъектов ЗапретРедактированияРеквизитовОбъектов.ЗаблокироватьРеквизиты(ЭтотОбъект); // Конец СтандартныеПодсистемы.ЗапретРедактированияРеквизитовОбъектов
КонецПроцедуры
// СтандартныеПодсистемы.ЗапретРедактированияРеквизитовОбъектов&НаКлиентеПроцедура Подключаемый_РазрешитьРедактированиеРеквизитовОбъекта(Команда) ЗапретРедактированияРеквизитовОбъектовКлиент.РазрешитьРедактированиеРеквизитовОбъекта(ЭтотОбъект);КонецПроцедуры// Конец СтандартныеПодсистемы.ЗапретРедактированияРеквизитовОбъектов