Для того чтобы получить в запросе обороты регистра накопления, следует использовать специальную виртуальную таблицу регистра, которая так и называется — Обороты. В параметрах данной виртуальной таблицы задается две даты, первая из которых — начало периода за который будут браться обороты, вторая — его окончание. В следующем параметре задается периодичность группировки записей. Например, если выбрать День, то все записи регистра за конкретный день, по уникальному набору измерений, объединятся в одну, при этом ресурсы просуммируются. В последнем параметре можно задать произвольное условие, используя измерения регистра и параметры переданные в запрос. Например можно задать отбор по организации.
Обороты регистра накопления — пример
Рассмотрим пример написания запроса, берущего обороты по регистру накопления. Для примера возьмем регистр ВыручкаИСебестоимостьПродаж из конфигурации Управление торговлей, редакция 11.
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("НачалоПериода", НачалоМесяца(ТекущаяДата()));
Запрос.УстановитьПараметр("КонецПериода", КонецМесяца(ТекущаяДата()));
Запрос.Текст =
"ВЫБРАТЬ
| ВыручкаСcПродажОбороты.Подразделение,
| ВыручкаСcПродажОбороты.Менеджер,
| ВыручкаСcПродажОбороты.Склад,
| ВыручкаСcПродажОбороты.КоличествоОборот,
| ВыручкаСcПродажОбороты.СуммаВыручкиОборот
|ИЗ
| РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(
| &НачалоПериода,
| &КонецПериода,
| Период,
| ЗаказКлиента ССЫЛКА Документ.ЗаказКлиента) КАК ВыручкаСcПродажОбороты";
Выборка = Запрос.Выполнить().Выбрать();
Отметим, что выполнить запрос в конфигурациях использующих управляемое приложение можно только на сервере.
Добавить комментарий