1. Выбираю в запросе определенную Номенклатуру, а вместе с ней и Дату, и Количество, из тч.документа (к сожалению, у него нет регистров) за определенный период (данный документ делается раз в месяц). Дата документа всегда начало месяца!!!!

То есть, у меня при выборке за месяц получаются такие данные - 01.01.2021 Шапка 310 шт (01.02.2021 Шапка 125 шт, и т.д.)

2. За этот же период я получаю (см. картинку "Пример") все недели.

Что нужно сделать в запросе (подскажите, пожалуйста, как это сделать):

а) Разбить количество проданных номенклатур за месяц на количество дней месяца. Чтобы знать сколько в среднем за день мы продаем. (это сделал)

б) Связать в запросе недели (из одной временной таблицы) и Количество проданной номенклатуры за эту неделю (из другой временной таблицы) - из расчета того, что мы уже знаем сколько продаем номенклатуры (например, шапочка) за день

в) Если неделя календаря застряла между месяцами (стыковая), то рассчитывать так: количество дней предыдущего месяца в этой недели * на количество проданных шапочек в среднем за день в предыдущем месяце + количество дней текущего(следующего) месяца в этой недели* на количество проданных шапочек в среднем за день в текущем месяце
---
1. Получаем временную таблицу со всеми днями за указанный период.
2.Соединяем с таблицей, где посчитаны продажи по конкретной номенклатуре в среднем за день. Каждому дню месяца присобачиваем количество проданной номенклатуры за день. Соединение - (НАЧАЛОПЕРИОДА(ПроизводственныйКалендарьДни.ДеньПланов, МЕСЯЦ) = НАЧАЛОПЕРИОДА(Док.Период, МЕСЯЦ))
3. Выбираем поле - НАЧАЛОПЕРИОДА(ПроизводственныйКалендарьДни.ДеньПланов, НЕДЕЛЯ) КАК НачалоНедели из врем.таблицы по дням.
4. Группируем по данному полю, а по количеству суммируем.
И оно прекрасно суммирует данные за неделю. Даже если эта неделя на стыке 2 месяцев
---
У вас принципиальное задание сделать такое запросом? Запрос ограничен, да и не всегда он может выполнить то, что надо. Почему такие условия не можете выполнить кодом?
---
Как идея, чтобы самому не придумывать ничего в расчетах, я бы:
1. Посчитал среднее число продаж за день в месяце, по производственному календарю построил втТаблицу на каждый день
2. Из втТаблицы для каждой записи помимо даты добавил НачалоПериода(Продажа.Дата, НЕДЕЛЯ) КАК ПериодНедлеля, НачалоПериода(Продажа.Дата, МЕСЯЦ) КАК ПериодМесяц и т.д., группировал в колонках по этим полям в зависимости от детализации.
В итоге не нужно самому никакие стыки рассчитывать, суммированием по периодам занималась бы уже СКД
---
подниму
---
так вы хотя бы уточните, чего ждете в итоге? Если идеи на словах не достаточно, вероятнее всего готовый запрос. Вы хотя бы свой запрос полностью выложите, иначе как вам поможет кто-то? :)
---
Сообщение было скрыто модератором.
---
Это маленькая часть огромнейшего запроса.
---
на мой вопрос то вы так и не ответили...
---
1. Получаем временную таблицу со всеми днями за указанный период.
2.Соединяем с таблицей, где посчитаны продажи по конкретной номенклатуре в среднем за день. Каждому дню месяца присобачиваем количество проданной номенклатуры за день. Соединение - (НАЧАЛОПЕРИОДА(ПроизводственныйКалендарьДни.ДеньПланов, МЕСЯЦ) = НАЧАЛОПЕРИОДА(Док.Период, МЕСЯЦ))
3. Выбираем поле - НАЧАЛОПЕРИОДА(ПроизводственныйКалендарьДни.ДеньПланов, НЕДЕЛЯ) КАК НачалоНедели из врем.таблицы по дням.
4. Группируем по данному полю, а по количеству суммируем.
И оно прекрасно суммирует данные за неделю. Даже если эта неделя на стыке 2 месяцев
---
не за что. Надеюсь совесть не загрызет :)