Каталог решений - Как в динамический список управляемой формы документа добавить отбор по реквизиту табличной части этого документа?

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

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

В наличии

Как сделать, чтобы по кнопке "Настроить список" в доступных полях элементов коллекции отбора появилось поле для отбора по табличной части?

Категория:

Описание

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

Структура документа   Установка флага произвольного запроса

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

Конструктор запроса по умолчанию

После чего нужно добавить отдельными таблицами нужные нам табличные части:

Добавление табличной части

Подключаем левым соединением табличную часть к основной таблице документа по ссылке:

Установка связей

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

Группировка полей

После этого заходим на закладку «Компоновка данных», «Условия» и добавляем нужные в отборе поля:

Добавление полей в отборы

Нажимаем «ОК» и видим как выглядит готовый текст запроса:

Текст запроса

Если перейти тут же на закладку «Настройки», то увидим новые добавленные поля отбора:

Настройка отбора

Обратите внимание на то, что реквизит «Подразделение» присутствует как в шапке, так и в табличной части, а в доступных полях отбора всего одно поле, и в такой реализации будет установлен отбор по реквизиту табличной части. Если же нам нужен отбор и по подразделению из шапки, то нужно просто задать другое имя отбора для табличной части:

Установка псевдонима для отбора

И вот как стал выглядеть текст запроса:

Измененный текст запроса

В настройках видно как изменилось имя поля отбора табличной части и вернулось поле отбора по шапке документа:

Измененные поля отбора

Ну, и вот так это выглядит в пользовательском режиме:

Пользовательский режим

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

has been added to your cart:
Оформление заказа