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