Если П_ВидСравненияОрганизация = ВидСравнения.Равно Тогда
ЗапросВидСравнения = " = &П_Организация"
ИначеЕсли П_ВидСравненияОрганизация = ВидСравнения.НеРавно Тогда
ЗапросВидСравнения = " <> &П_Организация"
ИначеЕсли П_ВидСравненияОрганизация = ВидСравнения.ВСписке Тогда
ЗапросВидСравнения = " В (&П_Организация)"
ИначеЕсли П_ВидСравненияОрганизация = ВидСравнения.НеВСписке Тогда
ЗапросВидСравнения = " НЕ В (&П_Организация)"
Иначе
ЗапросВидСравнения = "";
КонецЕсли;
ТекстЗапроса =
"ВЫБРАТЬ
| ПодразделенияОрганизаций.Ссылка КАК Подразделение
|ИЗ
| Справочник.ПодразделенияОрганизаций КАК ПодразделенияОрганизаций";
Если НЕ (ЗапросВидСравнения = "") И П_ОтборОрганизация Тогда
ТекстЗапроса = ТекстЗапроса + "
|ГДЕ
| ПодразделенияОрганизаций.Владелец " + ЗапросВидСравнения;
КонецЕсли;
Запрос = Новый Запрос;
Запрос.Текст = ТекстЗапроса;
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший