.RU

Доработка справочника Варианты номенклатуры

Доработка справочника Варианты номенклатуры


Теперь нам следует доработать

справочник ВариантыНоменклатуры

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

справочника ВариантыНоменклатуры

укажем, что он будет редактироваться обоими способами (как в списке, так и в диалоге), и создадим с помощью конструктора основную форму элемента.
Доработка формы элемента

справочника ВариантыНоменклатуры

будет сводиться по большому счету к тем же действиям, которые мы выполнили с формой

справочника Номенклатура

. В форме нам

нужно будет расположить табличное поле

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

справочника ВариантыНоменклатуры

и раздвинем форму вниз. На освободившемся пространстве поместим

табличное поле с именем Свойства

,

типом РегистрСведенийСписок.ЗначенияСвойствНоменклатуры

и командной панелью.

Для колонки НаборСвойств

снимем флаг видимости (рис. 14).

Рис. 14.

Основная форма элемента справочника ВариантыНоменклатуры
Затем

для поля ввода

, расположенного

в колонке Значение

, зададим

связь по типу ЭлементыФормы.Свойства.ТекущиеДанные.ВидСвойства.


^ Для поля ввода

, расположенного

в колонке ВидСвойства

, создадим

обработчик события ПриИзменении

(листинг 4).

Листинг 4.

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

обработчика события Изменения данных,

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

обработчик события ПриИзмененииСсылки,

в котором установим требуемый нам отбор (листинг 5).

Листинг 5.

Процедура ПриИзмененииСсылки()
Процедура ПриИзмененииСсылки(ПутьКДанным)
Свойства.Отбор.НаборСвойств.Установить(Ссылка, Истина);
КонецПроцедуры
Затем в тело модуля формы добавим вызов этого обработчика (листинг 6).

Листинг 6.

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

НаборыСвойств

.
Поэтому создадим

обработчик события табличного поля ПередНачаломДобавления

: (листинг 7).

Листинг 7.

Процедура СвойстваПередНачаломДобавления()
Процедура СвойстваПередНачаломДобавления(Элемент, Отказ, Копирование)
Если ЭтоНовый() Тогда
Записать();
КонецЕсли;
КонецПроцедуры

^ Доработка регистра Остатки материалов


Чтобы обеспечить учет материалов по значениям характеристик, необходимо изменить структуру

регистра накопления ОстаткиМатериалов

и добавить в него

новое измерение НаборСвойств с типом СправочникСсылка.ВариантыНоменклатуры

(рис. 15).

Рис. 15.

Новое измерение НаборСвойств

Доработка документа Приходная накладная


Последнее, что нам осталось, – доработать

документ ПриходнаяНакладная

. Для того чтобы при приходовании товаров пользователь мог указывать набор свойств для каждого приходуемого материала,

добавим в табличную часть документа новый реквизит НаборСвойств с типом СправочникСсылка.ВариантыНоменклатуры

(рис. 16).

Рис. 16.

Новый реквизит НаборСвойств
После этого расположим этот реквизит в табличном поле формы документа (правая кнопка мыши

– Размещение данных

), рис. 17).

Рис. 17.

Редактирование формы документа ПриходнаяНакладная

^ Для поля ввода

, расположенного

в колонке НаборСвойств

, снова воспользуемся свойством

Связь по владельцу - ЭлементыФормы.Материалы.ТекущиеДанные.Материал

. Теперь при выборе в этом поле ввода будет всегда открываться список элементов справочника

ВариантыНоменклатуры

, подчиненных материалу, выбранному в колонке

Материал

.
В заключение откроем процедуру обработки проведения (закладка Прочее → Модель объекта) в модуле документа и добавим к формируемым движениям присвоение значения измерению

НаборСвойств

(листинг 8).

Листинг 8.

Процедура ОбработкаПроведения()
Движение.Материал = ТекСтрокаМатериалы.Материал;

^ Движение.НаборСвойств = ТекСтрокаМатериалы.НаборСвойств;


(вставить эту строку между верхней и нижней)


Движение.Склад = Склад;
Теперь наконец-то запустим 1С:Предприятие в режиме отладки и создадим несколько наборов свойств для наших материалов. Как создать набор свойств см.ниже.

^ Создание наборов свойств


Откроем

элемент справочника Номенклатура – Кабель электрический

. Перейдем на

закладку Свойства

и создадим набор свойств этого элемента под названием

Белый

(рис. 18).
Он будет состоять их следующих

характеристик

(сначала создаем наименование, и в этом же окне добавляем к наименованию виды свойств)

:




Рис. 18.

Элемент справочника Кабель электрический
Затем создадим набор свойств

для элемента справочника Номенклатура – Шланг резиновый

.
Этот набор свойств будет называться

Польша

и состоять из следующих характеристик (рис. 19):
• Цвет – Черный;
• Производитель – Fagumit.

Рис. 19. Элемент справочника Шланг резиновый
Теперь

откроем документ Приходная накладная №2

и укажем, что был закуплен белый электрический кабель в количестве

2 шт

. и польский резиновый шланг.
Затем скопируем первую строку документа и укажем, что был закуплен еще и черный электрический кабель в количестве

^ 3 шт.

(в процессе ввода нам придется создать еще один набор свойств для электрического кабеля –

Черный

, у которого

Цвет - Черный и Сечение - 2,5

), рис. 20.

Рис. 20.

Документ Приходная накладная №2
Проведем документ и посмотрим на движения документа

по регистру ОстаткиМатериалов

(рис. 21).

Рис.21.

Движения документа Приходнаянакладная №2 по регистру
Кроме этого посмотрим на записи, которые содержатся

в регистре сведений ЗначенияСвойствНоменклатуры

(рис. 22).

Рис. 22. Записи регистра сведений 2010-07-19 18:44 Читать похожую статью
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • Контрольная работа
  • © Помощь студентам
    Образовательные документы для студентов.