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