Категорія:
Пов'язані з базою даних
Статистичні (агрегатні)
Умовні
Повертає кількість записів (накопичувальну) поточного набору даних, які задовольняють вказаній умові.
Синтаксис
dataset_row_count_ex(
StepNo Integer,
GroupLevel Integer,
Condition String
): Integer
Параметри
StepNo вказує крок (прохід), в якому функція має обчислюватися. Можливі значення: 1 або 2. Якщо цей параметр дорівнює 1, то відповідна функція обчислюватиметься безпосередньо при обробці виразу. Якщо ж він дорівнює 2, звіт буде формуватися в режимі двох проходів і відповідна функція обчислюватиметься лише на другому проході обробки звіту, тобто вже після того, як набір даних звіту досягне останнього запису. Використання функцій баз даних на другому проході зручне у випадках, наприклад, коли потрібно підсумки по звіту (групі) помістити на початку звіту (групи).
Поєднання різних StepNo в одному виразі (напр., database_field_val(1, 'total_sum') + database_field_val(2, 'payment_sum')) можливе, але такі вирази повинні бути написані так, щоб функції з меншим StepNo розраховувалися раніше.
GroupLevel (рівень групування) може мати наступні значення:
1. Група рівня 1;
2. Група рівня 2;
3. Група рівня 3;
0. Звіт в цілому;
-1. Поточна сторінка.
Condition - булевський вираз. Але він повинен бути записаний як константа або детерміністичний вираз типу String.
Значення, що повертається
Тип: Integer. Фактично, всередині циклу записів показує номер запису (лише серед записів, що задовольняють умові Condition). В кінці циклу повертає кількість всіх записів (які задовольняють умові Condition).
Приклади використання
dataset_row_count_ex(
1,
0,
'dataset_field_val(1, ''Age'') > 50'
)