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

1c скд

Автор Shaman_blr, Сегодня в 08:51

Shaman_blr и 2 гостей просматривают эту тему.

Shaman_blr

всем привет надо реализовать такой отчет с такой структурой, как на картинке "Снимок"

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

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

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

СГРУППИРОВАТЬ ПО
ТоварыНаСкладахОбороты.Номенклатура,
ТоварыНаСкладахОбороты.Регистратор

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

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

СГРУППИРОВАТЬ ПО
ТоварыНаСкладахОбороты.Номенклатура,
ТоварыНаСкладахОбороты.Регистратор

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

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

структуру делаю вот так, как на картинке "Структура"

итог скинул тоже картинкой!

Подскажите как решить этот вопрос) как сделать структуру полей как в тз

Максим75

Shaman_blr, в выбранные поля добавьте что надо, а не только ресурс

Shaman_blr

Максим75, сделал вот так
в других полях стоит авто, но все равно итог тот же)
мой запрос вообще способен на такое?)

Максим75

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

Shaman_blr

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

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

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

СГРУППИРОВАТЬ ПО
ТоварыНаСкладахОбороты.Номенклатура,
ВЫБОР
КОГДА ТоварыНаСкладахОбороты.Регистратор ССЫЛКА Документ.СборкаТоваров
ИЛИ ТоварыНаСкладахОбороты.Регистратор ССЫЛКА Документ.ПеремещениеТоваров
ТОГДА "Сборка/Перемещение"
КОГДА ТоварыНаСкладахОбороты.Регистратор ССЫЛКА Документ.ПриобретениеТоваровУслуг
ТОГДА "Поступление"
КОГДА ТоварыНаСкладахОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг
ТОГДА "Реализация"
ИНАЧЕ "Прочее"
КОНЕЦ) КАК ВложенныйПриход

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

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

СГРУППИРОВАТЬ ПО
ТоварыНаСкладахОбороты.Номенклатура,
ВЫБОР
КОГДА ТоварыНаСкладахОбороты.Регистратор ССЫЛКА Документ.СборкаТоваров
ИЛИ ТоварыНаСкладахОбороты.Регистратор ССЫЛКА Документ.ПеремещениеТоваров
ТОГДА "Сборка/Перемещение"
КОГДА ТоварыНаСкладахОбороты.Регистратор ССЫЛКА Документ.ПриобретениеТоваровУслуг
ТОГДА "Поступление"
КОГДА ТоварыНаСкладахОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг
ТОГДА "Реализация"
ИНАЧЕ "Прочее"
КОНЕЦ) КАК ВложенныйРасход

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

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

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

Максим75

Shaman_blr, да должно все работать. группировка в столбцах. попробуйте убрать из выборки начальный и конечные остатки и посмотрите, станет нормально столбцы группировать или нет.

Теги:

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

Рейтинг@Mail.ru

Поиск