- В этой теме 1 ответ, 2 участника, последнее обновление 2 часа, 57 минут назад сделано .
Просмотр 1 ветки ответов
Просмотр 1 ветки ответов
- Для ответа в этой теме необходимо авторизоваться.
Программирование и администрирование в 1С
База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как задать необязательные параметры в СКД для фильтрации по складу и номенклатур
в СКД в регистре накопления в виртуальной таблице нужно два необязательных параметрах используется Склад и номенклатура независимо друг от друга. дай пример кода
В СКД для виртуальной таблицы регистра накопления с двумя необязательными параметрами — «Склад» и «Номенклатура», которые могут использоваться независимо, нужно оформить параметры так, чтобы фильтрация применялась только если параметр задан. Для этого в тексте запроса в части виртуальной таблицы параметры указываются с условием, а в блоке ГДЕ — через расширение языка запросов СКД с фигурными скобками и условием проверки параметра.
Пример оформления запроса:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
ВЫБРАТЬ | Остатки.Номенклатура, | Остатки.Склад, | Остатки.КоличествоОстаток |ИЗ | РегистрНакопления.ТоварыНаСкладах.Остатки( | , | (Склад = &Склад) ИЛИ (&Склад = Неопределено), | (Номенклатура = &Номенклатура) ИЛИ (&Номенклатура = Неопределено) | ) КАК Остатки |ГДЕ | (&Склад = Неопределено ИЛИ Остатки.Склад = &Склад) | И (&Номенклатура = Неопределено ИЛИ Остатки.Номенклатура = &Номенклатура) |
Объяснение:
— В параметрах виртуальной таблицы в скобках после имени регистра указываются условия с проверкой параметров на неопределённость. Если параметр не задан (Неопределено), условие по нему не применяется.
— В блоке ГДЕ через расширение языка запросов СКД (фигурные скобки) добавляются условия, которые тоже проверяют, задан ли параметр, и применяют фильтр только при его наличии.
— Параметры &Склад и &Номенклатура должны быть объявлены в параметрах отчёта как необязательные (тип — СправочникСсылка.Склад и СправочникСсылка.Номенклатура соответственно).
Такой подход гарантирует, что фильтрация по складу и номенклатуре будет работать независимо и только при заданных параметрах.