|
"Вложенное" условие в запросе
| ☑ |
0
lEvGl
гуру
12.03.13
✎
14:37
|
Доброго здоровья всем
Такой вопрос про запрос:
Выбрать
Документ.Ссылка,
Документ.Дата,
...
Где
Документ.Проведен = ИСТИНА
И Документ.Статус <> ЗНАЧЕНИЕ(Перечисление.Статусы.Выполнена)
И (Документ.Подразделение = &Подразделение
ИЛИ Документ.ПодразделениеЗаказчик = &ПодразделениеЗаказчик)
тут хочется исключить из результата те документы, у которых статус = "отклонен" и РазницаДат(Документ.Дата, &ТекущаяДата, День) > 7.
То есть исключить по дате, но только те у которых конкретный статус.
В объектной модели:
Если ТекущаяДата() - Документ.Дата > 604800(Неделя) И Документ.Статус = Перечисления.Статусы.Отклонен Тогда
Результат.Исключить();
КонецЕсли;
Как в запросе так сделать?
|
|
1
ilkoder
12.03.13
✎
14:38
|
Собрать из нескольких временных таблиц
|
|
2
Maxus43
12.03.13
✎
14:39
|
Выбор Когда Тогда Иначе Конец
|
|
3
Wobland
12.03.13
✎
14:39
|
И НЕ Статус ИЛИ (РазностьДат() И Статус)
|
|
4
Defender aka LINN
12.03.13
✎
14:40
|
НЕ (статус = "отклонен" и РазностьДат(Документ.Дата, &ТекущаяДата, День) > 7), не?
|
|
5
sapphire
12.03.13
✎
14:41
|
РазницаДат(Документ.Дата, &ТекущаяДата, День) > 7
Равносильно Документ.Дата<=&НеделюНазад
|
|
6
sapphire
12.03.13
✎
14:43
|
Где
Документ.Проведен = ИСТИНА
И Документ.Статус <> &СтатусыВыполнена
И (Документ.Подразделение = &Подразделение
ИЛИ Документ.ПодразделениеЗаказчик = &ПодразделениеЗаказчик)
И НЕ(Документ.Статус = &СтатусыОтклонен И Документ.Дата<=&НеделюНазад)
|
|
7
lEvGl
гуру
12.03.13
✎
15:02
|
всем спасибо за ответы
(1) - муторно, условие то не сложное вроде
(2) - не пойдет
(3) - тогда ни одна с вылавливаемым статусом не попадет
(4)(5)(6) - спасибо, есть такое дело, условие то несложное, затроил что то
|
|
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой