Добрый день! Есть отчет на СКД, который выводит данные по клиентам и операциям по ним помесячно. Сейчас возникла необходимость период в отчете разбить тоже помесячно. Т.е. если пользователь в клиенте выбирает например первые полгода. И в отчете считается отдельно за январь, отдельно за февраль, май, июнь, июль. Т.е. как будто пользователь сформировал 6 отчетов с разным периодом. Мне пока нужно понимание можно ли такое вообще сделать.
---
Немного переделал отчет. Чтобы можно было приложить.

См. вариант отчета "Основной" - это то что нужно Вам, если я правильно понял.
Также оставил вариант "Таблица" - оттуда скриншоты выше. М.б. Вам пригодится.

Обратите внимание, что даже если за месяц данных нет (например, за февраль), но строка месяца всё-равно присутствует, с пустыми данными.
---
Можете показать картинкой что должно получиться?
---
Да, типо такого. Смысл в том, что пользователь задает период в отчете, например 1 квартал года. И отчет строится отдельно за каждый месяц, а потом выводится как картинка ниже.
---
Сделать можно, но, если в каком-то из месяцев не было движений, то получится не красиво. Красоту добавит заполненный в базе Календарь.
Не раз уже обсуждалось решение на форуме, поищите.
---
Я когда ищу на форуме решение мне выводится просто сформированный отчет сгруппировать по периоду. А вот чтобы именно период отчета раздробить помесячно и помесячно его формировать не видела. Движения есть каждый месяц, тут проблем не будет.
---
наверно нужна структура в виде таблицы, у которой столбец будет Месяц
---
А как это в отчете сделать? Там задается период и это параметр насколько я знаю нельзя раздробить. Пока у меня идея только сделать набор данных не запрос, а объект, программно разделить этот период на месяцы, формировать по циклу по всем эти периодам отчеты и потом все собрать в 1 таблицу.
---
выводить месяц в запросе
---
И потом группировать по нему?
---
+ в столбце
---
А как выводить в столбце? Если период отчета будет все время разный?
---
от периода нужно только месяц получить, вам же нужно по разным месяцам получать данные.

 | МЕСЯЦ(Дата) КАК Месяц,

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

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

В другом данные.
Дата документа - преобразуется в дату начало периода месяца
Связь по этим датам.

Только у меня колонки разные были.
Постараюсь найти.
---
Да, вот что то типо такого. Думаю как проще. Может просто в цикле посчитать помесячно..
А что значит у вас колонки были разные?
---
Месяц в колонке.
Вот так:
---
В зависимости от периода год выводится или нет.
Скрин без вывода без указания года:
---
Немного переделал отчет. Чтобы можно было приложить.

См. вариант отчета "Основной" - это то что нужно Вам, если я правильно понял.
Также оставил вариант "Таблица" - оттуда скриншоты выше. М.б. Вам пригодится.

Обратите внимание, что даже если за месяц данных нет (например, за февраль), но строка месяца всё-равно присутствует, с пустыми данными.
---
да, спасибо! Что то типо такого. Поразбираюсь. Если будет сильно сложно, то может проще циклом перебрать..
---
Это был бы идеальный вариант.

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

Если в отчете я выбираю месяц - то считает корректно
(24)

Чуть чуть поправил для своих нужд , может кому то пригодится

```1c
    ВЫБРАТЬ
    0 КАК Цифра
    ПОМЕСТИТЬ ТабЦифр

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    1

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    2

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    3

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    4

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    5

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    6

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    7

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    8

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    9
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&ДатаОт, МЕСЯЦ, ТабЦифр1.Цифра + 10 * ТабЦифр2.Цифра + 100 * ТабЦифр3.Цифра + 1000 * ТабЦифр4.Цифра), МЕСЯЦ) КАК МесяцBEG
    ПОМЕСТИТЬ ТабМес
    ИЗ
    ТабЦифр КАК ТабЦифр1,
    ТабЦифр КАК ТабЦифр2,
    ТабЦифр КАК ТабЦифр3,
    ТабЦифр КАК ТабЦифр4
    ГДЕ
    НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&ДатаОт, МЕСЯЦ, ТабЦифр1.Цифра + 10 * ТабЦифр2.Цифра + 100 * ТабЦифр3.Цифра + 1000 * ТабЦифр4.Цифра), МЕСЯЦ) <= НАЧАЛОПЕРИОДА(&ДатаПо, МЕСЯЦ)
    ;

    ////////////////////////////////////////////////////////////­//////////////////////
    ВЫБРАТЬ
    ТабМес.МесяцBEG КАК МесяцBEG,
    КОНЕЦПЕРИОДА(ТабМес.МесяцBEG) КАК МесяцEND
    ИЗ
    ТабМес КАК ТабМес
```