584 документа
← К списку

В 1C:EDT

страница

В 1C:EDT

Механизм формирования представления объекта конфигурации состоит из двух этапов: определение реквизитов, участвующих в формировании представления, и собственно формирование представления. Для этого используются обработчики событий ОбработкаПолученияПолейПредставления и ОбработкаПолученияПредставления менеджера соответствующего объекта.

Откройте модуль менеджера справочника Номенклатура. Пока он пустой. Нажмите Добавить обработчик события в контекстном меню (рис. 10.6).

Рис. 10.6. Создание обработчика события в модуле менеджера справочника «Номенклатура»

Вы увидите список событий, для которых вы можете создать обработчики в модуле менеджера. При выделении события в нижней части окна показывается синтаксическая подсказка для этого события (рис. 10.7).

Рис. 10.7. Создание обработчика события в модуле менеджера справочника «Номенклатура»

Выберите ОбработкаПолученияПолейПредставления() и нажмите ОК. В результате в модуле менеджера появится объявление процедуры обработчика события. Заполните его следующим образом (листинг 10.1).

Листинг 10.1. Процедура «ОбработкаПолученияПолейПредставления()»

Процедура ОбработкаПолученияПолейПредставления(Поля, СтандартнаяОбработка)

 

СтандартнаяОбработка = Ложь;

Поля.Добавить("Наименование");

Поля.Добавить("ВидНоменклатуры");

 

КонецПроцедуры

Таким же образом создайте обработчик события ОбработкаПолученияПредставления() и заполните его следующим образом (листинг 10.2).

**Листинг 10.**2. Процедура «ОбработкаПолученияПредставления()»

Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)

 

СтандартнаяОбработка = Ложь;

Если ЗначениеЗаполнено(Данные.ВидНоменклатуры) Тогда

Представление = Данные.Наименование + " (" + НРег(Строка(Данные.ВидНоменклатуры)) + ")";

 

Иначе

Представление = Данные.Наименование;

 

КонецЕсли;

 

КонецПроцедуры

В обработчике события ОбработкаПолученияПолейПредставления вы описываете, какие реквизиты будут участвовать в формировании представления документа. Для этого сначала вы устанавливаете параметр СтандартнаяОбработка в значение Ложь, а затем добавляете в массив Поля нужные реквизиты справочника. Если параметр СтандартнаяОбработка в обработчике не установлен в значение Ложь, то массив Поля будет заполнен именами реквизитов, используемыми для формирования стандартного представления данного объекта (в данном случае это Наименование и ВидНоменклатуры).

В обработчике события ОбработкаПолученияПредставления вы описываете алгоритм получения параметра Представление из массива полей, заданных вами в предыдущем обработчике. Данные, необходимые для формирования представления, передаются с помощью параметра Данные типа Структура. Для этого сначала вы устанавливаете параметр СтандартнаяОбработка в значение Ложь, а затем получаете представление номенклатуры путем добавления к ее наименованию вида номенклатуры, заключенного в скобки. Если параметр СтандартнаяОбработка в обработчике не установлен в значение Ложь, то система попытается сформировать стандартное представление объекта исходя из переданных данных.