За основу взята разработка Отчет по оборачиваемости товаров. Работает в Управлении Торговлей 10.
Шаблоны типовых отчетов на СКД не использовались. По сути это просто схема компоновки данных, которую можно взять и подгрузить в шаблон, который вам нравится.
Схема из Отчет по оборачиваемости товаров существенно изменена.
Себестоимость и выручка берутся не из регистра ПартииТоваровНаСкладах, а из регистров Продажи и ПродажиСебестоимость, поэтому в отчет не должны попадать возвраты товаров и перемещения между складами.
Основной проблемой написания запроса к этому отчету является необходимость получить остатки товаров на все даты периода, включая те, когда движений не было. При использовании двух связанных источников данных в СКД происходит многократное выполнение запроса для каждого дня, принадлежащего периоду. Это происходит долго даже на небольших объемах данных. В этом отчете все данные извлекаются одним запросом.
Вместо получения диапазона дат из регистра РегламентированныйПроизводственныйКалендарь таблица создается при помощи декартова умножения. Пусть будет вот такое:
ВЫБРАТЬ РАЗЛИЧНЫЕ
0 КАК Номер
ПОМЕСТИТЬ ВТ10
ОБЪЕДИНИТЬ
ВЫБРАТЬ
1
ОБЪЕДИНИТЬ
ВЫБРАТЬ
2
//.......
ОБЪЕДИНИТЬ
ВЫБРАТЬ
9
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ДОБАВИТЬКДАТЕ(&НачалоПериода, ДЕНЬ, Сотни.Номер * 100 + Десятки.Номер * 10 + Единицы.Номер) КАК Дата
ПОМЕСТИТЬ ВТДаты
ИЗ
ВТ10 КАК Сотни,
ВТ10 КАК Десятки,
ВТ10 КАК Единицы
ГДЕ
Сотни.Номер * 100 + Десятки.Номер * 10 + Единицы.Номер <= РАЗНОСТЬДАТ(&НачалоПериода, &КонецПериода, ДЕНЬ)
ИНДЕКСИРОВАТЬ ПО
Дата
;
А затем запросом получаем остатки на каждый день аналогично тому, как это описано здесь: Остатки на каждый день в запросе
Кроме того в отчете реализована возможность отбора по продажам, остаткам и движениями по складу. Отбор происходит по итогам по Скаду и Номенклатуре, а не по детальным дневным строкам.
При отборе по небольшому количеству позиций номенклатуры работает достаточно шустро.
Протестировано на платформе 1С:Предприятие 8.3 (8.3.10.2252). "Управление торговлей", редакция 10.3 (10.3.45.4) ,