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

Не работают отборы в СКД

Автор Nosferatu112, 30 июн 2023, 11:25

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

Nosferatu112

Всем привет, не работает отбор по количеству в СКД уже что только не птался сделать так и не понял в чём причина
ВЫБРАТЬ
СтатусыАдресовДоставокСрезПоследних.АдресДоставки КАК АдресДоставки,
СтатусыАдресовДоставокСрезПоследних.Статус КАК Статус
ПОМЕСТИТЬ ВТ_СтатусыАдресовДоставок
ИЗ
РегистрСведений.СтатусыАдресовДоставок.СрезПоследних КАК СтатусыАдресовДоставокСрезПоследних

ИНДЕКСИРОВАТЬ ПО
АдресДоставки
;

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

СГРУППИРОВАТЬ ПО
ПереносыЗаказов.Период,
ПереносыЗаказов.ВидПереноса,
ВТ_СтатусыАдресовДоставок.Статус,
ПереносыЗаказов.ЗаказКлиента

ОБЪЕДИНИТЬ ВСЕ

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

СГРУППИРОВАТЬ ПО
ПереносыЗаказов.Период,
ПереносыЗаказов.ВидПереноса,
ВТ_СтатусыАдресовДоставок.Статус,
ПереносыЗаказов.ЗаказКлиента

ОБЪЕДИНИТЬ ВСЕ

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

СГРУППИРОВАТЬ ПО
ПереносыЗаказов.Период,
ПереносыЗаказов.ВидПереноса,
ВТ_СтатусыАдресовДоставок.Статус,
ПереносыЗаказов.ЗаказКлиента

ОБЪЕДИНИТЬ ВСЕ

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

СГРУППИРОВАТЬ ПО
ПереносыЗаказов.Период,
ПереносыЗаказов.ВидПереноса,
ВТ_СтатусыАдресовДоставок.Статус,
ПереносыЗаказов.ЗаказКлиента

ОБЪЕДИНИТЬ ВСЕ

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

СГРУППИРОВАТЬ ПО
ПереносыЗаказов.Период,
ПереносыЗаказов.ВидПереноса,
ВТ_СтатусыАдресовДоставок.Статус,
ПереносыЗаказов.ЗаказКлиента

ОБЪЕДИНИТЬ ВСЕ

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

СГРУППИРОВАТЬ ПО
ПереносыЗаказов.Период,
ВТ_СтатусыАдресовДоставок.Статус,
ПереносыЗаказов.ЗаказКлиента

ОБЪЕДИНИТЬ ВСЕ

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

СГРУППИРОВАТЬ ПО
ЗаказКлиента.Дата,
ЗаказКлиента.ПричинаОтменыЗаказа,
ВТ_СтатусыАдресовДоставок.Статус,
ЗаказКлиента.Ссылка,
ЕСТЬNULL(ЗаказКлиента.ПричинаОтменыЗаказа.Родитель.Наименование, "Без группы")

ОБЪЕДИНИТЬ ВСЕ

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

СГРУППИРОВАТЬ ПО
ЗаказКлиента.Дата,
ВТ_СтатусыАдресовДоставок.Статус,
ЗаказКлиента.Ссылка
Запрос СКД
Screenshot_1.png
Схемма отчета
когда ставлю в отборе 1 отчет выводиться так как должен выводиться весь, любое дргое число и отчет пустой

Максим75

Nosferatu112, ну так правильно, в запросе колво равно 1, любое другое при отборе выдает пустым результат.
смотрите 5 строчку везде где объединть все.
там везде 1 проставлена.

LexaK

Nosferatu112, у вас все отлично и правильно работает!
для проверки выведите в детальные записи Количество!
и вы увидите там одни еденички (1)
вот по ним вы и отбираете когда ставите отбор Количество = 1
при любом другом поличестве получаете пустую таблицу, так как других количеств нет!
(запрос однако менять/переделывать надо)
если помогло нажмите: Спасибо!

Nosferatu112

Аотбор после формирования таблицы можно как то замутить? Или обязательно запрос переписывать?

Максим75

Nosferatu112, если у Вас в наборе данных в поле кол-во стоит 1, то что Вы мутить собрались?
конечно только набор данных менять.

Nosferatu112

Господа как правильно переделать этот чёртов запрос я уже всю башку сломал, я убирал заказ клиента что бы сруппировать таблицу и в принципе получаеться отбор работает но тогда расшифровка в заказ пропадает а она должна быть, может кто чего подскажет


Максим75

Nosferatu112, Да что же здесь не ясного то?
там где 1 стоят в конструкции "Объединить все" просто для разных видов документов проставьте разные числа и тогда отбор по нужному числу будет выводить только эти документы.
а что Вам вообще от запроса надо, только Вы и знаете, я, например, миелофона не имею.

Nosferatu112

Максим75, Это просто не мой отчет с переделкой всегда как то сложно нежели когда делаешь с нуля, по сути то запрос выполняет функции которые должен, просто ещё нужно что бы можно было по клику на число в отчете смотреть какие это заказы это я сделал и что бы был отбор по кол-ву который всё ни как не хочет работать

LexaK

у вас в запросе есть Колонка КоличествоЗаказов - может это то что надо?
посмотрите в настройках в детальных записях выводится ли она?
Есть ли она в Ресурсах

и попробуйте по ней отбор делать!
если помогло нажмите: Спасибо!

Максим75

Nosferatu112, у Вас во всех вариантах число 1 прописывается в Количество.
Я уже не знаю, как объяснить, что если Вы для разных случаев Вы пропишите разное число в Количество, то заработает.
Ну вот что же не понятно?

Теги:

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

Рейтинг@Mail.ru

Поиск