Логические условия

1. BackinSoda 23.02.18 15:53 Сейчас в теме
Увидел в условии "ГДЕ" одного запроса условие
(Док.Дата >= НАЧАЛОПЕРИОДА(&ДатаОтчета, МЕСЯЦ)
		И Док.Дата <= КОНЕЦПЕРИОДА(&ДатаОтчета, МЕСЯЦ)) = ЛОЖЬ
	ИЛИ &Парам

и появилась необходимость* переделать его в "выражение попроще", так вот появилось это:
ВЫБОР
		КОГДА Док.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&ДатаОтчета, МЕСЯЦ) И КОНЕЦПЕРИОДА(&ДатаОтчета, МЕСЯЦ)
			ТОГДА ЛОЖЬ
		ИНАЧЕ ИСТИНА
	КОНЕЦ
	ИЛИ &Парам

тождественны ли два этих условия, или всё же упустил что-то ?
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
4. ark.zv 14 23.02.18 16:41 Сейчас в теме
6. BackinSoda 23.02.18 16:56 Сейчас в теме
(4) Спасибо
(5) Попроще в том плане, что избавляемся от логических условий в выражении фильтрации (работает на 8.3.6 и выше только)
7. Infector 199 23.02.18 18:17 Сейчас в теме
(6) На мой вкус из вполне читабельного выражения, которое просится преобразоваться разве что к такому:

НЕ (Док.Дата >= НАЧАЛОПЕРИОДА(&ДатаОтчета, МЕСЯЦ)
И Док.Дата <= КОНЕЦПЕРИОДА(&ДатаОтчета, МЕСЯЦ))
ИЛИ &Парам


сделали нечто трудночитаемое. Вообще фразам
ВЫБОР КОГДА ... ИНАЧЕ .... КОНЕЦ
не место в блоке ГДЕ, т.к. воспринимается очень тяжело по сравнению с логическими выражениями и полностью ими заменяется по функциональности.
2. Pavel Rodinchenko 23.02.18 16:00 Сейчас в теме
3. BackinSoda 23.02.18 16:03 Сейчас в теме
(2) по идее так ) хотелось бы, что бы еще кто-то подтвердил )
5. Infector 199 23.02.18 16:53 Сейчас в теме
Вроде тождественны, но насчет того, что тут попроще большой вопрос
8. herfis 498 23.02.18 18:45 Сейчас в теме
А нафига тут ВЫБОР?
По идее, должно и так работать (но не пробовал):
&Парам
ИЛИ
НЕ (Док.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&ДатаОтчета, МЕСЯЦ) И КОНЕЦПЕРИОДА(&ДатаОтчета, МЕСЯЦ))
Infector; user774630; +2 Ответить
9. Infector 199 23.02.18 22:19 Сейчас в теме
(8)кто- то решил, что выбор понятнее
11. ark.zv 14 25.02.18 19:15 Сейчас в теме
(8) Использовать в "ГДЕ" логическое условие "ИЛИ" не очень. И вообще, мне кажется, использование выражения "ВЫБОР" более правильно, нежели условий "И, ИЛИ".
12. herfis 498 26.02.18 10:18 Сейчас в теме
(11)
Использовать в "ГДЕ" логическое условие "ИЛИ" не очень

(11)
мне кажется, использование выражения "ВЫБОР" более правильно

Мы, вроде, не парфюмы тут выбираем. Аргументируй.
Понятно, что если удается обойтись только простыми условиями на равенство, то это кул. Но в сабжевом запросе выбирать не приходится.
А насчет ВЫБОР я вообще в недоумении и весь открыт для новых знаний. Рекомендации использовать ВЫБОР в ГДЕ от человека, который не советует использовать ИЛИ - это для меня разрыв шаблона.
14. herfis 498 26.02.18 14:50 Сейчас в теме
(13) И где там про ВЫБОР? Что он предпочтительнее ИЛИ?
15. ark.zv 14 26.02.18 14:56 Сейчас в теме
(14)
Про условие ИЛИ в ГДЕ в (13)

Насчет ВЫБОР
(11)
мне кажется
16. herfis 498 26.02.18 15:56 Сейчас в теме
(15) Понятно.
На самом деле, ВЫБОР создает еще худшие условия для попадания в индекс, чем ИЛИ. Поэтому желательно кроме ВЫБРАТЬ его нигде не использовать.
10. kild 89 24.02.18 16:03 Сейчас в теме
17. tinkerbell 26.02.18 17:53 Сейчас в теме
Еще вариант:

Док.Дата<НАЧАЛОПЕРИОДА(&ДатаОтчета, МЕСЯЦ) ИЛИ Док.Дата>КОНЕЦПЕРИОДА(&ДатаОтчета, МЕСЯЦ) ИЛИ &Парам
Оставьте свое сообщение
Вакансии
Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)

Программист 1С
Москва
зарплата от 250 000 руб.
Полный день

Программист 1C
Волгоград
зарплата от 200 000 руб.
Полный день

Аналитик
Санкт-Петербург
зарплата от 200 000 руб. до 250 000 руб.
Полный день