Отбор контрагентов в отчете
Добрый день, в отчете есть два отбора, первый отбирает контрагентов, второй исключает контрагентов (если по ним не делать отбор он должен выводить всех контрагентов и тогда уже из этих исключаем вторым отбором) как мне сделать в первый отбор если я не выбираю контрагентов что бы он всех выводил, а то он ждет когда я выберу нужных, помогите пожалуйста
"ВЫБРАТЬ
| СчетНаОплатуПокупателю.ДатаОплаты КАК ДатаОплаты,
| СчетНаОплатуПокупателю.СуммаДокумента КАК СуммаДокумента,
| СчетНаОплатуПокупателю.Контрагент,
| СчетНаОплатуПокупателю.Ссылка,
| СчетНаОплатуПокупателю.Комментарий
|ИЗ
| Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю
|ГДЕ
| СчетНаОплатуПокупателю.ДатаОплаты МЕЖДУ &ДатаНачала И &ДатаОкончания
| И НЕ СчетНаОплатуПокупателю.ПометкаУдаления
| И (СчетНаОплатуПокупателю.Контрагент В (&СписокКонтрагент)
| ИЛИ &ВсеКонтрагенты)
| И НЕ СчетНаОплатуПокупателю.Контрагент В (&СписокКонтрагентов)
|
|УПОРЯДОЧИТЬ ПО
| ДатаОплаты
|ИТОГИ
| СУММА(СуммаДокумента)
|ПО
| ОБЩИЕ,
| ДатаОплаты";
Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала);
Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания);
Запрос.УстановитьПараметр("СписокКонтрагент", Контрагент);
Запрос.УстановитьПараметр("ВсеКонтрагенты", Контрагент.ЗначениеЗаполнено());
Запрос.УстановитьПараметр("СписокКонтрагентов", Контрагент1);
Результат = Запрос.Выполнить();
ПоказатьПо теме из базы знаний
- Обработка «Восстановление состояния расчетов с контрагентами с отбором по контрагентам и договорам»
- Книга продаж с отбором по контрагентам для 1С:БП 3.0
- График платежей с отбором по контрагентам. УПП 1.3
- Групповое перепроведение с отбором по контрагентам, видам документов, ответственным
- Платежный календарь с отбором по контрагентам и формированием платежек для БП 3
Найденные решения
Формируй запрос пс условием:
примерно так
ТекстЗапроса = "ВЫБРАТЬ
| СчетНаОплатуПокупателю.ДатаОплаты КАК ДатаОплаты,
| СчетНаОплатуПокупателю.СуммаДокумента КАК СуммаДокумента,
| СчетНаОплатуПокупателю.Контрагент,
| СчетНаОплатуПокупателю.Ссылка,
| СчетНаОплатуПокупателю.Комментарий
|ИЗ
| Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю
|ГДЕ
| СчетНаОплатуПокупателю.ДатаОплаты МЕЖДУ &ДатаНачала И &ДатаОкончания
| И НЕ СчетНаОплатуПокупателю.ПометкаУдаления
"
Если Проверяешь указаны контрагенты Тогда
ТекстЗапроса = ТекстЗапроса + "Запрос.УстановитьПараметр("СписокКонтрагент", Контрагент);"
КонецЕсли
ТекстЗапроса = ТекстЗапроса + "
|УПОРЯДОЧИТЬ ПО
| ДатаОплаты
|ИТОГИ
| СУММА(СуммаДокумента)
|ПО
| ОБЩИЕ,
| ДатаОплаты";
"
Показатьпримерно так
Остальные ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
|ГДЕ
| СчетНаОплатуПокупателю.ДатаОплаты МЕЖДУ &ДатаНачала И &ДатаОкончания
| И НЕ СчетНаОплатуПокупателю.ПометкаУдаления
| И %УсловиеПоКонтрагентам%
Вот твой запрос со всеми условиями:
Запрос.Текст = СтрЗаменить(Запрос.Текст, "%УсловиеПоКонтрагентам%","(СчетНаОплатуПокупателю.Контрагент В (&СписокКонтрагент) ИЛИ &ВсеКонтрагенты) И НЕ СчетНаОплатуПокупателю.Контрагент В (&СписокКонтрагентов)")
Проверяешь списки контрагентов и в зависимости от их состояния заменяешь в тексте запроса на нужные условия.
Если вообще хочешь отключить, пишешь просто
Запрос.Текст = СтрЗаменить(Запрос.Текст, "%УсловиеПоКонтрагентам%", ИСТИНА)
| СчетНаОплатуПокупателю.ДатаОплаты МЕЖДУ &ДатаНачала И &ДатаОкончания
| И НЕ СчетНаОплатуПокупателю.ПометкаУдаления
| И %УсловиеПоКонтрагентам%
Вот твой запрос со всеми условиями:
Запрос.Текст = СтрЗаменить(Запрос.Текст, "%УсловиеПоКонтрагентам%","(СчетНаОплатуПокупателю.Контрагент В (&СписокКонтрагент) ИЛИ &ВсеКонтрагенты) И НЕ СчетНаОплатуПокупателю.Контрагент В (&СписокКонтрагентов)")
Проверяешь списки контрагентов и в зависимости от их состояния заменяешь в тексте запроса на нужные условия.
Если вообще хочешь отключить, пишешь просто
Запрос.Текст = СтрЗаменить(Запрос.Текст, "%УсловиеПоКонтрагентам%", ИСТИНА)
Формируй запрос пс условием:
примерно так
ТекстЗапроса = "ВЫБРАТЬ
| СчетНаОплатуПокупателю.ДатаОплаты КАК ДатаОплаты,
| СчетНаОплатуПокупателю.СуммаДокумента КАК СуммаДокумента,
| СчетНаОплатуПокупателю.Контрагент,
| СчетНаОплатуПокупателю.Ссылка,
| СчетНаОплатуПокупателю.Комментарий
|ИЗ
| Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю
|ГДЕ
| СчетНаОплатуПокупателю.ДатаОплаты МЕЖДУ &ДатаНачала И &ДатаОкончания
| И НЕ СчетНаОплатуПокупателю.ПометкаУдаления
"
Если Проверяешь указаны контрагенты Тогда
ТекстЗапроса = ТекстЗапроса + "Запрос.УстановитьПараметр("СписокКонтрагент", Контрагент);"
КонецЕсли
ТекстЗапроса = ТекстЗапроса + "
|УПОРЯДОЧИТЬ ПО
| ДатаОплаты
|ИТОГИ
| СУММА(СуммаДокумента)
|ПО
| ОБЩИЕ,
| ДатаОплаты";
"
Показатьпримерно так
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)