Нужен пример использования агрегатных функций в отчёте

Где бы посмотреть, как в скрипте вычисляемого поля используются агрегатные функции?

В принципе в документации по вычисляемому полю достаточно подробно описано использование агрегатных функций. Приведу ключевую выдержку из данного раздела документации:

В вычисляемых полях можно использовать агрегатные функции: Sum, Avg, Min, Max, Count. При построении выражений с агрегатными функциями используется следующий формат:

[<Коллекция>][<Условие>].<Агрегатная функция>(<Выражение>)

<Коллекция> - указывает коллекцию записей, по которой рассчитывается значение агрегатной функции. Пустая пара скобок указывает на источник данных всего отчета.

<Условие> - задает условие, определяющее, какие записи должны участвовать в вычислении агрегатной функции. Чтобы получить агрегированное значение по всем записям, удалите это логическое предложение вместе с квадратными скобками (например, [].Count()).

<Агрегатная функция> - одна из доступных агрегатных функций.

<Выражение> - указывает выражение, возвращающее значение используемое агрегатной функцией. Функция Count не требует значений полей для подсчета записей, поэтому для этой функции оставьте круглые скобки пустыми.

При вычислении агрегатной функции внутри группы для обозначения полей используется символ ‘^’. Например:

[[^.SerialNumber] == [SerialNumber]].Sum([M1]).

Но, если вам необходим явный пример, то во вложении представлена отчетная форма с таким примером.
Пример использования агрегатных функций.7z (2.2 КБ)

Не это хотелось увидеть. Подробнее опишу мою задачу. Имеем форму Ведомость параметров. В таблице несложно сделать строку “Итого”, в ячейке которой с помощью агрегатных функций можно посчитать сумму, среднее и т.д., для всего столбца таблицы потребления.

Я хочу вычислять сумму столбца скриптом вычисляемомо поля, а не через настройку свойств ячейки таблицы. Пробовал писать так:
[Report][].Sum([Q - Теплопотребление (ГКал)])
но ничего не получается,
а вот так:
Sum([Q - Теплопотребление (ГКал)])
вместо суммы по столбцу за все дни отчёта, получаю только за один последний день.

Таблица отчетной формы не является источником данных, в отличии от полей отчета. Собственно поэтому в первом случае у вас ничего и не могло получится.

А вот что касается второго варианта, то направление как раз верное. Единственное вам необходимо перенести ваше вычисляемое поле как минимум на уровень выше в раздел “Архив потреблений”. Только обязательно после этого отредактируйте выражение данного вычисляемого поля, указав актуальный путь параметра теплоснабжения относительно нового местоположения вычисляемого поля.

[Теплоснабжение 1 ].Sum([Q - Теплопотребление (ГКал)])

  • вместо суммы за заданный период, получаю только за один последний день.

Sum([Теплоснабжение Точка учета1 (Потребление).Теплоснабжение 1 .Теплоснабжение 1 ].[Q - Теплопотребление (ГКал)])

  • ничего не выдает.
    И даже вот так:
    [Теплоснабжение Точка учета1 (Потребление).Теплоснабжение 1 .Теплоснабжение 1 ].Sum([Q - Теплопотребление (ГКал)])
  • ничего не выдает.

В своем предыдущем комментарии я писал

Вы задаете расположение для агрегатной функции, а не для параметра теплоснабжения. У вас он задан в скобках агрегатной функции и именно к нему она обращается.

Теперь понял, Спасибо!