Имя: Пароль:
1C
1С v8
Как лучше реализовать параметр запроса по условию
0 formista2000
 
24.09.21
10:10
День добрый!
Есть запрос на СКД, допустим, по реализациям с параметрами - НачПериод и КонПериод.
Как лучше доработать его так, чтобы периоды выбирались либо у реализаций (как сейчас) либо у заказов, на основании которых эти реализации.
Менять текст запроса динамически очень не хочется.
1 yzimin
 
24.09.21
10:11
Какая-то галка будет, по которой будет определяться это?
2 formista2000
 
24.09.21
10:12
(1) Да вот не знаю - галку (параметр) делать или ещё один период, наверное ещё один период будет очевиднее...
3 formista2000
 
24.09.21
11:04
Ура! Я сделал! Я молодец! ))

ВЫБОР
            КОГДА &ПресейлРеализация = 1
                ТОГДА ЗапросПресейл.Дата
            КОГДА &ПресейлРеализация = 2
                ТОГДА РеализацияТоваровУслуг.Ссылка.Дата
        КОНЕЦ МЕЖДУ НАЧАЛОПЕРИОДА(&НачалоПериода, ДЕНЬ) И КОНЕЦПЕРИОДА(&КонецПериода, ДЕНЬ)

Параметр выбирается из списка
4 Конструктор1С
 
24.09.21
11:13
(3) какую-то хрень ты сделал. Во-первых не передавай в запрос

НАЧАЛОПЕРИОДА(&НачалоПериода, ДЕНЬ) И КОНЕЦПЕРИОДА(&КонецПериода, ДЕНЬ)

вычисляй сразу начало и конец дня в параметрах запроса. Во-вторых вот это "РеализацияТоваровУслуг.Ссылка.Дата" замени на "РеализацияТоваровУслуг.Дата". В третьих переделай запрос на объединение

ВЫБРАТЬ
...
ГДЕ
...
&ПресейлРеализация = 2
И ЗапросПресейл.Дата МЕЖДУ &НачалоПериода И &КонецПериода

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
...
ГДЕ
...
&ПресейлРеализация = 2
И РеализацияТоваровУслуг.Дата МЕЖДУ &НачалоПериода И &КонецПериода