Имя: Пароль:
1C
1С v8
Условие на выбор в запросе для отчета СКД.
0 lirt82
 
04.02.26
08:10
Всем привет, есть самописный отчет на СКД, необходимо сделать так чтобы у пользователя был выбор параметров. Формировать отчет по периоду документов или по конкретному документу реализации. Как реализовать в запросе или где?
ВЫБРАТЬ
    РеализацияТоваровУслуг.Ссылка КАК ДокРеализации,
    РеализацияТоваровУслуг.Контрагент КАК Контрагент
ПОМЕСТИТЬ ВТ_Реализации
ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
ГДЕ
    РеализацияТоваровУслуг.Проведен
    И РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНач И &ДатаКон
    И РеализацияТоваровУслуг.Ссылка = &ДокументРеализации
1 Ненавижу 1С
 
гуру
04.02.26
08:14
И ВЫБОР КОГДА &ОтборПоДокументу ТОГДА РеализацияТоваровУслуг.Ссылка = &ДокументРеализации
ИНАЧЕ РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНач И &ДатаКон
    КОНЕЦ
2 toypaul
 
гуру
04.02.26
08:18
ГДЕ
    РеализацияТоваровУслуг.Проведен
{ГДЕ
    РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНач И &ДатаКон}
{ГДЕ   РеализацияТоваровУслуг.Ссылка = &ДокументРеализации}

так правильно, но можно скомбинировать по ИЛИ. не знаю нужно это или категорически нет.
первые скобки еще можно разделить на каждую дату (если одна из них не будет задана)
3 Ненавижу 1С
 
гуру
04.02.26
08:23
(2) тогда проще отборами делать, чем вот это все городить
4 toypaul
 
гуру
04.02.26
08:41
(3) в этом случае может быть не проще
5 lirt82
 
04.02.26
09:13
(2) при таком запросе почему-то выдает все документы игнорируя параметр ДокументРеализации, а если период установить то отрабатывает нормально.
https://iimg.su/i/YTARX8
6 toypaul
 
гуру
04.02.26
09:25
(5) зачем в этой консоли выполнять? которая скорее всего не понимает {}
7 lirt82
 
04.02.26
09:32
(6) запрос поместил в СКД, в режиме предприятия если указать период то данные есть, а если указать документ реализации то отчет пустой.
8 lirt82
 
04.02.26
10:14
(7) все отбой работает как надо))
Закон Брукера: Даже маленькая практика стоит большой теории.