Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
18 апр 2024, 19:56

Помогите с отбором !!!

Автор claberRZN, 12 ноя 2015, 13:49

0 Пользователей и 1 гость просматривают эту тему.

claberRZN

Как сделать если на форме отбор "Организации " пустой, то отбирались все организации , а если заполнен то только одну !!!!

Дерево = Новый ДеревоЗначений;
ЗапросПоступление = Новый Запрос;
ЗапросПоступление.УстановитьПараметр("НачалоПериода",НачалоПериода);
ЗапросПоступление.УстановитьПараметр("КонецПериода",КонецДня(КонецПериода));
ЗапросПоступление.УстановитьПараметр("Организация",Организации );

ЗапросПоступление.Текст = ("ВЫБРАТЬ РАЗЛИЧНЫЕ
| ПоступлениеТоваровУслугТовары.Ссылка.Ссылка,
| ПоступлениеТоваровУслугТовары.Ссылка.Дата КАК Дата,
| ПоступлениеТоваровУслугТовары.Ссылка.Номер,
| ПоступлениеТоваровУслугТовары.Ссылка.СуммаДокумента,
| ПоступлениеТоваровУслугТовары.Ссылка.Контрагент,
| ПоступлениеТоваровУслугТовары.Ссылка.Организация
|ИЗ
| Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
|ГДЕ
| ПоступлениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &НачалоПериода И &КонецПериода
| И ПоступлениеТоваровУслугТовары.Ссылка.Проведен = ИСТИНА
| И ПоступлениеТоваровУслугТовары.Ссылка.Организация = &Организация
|
|УПОРЯДОЧИТЬ ПО
| Дата"
);


Дерево = ЗапросПоступление.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
ЭлементыФормы.Дерево.ГоризонтальныеЛинии = Истина;ЭлементыФормы.Дерево.ВертикальныеЛинии = Истина;
ЭлементыФормы.Дерево.СоздатьКолонки();

claberRZN

Разобрался !! :zebzdr:


И (&Организация = Значение(Справочник.Организации.ПустаяСсылка) или  ВозвратТоваровПоставщикуТовары.Ссылка.Организация = &Организация)

vitasw

Запрос = Новый Запрос;
пТекст =
"ВЫБРАТЬ
| ПоступлениеТоваровУслуг.Ссылка,
| ПоступлениеТоваровУслуг.Номер,
| ПоступлениеТоваровУслуг.Дата
|ИЗ
| Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
|ГДЕ
| ПоступлениеТоваровУслуг.Проведен
| <<УсловиеОрганизация>>> ";

Если ЗначениеЗаполнено(Организация) Тогда
пТекст=СтрЗаменить(пТекст,"<<УсловиеОрганизация>>>","И ПоступлениеТоваровУслуг.Организация = &Организация");
Запрос.УстановитьПараметр("Организация", Организация);
Иначе
пТекст=СтрЗаменить(пТекст,"<<УсловиеОрганизация>>>","");
КонецЕсли;

Запрос.Текст=пТекст;

ls600

можно и так в запросе указать
| ГДЕ
| ПоступлениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &НачалоПериода И &КонецПериода
| И ПоступлениеТоваровУслугТовары.Ссылка.Проведен = ИСТИНА
|   "+?(ЗначениеЗаполнено(Организация) , " И  ПоступлениеТоваровУслугТовары.Ссылка.Организация = &Организация","")+";

......
запрос.УстановитьПараметр("Организация",Организация);

Похожие темы (5)

Рейтинг@Mail.ru

Поиск