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

Отчет в скд из 2 регистров

Автор Antonio, 11 апр 2023, 20:11

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

Antonio

Необходимо получить отчет следующего вида 131ca66ecd.png   . пока результат следующий e067e85506.png . Отобраны данные поля: 7d14c895d5.pngdf36eca29c.png     , Связь пробовал настраивать по разному, сейчас вариант такой dfc32f7098.png  . Вроде неверно присоединяется правая таблица, при этом при выборе по концу периода показывает начальные остатки чего быть не должно поидее. Роли для регистров указаны вроде правильно, по возрастанию. Подскажите на что стоит обратить внимание, как можно решить данную проблему

Максим75

Antonio, что сразу бросается в глаза, так обычно связь по товару делается. а при чем здесь регистратор?
по характеристике еще нужна будет связь.

да и вообще, зачем два набора? один набор во временную, второй набор во временную, потом в результирущем запросе две временные связать.

Antonio

Максим75, Сделал как вы сказали, поля с картинки 3 и 4 поместил в временные таблицы по отдельности, третьим запросом соединил обе таблицы, связи указал по номенклатуре/характеристике. Результат так же неверный(

antoneus

Параметры НачалоПериода и КонецПериода - это те, которые по умолчанию или свои?

Antonio

antoneus, Да, это по умолчанию которые, своих параметров не добавлял

Максим75

Antonio, как бы хотелось текст запроса увидеть, и в чем не так работает.
по картинкам не особо понимаю, что к чему.

Antonio

Максим75, ВЫБРАТЬ
ТоварыКОтгрузке.ВРезерве КАК ВРезерве,
ТоварыКОтгрузке.КОтгрузке КАК КОтгрузке,
ТоварыКОтгрузке.КОформлению КАК КОформлению,
ТоварыКОтгрузке.КСборке КАК КСборке,
ТоварыКОтгрузке.Собирается КАК Собирается,
ТоварыКОтгрузке.Собрано КАК Собрано,
ТоварыКОтгрузке.Номенклатура КАК Номенклатура1,
ТоварыКОтгрузке.Склад КАК Склад,
ТоварыКОтгрузке.Характеристика КАК Характеристика1,
ТоварыКОтгрузке.Регистратор КАК Регистратор1
ПОМЕСТИТЬ Отгрузка
ИЗ
РегистрНакопления.ТоварыКОтгрузке КАК ТоварыКОтгрузке
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ТоварыНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура,
ТоварыНаСкладахОстаткиИОбороты.Характеристика КАК Характеристика,
ТоварыНаСкладахОстаткиИОбороты.Склад КАК Склад,
ТоварыНаСкладахОстаткиИОбороты.ВНаличииНачальныйОстаток КАК ВНаличииНачальныйОстаток,
ТоварыНаСкладахОстаткиИОбороты.ВНаличииКонечныйОстаток КАК ВНаличииКонечныйОстаток,
ТоварыНаСкладахОстаткиИОбороты.ВНаличииПриход КАК ВНаличииПриход,
ТоварыНаСкладахОстаткиИОбороты.ВНаличииРасход КАК ВНаличииРасход,
ТоварыНаСкладахОстаткиИОбороты.Регистратор КАК Регистратор,
ТоварыНаСкладахОстаткиИОбороты.ПериодСекунда КАК ПериодСекунда,
ТоварыНаСкладахОстаткиИОбороты.ПериодМесяц КАК ПериодМесяц
ПОМЕСТИТЬ ОстаткиОбороты
ИЗ
РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(, , Авто, , ) КАК ТоварыНаСкладахОстаткиИОбороты
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ОстаткиОбороты.Номенклатура КАК Номенклатура,
ОстаткиОбороты.Характеристика КАК Характеристика,
ОстаткиОбороты.Склад КАК Склад,
ОстаткиОбороты.ВНаличииНачальныйОстаток КАК ВНаличииНачальныйОстаток,
ОстаткиОбороты.ВНаличииКонечныйОстаток КАК ВНаличииКонечныйОстаток,
ОстаткиОбороты.ВНаличииПриход КАК ВНаличииПриход,
ОстаткиОбороты.ВНаличииРасход КАК ВНаличииРасход,
Отгрузка.ВРезерве КАК ВРезерве,
Отгрузка.КОтгрузке КАК КОтгрузке,
Отгрузка.КОформлению КАК КОформлению,
Отгрузка.КСборке КАК КСборке,
Отгрузка.Собирается КАК Собирается,
Отгрузка.Собрано КАК Собрано,
ОстаткиОбороты.ПериодСекунда КАК ПериодСекунда,
ОстаткиОбороты.Регистратор КАК Регистратор,
Отгрузка.Номенклатура1 КАК Номенклатура1,
Отгрузка.Характеристика1 КАК Характеристика1
ИЗ
ОстаткиОбороты КАК ОстаткиОбороты
ЛЕВОЕ СОЕДИНЕНИЕ Отгрузка КАК Отгрузка
ПО ОстаткиОбороты.Номенклатура = Отгрузка.Номенклатура1
И ОстаткиОбороты.Характеристика = Отгрузка.Характеристика1
Понимаю что скорее всего все криво, просто пытаюсь решить уже долго, в инете особо вариантов не нашел, вроде и регистратор секунда добавлял и смотрел чтобы роли были правильно поставлены, связь, группировки по разному пробовал настраивать. Пользуясь типовыми отчетами, вижу что неверно расчитываются некоторые колонки. Скрины постараюсь чуть позже скинуть.

Максим75

Antonio, а что хоть хочется получить?
товары на складах выгребаются за весь период, оно так надо? или все таки в виртуальной таблице надо период отсечь?
при связи с регистром Отгрузки незачем выбирать номенклатуру и характеристики с него, ведь это берется с остатков и связывается с отгрузками по ним.
и когда во временную таблицу помещаете, не мешало бы применить к чему-то агрегатные функции, иначе просто получится огромная таблица всех записей регистра остатков по всем регистраторам и еще с периодом до секунды. Вангую, что надо группировать по номенклатуре и характеристике, чтобы что-то получить как остатки (начальные и конечные) и обороты (приходы с расходами)

Максим75

Antonio, вот оставьте запросы как есть, в итоговом выведите только остатки и посмотрите, что получится. потом примените к временной таблице агрегатные фукции, уберите регистратор и прочее ненужное и посмотрите что получится. ну а потом уже присоединяйте вторую таблицу.
сейчас у Вас ко всем записям регистра остатки присоединяется куча записей регистра отгрузки, получается реально черти что.

Kvark5d

Antonio, Та таблица котору Вы привели как то что надо получить полностью абсурдна.
Какой смысл связывать остатки и обороты товара и товары кОтгрузке???
С регистром ТоварыКОтгрузке Вы работаете без виртуальных таблиц, даже условий никаких нет. Он же выдаст все данные. Так нельзя.
Я вижу только одну задачу: на определенный момент знать сколько товара в наличии (остатки) и сколько из него в резерве, к сборке и т.д. Тогда необходимо связать две виртуальные таблицы остатков.
Но судя по всему это не то что Вам надо. Поэтому определитесь что все таки надо получить в итоге.



Теги:

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

Рейтинг@Mail.ru

Поиск