Содержание:
1. Доработка формы Заказа клиента
2. Использование конструктора схемы компоновки данных
1. Доработка формы Заказа клиента
В данной статье разберем особенности использования системы компоновки данных для работы с динамическими списками в 1С 8. В управляемых формах динамические списки формируются в обязательном порядке с использованием механизма СКД, хотя при этом возможности СКД сильно урезаны. Реализуем следующий кейс работы СКД со списком. Необходимо сделать доработку формы заказа клиента, где при вызове формы выбора номенклатуры будет выводиться информация об остатках номенклатуры на складе, указанном в документе.
Форма заказа клиента
Задача сводится к тому, чтобы создать новую форму выбора справочника «Номенклатура» с соответствующими настройками и подставлять ее в форму заказа клиента.
Создадим новую форму выбора справочника номенклатуры, она не должна быть основной, чтобы вызывалась только по нашему требованию.
В свойствах динамического списка формы можно настраивать вывод данных при помощи объектной модели, подходит для работы в одной таблице, по умолчанию включена она, либо при помощи запроса, подходит для работы с одной или несколькими таблицами. Чтобы подключить запрос, включаем флаг – «Произвольный запрос» и проваливаемся по ссылке «Открыть».
Произвольный запрос в динамическом списке
2. Использование конструктора схемы компоновки данных
Тут мы попадаем в упрощенный конструктор схемы компоновки данных, где можно написать текст запроса, вручную или конструктором. На закладке настройки также видим урезанные настройки системы компоновки данных.
Конструктор схемы компоновки данных
Напишем вот такой простой запрос, нажимаем ОК.
Запрос в конструкторе схемы компоновки данных
В списке появилось поле с остатком. Не забываем отобразить остаток на форме.
3. Обработчик события формы
Теперь создаем обработчик события формы «При создании на сервере» для установления параметра.
В обработчике события формы объявляем параметр склад, который мы получим из формы «Заказ клиента».
Параметр склад в обработчике события формы
Чтобы форма заказа клиента сгенерировала параметр «Склад», немного доработаем форму «Заказ клиента».
Топаем на Поле номенклатуры, находим соответствующий реквизит, переходим в свойства реквизита, в настройке «Связи параметров выбора» указываем параметр – Склад.
В настройке «Форма Выбора» прописываем нашу новую форму выбора справочника номенклатуры.
Прописывание формы выбора справочника Номенклатура
Проверяем результат.
Обновленная форма Заказ клиента
Остатки мы получили, но данные выводятся не очень удобно. Сначала выводятся группы и, если в них есть номенклатура с остатками ниже видим уже товары. Это режим просмотра -Иерархический список, нам же нужен режим – Список. Мы можем настроить его по кнопке «Еще».
Режимы просмотра Иерархический список и Список
В конфигураторе также можно произвести данную настройку, в этом случае у всех пользователей форма выбора справочника будет выводится списком.
Переходим в настройки формы выбора, находим реквизит «Список», свойство «Отображение», выбираем «Список».
Настройки формы выбора справочника
Переходим в режим предприятия, проверяем вывод формы выбора справочника в документе ЗаказКлиента.
Форма Заказа клиента с выбором по справочнику
Так же проверим, чтобы в остальных документах выводилась типовая форма.
Документы с формой выбора справочника Номенклатура
Специалист компании «Кодерлайн»
Дмитрий Доронов