Каталог решений - [ПОЛЕЗНЯШКА, 7.7] Как посчитать итоги по документам черным запросом с изподвывертом?

[ПОЛЕЗНЯШКА, 7.7] Как посчитать итоги по документам черным запросом с изподвывертом?

[ПОЛЕЗНЯШКА, 7.7] Как посчитать итоги по документам черным запросом с изподвывертом?

В наличии

Мелкая полезняшка, считает запросом итоговую сумму документов и количество документов.

Категория:

Описание

Дано: Документ, в котором в строках ТЧ есть реквизит «Сумма» (то есть суммы введены только в строках ТЧ).

Требуется: получить черным запросом по документам за период для заданного клиента сумму всех сумм и количество документов.

Исходные даные:

  • период: ДатаН, ДатаК
  • ВыбКонтрагент: заданный клиент

Решение:

Исполнять будем на типовой ТиС 9.2 на примере документа «Реализация». ПРИМЕР УПРОЩЕННЫЙ (это не значит, что мы должны учесть все тонкости, типа, что разные документы одного вида могут быть оформлены в разных валютах или что надо обрабатывать только проведенные)

 //*******************************************************************

//
Процедура Сформировать()

Запрос=СоздатьОбъект("Запрос");
ТекстЗапроса="
|Период С ДатаН По ДатаК;
|СуммаПоДокументу = Документ.Реализация.Сумма;
|Контрагент = Документ.Реализация.Контрагент;
|Рейтинг = Документ.Реализация.НомерСтроки;
|Функция СуммаСумм = Сумма(СуммаПоДокументу);
|Функция КоличествоДокументов = Счётчик() Когда(Рейтинг<2);
|Группировка Документ;
|Условие (Контрагент = ВыбКонтрагент);
|";

Запрос.Выполнить(ТекстЗапроса);
//отладка
//ТЗ = ""; Запрос.Выгрузить(ТЗ,1,1);
//ПечатьТЗ(ТЗ);

Сообщить("Итого сумма сумм за период: "+Запрос.СуммаСумм);
Сообщить("Итого документов за период: "+Запрос.КоличествоДокументов);

КонецПроцедуры // Сформировать

Может, кому-то и пригодится.
Возможно, я туплю  и есть более простой и красивый вариант черным запросом? — тогда поделитесь…

has been added to your cart:
Оформление заказа