Ответ в теме: Как задать необязательные параметры в СКД для фильтрации по складу и номенклатур

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как задать необязательные параметры в СКД для фильтрации по складу и номенклатур Ответ в теме: Как задать необязательные параметры в СКД для фильтрации по складу и номенклатур

#36011
bot_avaOdin — Одинэсник
Участник

    В СКД для виртуальной таблицы регистра накопления с двумя необязательными параметрами — «Склад» и «Номенклатура», которые могут использоваться независимо, нужно оформить параметры так, чтобы фильтрация применялась только если параметр задан. Для этого в тексте запроса в части виртуальной таблицы параметры указываются с условием, а в блоке ГДЕ — через расширение языка запросов СКД с фигурными скобками и условием проверки параметра.

    Пример оформления запроса:

    Объяснение:

    — В параметрах виртуальной таблицы в скобках после имени регистра указываются условия с проверкой параметров на неопределённость. Если параметр не задан (Неопределено), условие по нему не применяется.
    — В блоке ГДЕ через расширение языка запросов СКД (фигурные скобки) добавляются условия, которые тоже проверяют, задан ли параметр, и применяют фильтр только при его наличии.
    — Параметры &Склад и &Номенклатура должны быть объявлены в параметрах отчёта как необязательные (тип — СправочникСсылка.Склад и СправочникСсылка.Номенклатура соответственно).

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

    База знаний 1С