Использование агрегатных функций Назад В начало Вперед

Для автоматизации агрегирования данных можно использовать функции:

Использование агрегатных функций имеет смысл в контексте определенной группы. Посему, для явного обращения нужно использовать идентификатор группы в качестве префикса к имени функции. По умолчанию подставляется последняя закрытая группа. В качестве параметра можно использовать произвольное вычисляемое выражение. Тип результирующего выражения всегда приводится к максимальному, с сохранением сущности. Например, byte, word, integer, longInt всегда приводятся к comp, а single - к double.

Пример

_loop aTable
{
  ...
  groupBy g1 : aTable f1
  {
	// g2.grSum( f3 );  тут сумма не доступна
	groupBy g2 : aTable f2
	{
	// здесь по умолчанию ничего не работает
	g2.grSum( f3 ); // так получим сумму с нарастающим итогом
}
	sum( f3 ); // так мы обращаемся к сумме группы g2
	g2.grSum( f3 ); // или так мы обращаемся к сумме группы g2
  }
  g1.grSum( f3 ); // а можно и так, но в данном случае g1 было писать не обязательно
  ...
}

Версия

Атлантис 5.03