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

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

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

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

Максим75

LexaK, да хочется отбор делать по Количеству, но во всех ветках стоит единица.
Естественно отбор будет только по единице, ну нет там другого ничего.

LexaK

Максим75, я предложил идею делать отбор по колонке КоличествоЗаказов (и проверить есть ли она вообще в отчете)
а просто Количество видимо планировалось использовать для подсчета количества по группе
(что там на закладке Ресурсы?)
если помогло нажмите: Спасибо!

Nosferatu112

LexaK, я убрал единицу и поставил на её место кол-во заказов в ресурсах эта строка есть но в результате всё равно везде единицы ну и соответственно отбор опять же не работает

Максим75

Nosferatu112, дайте еще раз текст запроса и напишите, по какому полю хотите делать отбор.

Nosferatu112

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

Nosferatu112

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Отборы: Статус адреса доставки(Уже был)
Количество(Нужно сделать)
Так же должна быть расшифровка на заказ клиента(Сделал)

Максим75

так количество же уже есть.
это количество документов, судя по коду запроса.
а какое количество надо?

если нужно количество различных документов, то поставьте КоличествоРазличных в агрегирующей функции.

Nosferatu112

Максим75, в том и соль что отбор до сих пор работает как прежде 1 формируеться обычный отчет любое другое число пустота, а на сколько я понимаю они хотят отбор если выставил в отборе 5 то отчет сформировался с пятёрками которые есть в таблице
ОПО.png

Максим75

Nosferatu112, погодите, так у Вас количество для отбора есть реквизит формы.
а как он связан с отбором СКД?

Nosferatu112

Максим75, В запрос то по прежнему выводятся единицы
ЗапросОПО.png

Теги:

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

Рейтинг@Mail.ru

Поиск