Difference between revisions of "Query.GroupCount"
(No difference)
|
Revision as of 10:16, 2 November 2019
| GroupCount (Количество группировок в запросе) | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||
Функция возвращает общее количество группировок в запросе. Запрос должен быть выполненным.
Синтаксис
Query.GroupCount():<Общее количество группировок в запросе (INT)>
Возвращаемое значение
Возвращает числовое значение.
Примеры
Var З Export;
//Функция обхода группировок на основе рекурсии
Function ОбходГруппировок(Уровень)
If Уровень>З.GroupCount Then
Exit;
EndIf;
While З.Next(Уровень) Do
//Получить значение текущей группировки
зЭл:=З.Get(З.Groups(Уровень));
//Получить сальдо агрегации для текущей строки
зНачОст:=З.зНачОст;
зКонОст:=З.зКонОст;
зПриход:=З.зПриход;
зРасход:=З.зРасход;
//Вывод информации в печатную форму отчета
...
//Перейти к следующей группировке
ОбходГруппировок(Уровень+1);
EndDo;
EndFunction
//Выполним запрос с произвольным количеством группировок
ТЗ:=...
З:=Query.Create();
З.Execute(ТЗ);
//Вывести заголовок в печатную форму отчета
...
//Вывод строк группировок
ОбходГруппировок(1);
//Вывод строки итого, работает как линейных, так и для обычных запросов
зНачОст:=З.BegTotals("зНачОст");
зКонОст:=З.EndTotals("зКонОст");
зПриход:=З.Compute("зПриход");
зРасход:=З.Compute("зРасход");
...