Есть запрос на скд. Интересуют параметры виртуальной таблицы. Требуется выводить Количество за три последние месяца! Как это сделать ? Мой вариант приложил в скрине,думал это верно,но как оказалось нет.

```1c
    РегистрНакопления.Продажи.Обороты(ДОБАВИТЬКДАТЕ(&ДатаДок, МЕСЯЦ, -3), &ДатаДок, , )
```

Если убрать конецпериода из параметров в скд и оставить просто ТекущаяДата() то всё верно. Но мне надо чтобы брало конец месяца от Текущей даты. Как это сделать ?
заранее благодарю
---
у меня вот так работает, только что проверил, при текущей дате выводит декабрь,январь,февраль
РегистрНакопления.Работы.Обороты(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&ВыбДата, МЕСЯЦ, -2), МЕСЯЦ), КОНЕЦПЕРИОДА(&ВыбДата, МЕСЯЦ), Запись, ) КАК РаботыОбороты
только при условии, что в виртуальной таблице выбрано периодичность запись
---
прибавить 1 сек к дате нужной
на сод на работают границы периода
---
Скд всегда подставляет в обороты свои типовые параметры (Обычно называются "НачалоПериода" и "КонецПериода", а чтобы вставить свои параметры нужно использовать просто вот такие скобки { }
---
т.е. вот так

```1c
    РегистрНакопления.Продажи.Обороты(ДОБАВИТЬКДАТЕ({&ДатаДок}, МЕСЯЦ, -3), {&ДатаДок}, , )
```

либо вот так

```1c
    РегистрНакопления.Продажи.Обороты({ДОБАВИТЬКДАТЕ(&ДатаДок, МЕСЯЦ, -3)}, {&ДатаДок}, , )
```

смотря что будет работат
---
То есть в моём варианте:
```1c
    РегистрНакопления.Продажи.Обороты(ДОБАВИТЬКДАТЕ(&ДатаДок, МЕСЯЦ, -3), &ДатаДок, , )
```

Когда я указываю в параметрах после ТекущаяДата() . То это не отрабатывает? А как же выводит верно тогда.
---
а где фигурные скобки?
И попробуйте указать параметр программно в модуле отчета в событии ПриКомпоновкеРезультата
---
Я имею ввиду, что у меня сейчас без фигурным скобок и в параметрах в &ДатаДок присвоено значение ТекущаяДата(). и Всё правильно выводит!

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