Доброго времени суток, Уважаемые. Помогите с таким вопросом. Мне надо вывести итоги в разрезе ПериодНеделя, при выводе Начального и конечного остатка итоги правильные, как только вывожу оборот или расход итоги плывут. Роли расставил, ПериодРегистратор, Период секунда, уже пробовал воообще их не выводить, все равно итоги плывут, в какую сторону копать?
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(4) Запрос простейший
ВЫБРАТЬ
АналитикаНоменклатуры.Номенклатура,
АналитикаНоменклатуры.Склад,
СебестоимостьТоваровОстаткиИОбороты.КоличествоНачальныйОстаток,
СебестоимостьТоваровОстаткиИОбороты.КоличествоКонечныйОстаток,
ВЫБОР
КОГДА СебестоимостьТоваровОстаткиИОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровОтКлиента
ТОГДА СебестоимостьТоваровОстаткиИОбороты.КоличествоРасход
ИНАЧЕ 0
КОНЕЦ КАК КоличествоВозврат,
СебестоимостьТоваровОстаткиИОбороты.ПериодНеделя
ИЗ
РегистрНакопления.СебестоимостьТоваров.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, Авто, , ) КАК СебестоимостьТоваровОстаткиИОбороты
ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикаНоменклатуры
ПО СебестоимостьТоваровОстаткиИОбороты.АналитикаУчетаНоменклатуры = АналитикаНоменклатуры.КлючАналитики
ВЫБРАТЬ
АналитикаНоменклатуры.Номенклатура,
АналитикаНоменклатуры.Склад,
СебестоимостьТоваровОстаткиИОбороты.КоличествоНачальныйОстаток,
СебестоимостьТоваровОстаткиИОбороты.КоличествоКонечныйОстаток,
ВЫБОР
КОГДА СебестоимостьТоваровОстаткиИОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровОтКлиента
ТОГДА СебестоимостьТоваровОстаткиИОбороты.КоличествоРасход
ИНАЧЕ 0
КОНЕЦ КАК КоличествоВозврат,
СебестоимостьТоваровОстаткиИОбороты.ПериодНеделя
ИЗ
РегистрНакопления.СебестоимостьТоваров.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, Авто, , ) КАК СебестоимостьТоваровОстаткиИОбороты
ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикаНоменклатуры
ПО СебестоимостьТоваровОстаткиИОбороты.АналитикаУчетаНоменклатуры = АналитикаНоменклатуры.КлючАналитики
(5)Это не "простейший" запрос для построения типовой ведомости средствами СКД без вмешательства программиста.
Простейший запрос будет таким:
Простейший запрос будет таким:
ВЫБРАТЬ
АналитикаНоменклатуры.Номенклатура,
АналитикаНоменклатуры.Склад,
СебестоимостьТоваровОстаткиИОбороты.КоличествоНачальныйОстаток,
СебестоимостьТоваровОстаткиИОбороты.КоличествоПриход,
СебестоимостьТоваровОстаткиИОбороты.КоличествоРасход,
СебестоимостьТоваровОстаткиИОбороты.КоличествоКонечныйОстаток,
СебестоимостьТоваровОстаткиИОбороты.ПериодНеделя
ИЗ
РегистрНакопления.СебестоимостьТоваров.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, Авто, , ) КАК СебестоимостьТоваровОстаткиИОбороты
ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикаНоменклатуры
ПО СебестоимостьТоваровОстаткиИОбороты.АналитикаУчетаНоменклатуры = АналитикаНоменклатуры.КлючАналитики
Показать
(6) Не, так дело не пойдет. Коли Вы используете в запросе регистратор, то его тоже необходимо выбрать в запросе. И на закладке наборов данных указать правильную роль. При этом должно быть два поля периода со снятыми флажками "Дополнительное": одно регистратор, другое - дата (можно оставить и ПериодНеделя).
(18) Я могу выложить отчет. Не могу понять в чем проблема, убираю для вывода поле количество возврат показывает правильные остатки
Прикрепленные файлы:
ОтчетПоПродажамТолькоКоличество.erf
(19) Прошу прощения, что затянул с ответом. Неожиданно много работы свалилось. :)
В общем проблема здесь в том, как я полагаю, что СКД не может корректно сгруппировать данные. С одной стороны в запросе есть поле периода "Регистратор", и остатки рассчитываются в разрезе него. С другой стороны сам регистратор в группировке нигде не участвует, а участвует только "ПериодНеделя". Получены слишком детальные записи, которые не используются в отчете. Если говорить грубо, то СКД должно переносить значение конечного остатка предыдущего периода в колонку начального остатка следующего периода. Только вот на одну неделю приходится целая куча конечных и начальных остатков по каждому из регистраторов. И СКД непонятно, какой из регистраторов последний, дабы использовать именно его остаток. Вот СКД и складывает черт знает что и с чем.
Здесь и стоит искать решение. Нужно сделать так, чтобы начальный и конечный остатки выбирались в запросе только в разрезе периода-недели. Т.е. вне зависимости от включения поля "КоличествоВозврат", в запросе не должно появиться регистратора. И самый простой способ, как к этому можно прийти, это разбить запрос на 2 части. Одна пусть выбирает начальный и конечный остаток, а вторая - возврат как обороты по регистру, для которых нет сложных расчетов в группировках по полям-периодам.
В общем проблема здесь в том, как я полагаю, что СКД не может корректно сгруппировать данные. С одной стороны в запросе есть поле периода "Регистратор", и остатки рассчитываются в разрезе него. С другой стороны сам регистратор в группировке нигде не участвует, а участвует только "ПериодНеделя". Получены слишком детальные записи, которые не используются в отчете. Если говорить грубо, то СКД должно переносить значение конечного остатка предыдущего периода в колонку начального остатка следующего периода. Только вот на одну неделю приходится целая куча конечных и начальных остатков по каждому из регистраторов. И СКД непонятно, какой из регистраторов последний, дабы использовать именно его остаток. Вот СКД и складывает черт знает что и с чем.
Здесь и стоит искать решение. Нужно сделать так, чтобы начальный и конечный остатки выбирались в запросе только в разрезе периода-недели. Т.е. вне зависимости от включения поля "КоличествоВозврат", в запросе не должно появиться регистратора. И самый простой способ, как к этому можно прийти, это разбить запрос на 2 части. Одна пусть выбирает начальный и конечный остаток, а вторая - возврат как обороты по регистру, для которых нет сложных расчетов в группировках по полям-периодам.
ВЫБРАТЬ
Себестоимость.ПериодНеделя КАК ПериодНеделя,
Себестоимость.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатуры,
Аналитика.Номенклатура КАК Номенклатура,
Аналитика.Склад КАК Склад,
0 КАК КоличествоНачальныйОстаток,
0 КАК КоличествоКонечныйОстаток,
0 КАК КоличествоПриход,
0 КАК КоличествоРасход,
Себестоимость.КоличествоРасход КАК КоличествоВозврат
ИЗ
РегистрНакопления.СебестоимостьТоваров.Обороты(, , Авто, ) КАК Себестоимость
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК Аналитика
ПО Себестоимость.АналитикаУчетаНоменклатуры = Аналитика.КлючАналитики
ГДЕ
Себестоимость.Регистратор ССЫЛКА Документ.ВозвратТоваровОтКлиента
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
Себестоимость.ПериодНеделя,
Себестоимость.АналитикаУчетаНоменклатуры,
Аналитика.Номенклатура,
Аналитика.Склад,
Себестоимость.КоличествоНачальныйОстаток,
Себестоимость.КоличествоКонечныйОстаток,
Себестоимость.КоличествоПриход,
Себестоимость.КоличествоРасход,
0
ИЗ
РегистрНакопления.СебестоимостьТоваров.ОстаткиИОбороты(, , Авто, , ) КАК Себестоимость
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК Аналитика
ПО Себестоимость.АналитикаУчетаНоменклатуры = Аналитика.КлючАналитики
ПоказатьПрикрепленные файлы:
ОтчетПоПродажамТолькоКоличество.erf
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот