Не применяется необязательное условие к запросу

1. tiger12 1 02.12.21 20:03 Сейчас в теме
Не применяется необязательное условие к запросу,
как сделать, чтобы отбор по подразделению работал и оставался не обязательным?


ВЫБРАТЬ
	КадроваяИсторияСотрудниковИнтервальный.Сотрудник КАК Сотрудник,
	КадроваяИсторияСотрудниковИнтервальный.ФизическоеЛицо КАК ФизическоеЛицо,
	КадроваяИсторияСотрудниковИнтервальный.ФизическоеЛицо.Код КАК КодФизЛица,
	1 КАК Сумма,
	КадроваяИсторияСотрудниковИнтервальный.Подразделение КАК Подразделение
ИЗ
	РегистрСведений.КадроваяИсторияСотрудниковИнтервальный КАК КадроваяИсторияСотрудниковИнтервальный
ГДЕ
	КадроваяИсторияСотрудниковИнтервальный.ДатаОкончания > &КонецМесяца
	И КадроваяИсторияСотрудниковИнтервальный.Организация = &Организация
{ГДЕ
	(КадроваяИсторияСотрудниковИнтервальный.Подразделение = &Подразделение) КАК Поле2}
Показать
По теме из базы знаний
Найденные решения
5. EVKash 16 02.12.21 20:39 Сейчас в теме
(3) Фигурные скобки для построителя/компоновщика. В обычном запросе они игнорируются. Меняйте текст запроса програмно.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. ErshKUS 3 02.12.21 20:15 Сейчас в теме
А так?
ВЫБРАТЬ
КадроваяИсторияСотрудниковИнтервальный.Сотрудник КАК Сотрудник,
КадроваяИсторияСотрудниковИнтервальный.ФизическоеЛицо КАК ФизическоеЛицо,
КадроваяИсторияСотрудниковИнтервальный.ФизическоеЛицо.Код КАК КодФизЛица,
1 КАК Сумма,
КадроваяИсторияСотрудниковИнтервальный.Подразделение КАК Подразделение
ИЗ
РегистрСведений.КадроваяИсторияСотрудниковИнтервальный КАК КадроваяИсторияСотрудниковИнтервальный
ГДЕ
КадроваяИсторияСотрудниковИнтервальный.ДатаОкончания > &КонецМесяца
И КадроваяИсторияСотрудниковИнтервальный.Организация = &Организация
{ГДЕ
КадроваяИсторияСотрудниковИнтервальный.ДатаОкончания > &КонецМесяца
И КадроваяИсторияСотрудниковИнтервальный.Организация = &Организация
И КадроваяИсторияСотрудниковИнтервальный.Подразделение = &Подразделение} 
Показать
3. tiger12 1 02.12.21 20:25 Сейчас в теме
(2)
КадроваяИсторияСотрудниковИнтервальный.ДатаОкончания > &КонецМесяца
И КадроваяИсторияСотрудниковИнтервальный.Организация = &Организация


Ну и так тоже ничего не поменялось.
Мне кажется, 1С видит перед экраном меня и смеется
4. ErshKUS 3 02.12.21 20:32 Сейчас в теме
(3) А что выдает, какую то ошибку, или просто не фильтрует?

А если условие вообще вынести из фигурных скобок, вроде такого и не устанавливать параметр?
ВЫБРАТЬ
КадроваяИсторияСотрудниковИнтервальный.Сотрудник КАК Сотрудник,
КадроваяИсторияСотрудниковИнтервальный.ФизическоеЛицо КАК ФизическоеЛицо,
КадроваяИсторияСотрудниковИнтервальный.ФизическоеЛицо.Код КАК КодФизЛица,
1 КАК Сумма,
КадроваяИсторияСотрудниковИнтервальный.Подразделение КАК Подразделение
ИЗ
РегистрСведений.КадроваяИсторияСотрудниковИнтервальный КАК КадроваяИсторияСотрудниковИнтервальный
ГДЕ
КадроваяИсторияСотрудниковИнтервальный.ДатаОкончания > &КонецМесяца
И КадроваяИсторияСотрудниковИнтервальный.Организация = &Организация
И КадроваяИсторияСотрудниковИнтервальный.Подразделение = &Подразделение
Показать
5. EVKash 16 02.12.21 20:39 Сейчас в теме
(3) Фигурные скобки для построителя/компоновщика. В обычном запросе они игнорируются. Меняйте текст запроса програмно.
7. tiger12 1 02.12.21 21:19 Сейчас в теме
6. ErshKUS 3 02.12.21 20:58 Сейчас в теме
Еще как вариант задавать всегда параметр, но пользователь может его не заполнить, и если это так, фильтр срабатывать не будет.
Запрос = Новый Запрос(
	"ВЫБРАТЬ
	|	КадроваяИсторияСотрудниковИнтервальный.Сотрудник КАК Сотрудник,
	|	КадроваяИсторияСотрудниковИнтервальный.ФизическоеЛицо КАК ФизическоеЛицо,
	|	КадроваяИсторияСотрудниковИнтервальный.ФизическоеЛицо.Код КАК КодФизЛица,
	|	1 КАК Сумма,
	|	КадроваяИсторияСотрудниковИнтервальный.Подразделение КАК Подразделение
	|ИЗ
	|	РегистрСведений.КадроваяИсторияСотрудниковИнтервальный КАК КадроваяИсторияСотрудниковИнтервальный
	|ГДЕ
	|	КадроваяИсторияСотрудниковИнтервальный.ДатаОкончания > &КонецМесяца
	|	И КадроваяИсторияСотрудниковИнтервальный.Организация = &Организация
	|	И ВЫБОР
	|			КОГДА КадроваяИсторияСотрудниковИнтервальный.Подразделение = ЗНАЧЕНИЕ(Справочник.ПодразделенияОрганизаций.ПустаяСсылка)
	|				ТОГДА ИСТИНА
	|			ИНАЧЕ КадроваяИсторияСотрудниковИнтервальный.Подразделение = &Подразделение
	|		КОНЕЦ");

Запрос.УстановитьПараметр("КонецМесяца", КонецМесяца);
Запрос.УстановитьПараметр("Организация", Организация);
Запрос.УстановитьПараметр("Подразделение", Подразделение);
Показать
Оставьте свое сообщение

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