Доработка справочника ВариантыНоменклатуры
Теперь нам следует доработать справочник "ВариантыНоменклатуры" таким образом, чтобы пользователь имел возможность создавать новые свойства материалов не только при редактировании самого материала, но и в процессе ввода документов, когда в табличную часть подбирается набор свойств.
Поэтому для справочника "ВариантыНоменклатуры" укажем, что он будет редактироваться обоими способами (как в списке, так и в диалоге) и создадим с помощью конструктора основную форму элемента.
Доработка формы элемента справочника "ВариантыНоменклатуры" будет сводиться, по большому счету, к тем же действиям, которые мы выполнили с формой справочника "Номенклатура". В форме нам нужно будет расположить табличное поле, которое должно отображать существующие в регистре сведений записи о значениях свойств для этого элемента справочника.
Откроем основную форму элемента справочника "ВариантыНоменклатуры" и раздвинем форму вниз. На освободившемся пространстве поместим табличное поле с именем "Свойства", типом РегистрСведенийСписок.ЗначенияСвойствНоменклатуры и командной панелью. Для колонки "НаборСвойств" снимем флаг видимости:
[269]
Затем для поля ввода, расположенного в колонке "Значение" зададим связь по типу ЭлементыФормы.Свойства.ТекущиеДанные.ВидСвойства.
Для поля ввода, расположенного в колонке "ВидСвойства" создадим обработчик события "ПриИзменении":
Процедура СвойстваВидСвойстваПриИзменении(Элемент)
ДанныеВидСвойства = ЭлементыФормы.Свойства.ТекущиеДанные.ВидСвойства;
ЭлементыФормы.Свойства.ТекущиеДанные.Значение = ДанныеВидСвойства.ТипЗначения.ПривестиЗначение(ЭлементыФормы.Свойства.ТекущиеДанные.Значение);
КонецПроцедуры
Теперь необходимо сделать так, чтобы при открытии формы устанавливался нужный нам отбор, а также, в случае, если мы добавляем новый элемент справочника, чтобы отбор устанавливался и после того, как элемент будет записан. Для этого мы воспользуемся возможностью назначения обработчика события изменения данных, который будет отслеживать изменения ссылки на редактируемый элемент справочника.