Имя: Пароль:
1C
1С v8
СКД: Как в отчёте разрешить не заполнять фильтр?
0 Morluginn
 
03.04.21
10:12
Пытаюсь освоить СКД, мой уровень — ноль. Делаю простой отчёт с запросом по единственной таблице документа, без кода.

В запрос добавляю условие (ГДЕ) по реквизиту документа.
На вкладке "Параметры" в Схеме КД флажок "Запрещать незаполненные значения" снят.
Там же, "Использование" стоит "Авто".

В результате получаю следующее поведение.
В настройках отчёта в режиме Предприятия напротив этого параметра есть флажок (использовать его или нет).
Если этот флажок снять, ругается "Не задано значение параметра..." и не формирует отчёт.
Если флажок поставить, но не выбирать само значение, выходит пустой отчёт, т.к., видимо, фильтрует по пустому значению.

Вопрос: как настроить так, чтобы пользователь мог использовать фильтр опционально?
1 Chameleon1980
 
03.04.21
10:22
скобки
2 vicof
 
03.04.21
10:37
Добавляй не в где, а в отборы скд
3 Morluginn
 
03.04.21
11:40
(1) Условие ГДЕ в фигурных скобках в запросе? Попробовал, ничего не изменилось. Нюанс в том, что таких опциональных условий несколько. Каждое из них должно быть отдельным "ГДЕ", в отдельных фигурных скобках? Тогда синтаксис не очень ясен.

(2) Насколько понимаю, это просто другой способ? Скобки тоже должны работать?
4 Mikeware
 
03.04.21
11:49
(3) пробуй потыкаться в конструкторе запроса в разделе компоновка данных.
или поищи урок по "расширению языка запросов для СКД" (есть и текстом, и видео).
5 Фрэнки
 
03.04.21
11:53
(3) когда через отборы скд - это там где вкладка в настройках схемы - получаешь в набор данных запросом вообще всё, а отбор из настроек этот запрос скомпонует сам. В этом случае никаких скобок не нужно.

фигурная скобка работает, когда ты не используешь параметр. Т.е. вот установил, что параметр в настройки вынесен, а при этот с него снята галочка использования. Вот тут и выручает фигурная скобка.
Посмотри примеры внутри типовых - там можно увидеть, что довольные приличное количество строк запроса скобками обставлено, но именно внутри этих больших кусков сидят потенциально неиспользуемые параметры.
6 Morluginn
 
03.04.21
12:11
(5) "параметр в настройки вынесен, а при этом с него снята галочка использования" — это мой случай и есть.
Типовых у меня нет под рукой, у меня учебная версия.
Ошибок в запросе нет, конструктор на него не ругается. Но поведение не меняется, параметр как будто считается обязательным.

ВЫБРАТЬ РАЗРЕШЕННЫЕ
    Бюджет.Ссылка,
    Бюджет.Автор,
    Бюджет.Сторона,
    Бюджет.Итерация,
    Бюджет.ВидДеятельности,
    Бюджет.Фирма,
    Бюджет.Статья,
    Бюджет.Проект,
    Бюджет.Подразделение,
    Бюджет.Местоположение,
    Бюджет.Контрагент,
    Бюджет.Номенклатура,
    Бюджет.Сотрудник,
    Бюджет.Валюта,
    Бюджет.Сумма
ИЗ
    Документ.Бюджет КАК Бюджет
ГДЕ
    Бюджет.ПометкаУдаления = ЛОЖЬ
    И Бюджет.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&ДатаНач, ДЕНЬ) И КОНЕЦПЕРИОДА(&ДатаКон, ДЕНЬ)
    И Бюджет.Валюта = &Валюта
    И Бюджет.Сторона = &Сторона
{ГДЕ
    (Бюджет.Автор = &Автор
            И Бюджет.ВидДеятельности = &ВидДеятельности
            И Бюджет.Фирма = &Фирма
            И Бюджет.Проект = &Проект
            И Бюджет.Подразделение = &Подразделение
            И Бюджет.Местоположение = &Местоположение
            И Бюджет.Контрагент = &Контрагент
            И Бюджет.Номенклатура = &Номенклатура
            И Бюджет.Сотрудник = &Сотрудник)}
7 Mikeware
 
03.04.21
12:41
(6){ГДЕ
    Бюджет.Автор,
    Бюджет.ВидДеятельности,
    Бюджет.Фирма,
    Бюджет.Проект,
    Бюджет.Подразделение,
    Бюджет.Местоположение,
    Бюджет.Контрагент,
    Бюджет.Номенклатура,
    Бюджет.Сотрудник}
8 Morluginn
 
03.04.21
12:59
(7) Спасибо! Кажется, работает. Теперь все эти поля нужно добавить в отборы на вкладке Схемы КД "Настройки" - "Отчет" - "Отбор".
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший