TempDB.Gross1
Gross1, Compute1 (Простой подсчет в таблице) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Функция вычисляет значение агрегации указанного столбца таблицы среди записей, входящих в указанный фильтр.
Синтаксис
TempDB.Gross1(<Наименование столбца (STRING)>,<Тип операции агрегации (STRING)>="SUM",<Стандартные фильтры>...):<Результат агрегации (NUMBER)>
Аргументы
<Наименование столбца (STRING)>
- Аргумент задает наименование столбца, для которого необходимо выполнить операцию подсчета.<Тип операции агрегации (STRING)>
- (необязательный аргумент) Аргумент задает тип операции, который необходимо выполнить над столбцом. Доступны следующие значения операций:- SUM (по умолчанию) -- будет найдена сумма указанного столбца по строкам, входящим в фильтр. Значения столбца должны иметь числовой тип данных.
- AVG -- будет найдено среднее значение указанного столбца из строк, входящим в фильтр. Значения столбца должны иметь числовой тип данных.
- MAX -- из всех значений столбца, входящих в фильтр, будет возвращено максимальное. Значения столбца могут иметь произвольный тип, в т.ч. тип базы данных, однако, в случае столбцов с типом объекта базы данных, максимальным будет не значение, наименование которого (или дата которого) имеют максимальное значение, а значение с максимальным внутренним кодом.
- MIN -- из всех значений столбца,входящих в фильтр, будет возвращено минимальное. Значения столбца могут иметь произвольный тип, в т.ч. тип базы данных, однако, в случае столбцов с типом объекта базы данных, минимальным будет не значение, наименование которого (или дата которого) имеют минимальное значение, а значение с минимальным внутренним кодом.
- COUNT -- будет возвращено количество строк, входящих в фильтр (равнозначно функции Size).
<Стандартные фильтры>
- (необязательный аргумент) Стандартные фильтры отбора записей таблицы описаны в статье Стандартные фильтры. Важное отличие от фильтров функций объектов базы данных заключается в том, что стандартные фильтры всегда работают в сложном (расширенном) режиме, при этом отсутствует требование, что первая строка фильтра должна начинаться на знак ~. Выражения фильтров содержат весь возможный набор функций и операторов языка запросов (см. Временная таблица базы данных, Объект запрос базы данных), при указании наименование также применимы префиксы (типа :), как это описано в статье по временной таблице базы данных.
Возвращаемое значение
Возвращает вещественное число -- результат операции.
Примеры
//Фрагмент загружает во временную таблицу движения накопителя с определенными фильтрами и добавляет их сумму к переменной СмБухИтого аТемп:=TempDB.Create("Сумма:NUMBER.15.2"); аТемп.LoadFrom("Stor.БухгалтерскиеСчета","?(@Expense=1,-Сумма,Сумма)->Сумма", "@Date>=НачДата", "@Date<КонДата", "IsType(@LINK,Doc.РегистрацияВыпускаПродукции)", "@LINK IN спРегистрации", "(Счет=Сч20)And(Субконто1=сбПроизводство)And(Субконто2=сбЗатраты)And(isEmpty(Субконто3))"); СмБухИтого:=Round(СмБухИтого+аТемп.Gross1("Сумма"),2);