Условие в запросе

1. user1459027 24.08.21 14:33 Сейчас в теме
В условии запроса пишу

 ВЫБОР 
	КОГДА ВТ.Наименование ЕСТЬ NULL ТОГДА 
	ДОБАВИТЬКДАТЕ(ВТ.ДатаОкончания , День, -148)
		ИНАЧЕ ДОБАВИТЬКДАТЕ(ВТ.ДатаОкончания , День, -1)
КОНЕЦ	



Выдает ошибку: Операция не разрешена в предложении <<?>>ВЫБОР
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. BuryMeInVegas 24.08.21 14:51 Сейчас в теме
(1)
ВЫБОР
КОГДА ВТ.Наименование = "" ТОГДА
ДОБАВИТЬКДАТЕ(ВТ.ДатаОкончания , День, -148)
ИНАЧЕ ДОБАВИТЬКДАТЕ(ВТ.ДатаОкончания , День, -1)
КОНЕЦ
succub1_5; +1 Ответить
9. starik-2005 3080 24.08.21 15:09 Сейчас в теме
(1)
Выдает ошибку: Операция не разрешена в предложении >ВЫБОР
Ну а дальше-то в ГДЕ что пишите? Нужно типа "... КОНЕЦ > КакаяТоДата"...
2. SlavaKron 24.08.21 14:39 Сейчас в теме
В условии должно быть логическое выражение, возвращающее ЛОЖЬ или ИСТИНА, у вас выражение не логическое.
deathogre; FatPanzer; spacecraft; succub1_5; starik-2005; +5 1 Ответить
6. ixijixi 1903 24.08.21 14:56 Сейчас в теме
(2)
Прикрепленные файлы:
7. FatPanzer 24.08.21 15:04 Сейчас в теме
(6) Если автор имеет ввиду именно условие запроса (секцию ГДЕ, например) - то SlavaKron прав, а вы нет (любое выражение в ТОГДА и ИНАЧЕ должно возвращать Булево).
А вот если автор под условием запроса имеет ввиду логический оператор в поле запроса - то наоборот.

Но есть еще и третий вариант, смешанный.
10. spacecraft 24.08.21 17:11 Сейчас в теме
(6) логические операторы это не логическое выражение. Результатом логического выражения должен получиться Булев тип для использования в условии запроса..
А в условии запроса должно быть логическое выражение возвращающее булев тип.
deathogre; +1 Ответить
11. ixijixi 1903 25.08.21 00:30 Сейчас в теме
(10) (2) Да, точно, это же условие, невнимательно прочел
4. homer_ 79 24.08.21 14:54 Сейчас в теме
5. ixijixi 1903 24.08.21 14:55 Сейчас в теме
Предполагаю, что ВТ.ДатаОкончания имеет тип не дата
8. FatPanzer 24.08.21 15:05 Сейчас в теме
(5) Предполагаю, что если ВТ.Наименование ЕСТЬ NULL, то и ВТ.ДатаОкончания тоже ЕСТЬ NULL
succub1_5; +1 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот