Кейс: посчитать количество записей в таблице
Это - одна из основополагающих операций для многих аналитических расчётов. Но не очень очевидная с точки зрения реализации.
Чтобы было что посчитать, нужно добавить к таблице/объекту пустой числовой реквизит.
А чтобы Система поняла, что это счётчик, в показателе OLAP-куба сделать каждую его запись константой со значением «1».
Предположим, что мы хотим посчитать, сколько раз отгружали фрукты по договорам поставки. Таблица с исходными данными называется «Фруктов отгружено».
Шаг 1. Добавить индекс
Добавьте колонку «Индекс» в таблицу «Фруктов отгружено»:
- Если числовой реквизит «Индекс» еще не создан, создайте его: Администрирование → Структура базы данных → Реквизиты → «Создайте новый реквизит»:
- «Название» - Индекс;
- «Тип реквизита» - Число;
- «Число цифр до запятой» - 1;
- «Число цифр после запятой» - 0;
- «Максимальное значение» - 1;
- Добавьте его к нужной таблице.
Шаг 2. Создать и настроить OLAP-куб
2.1 Новый шаблон куба
Создайте новый OLAP-куб «Количество транзакций»:
- Администрирование → Структура базы данных → OLAP-кубы → «Создать».
- Заполните поля формы:
- «Название» - Количество транзакций;
- «Описание» - может помочь для поиска нужного OLAP-куба при дальнейших настройках;
- выберите иконку, чтобы было проще ориентироваться;
- «Число цифр после запятой» - 0;
- чек-бокс «Показывать только одну (последнюю по времени) запись по проекту» оставить пустым.
- «Режим обновления» - выберите в зависимости от общей нагруженности Системы и размеров данных, с которыми куб будет работать.
Чтобы данные для пользователей в отчётах открывались быстро, выберите «Один раз в сутки» или «По таймеру». Настройки таймера.
2.2 Создать измерения
- В созданном шаблоне OLAP-куба в блоке «Измерения» → «Создать».
Так будет выглядеть блок с измерениями в примере с яблоками:
2.3 Показатель-запрос из таблицы
Создайте показатель-запрос «Индикатор»:
- В блоке «Показатели» → «Создать».
- Блок «Свойства показателя OLAP-куба»:
- введите название измерения - Индикатор;
- «Тип показателя» - «Запрос»;
- «Свойства» - поставить чек-бокс на «Агрегация» и на «Скрытый».
- Блок «Настройки запроса»:
- «Источник» - «Таблица» → выберите из списка таблицу «Фруктов отгружено» (название той таблицы, в которую пользователи вносят информацию);
- «Реквизит» - выберите тот числовой реквизит, в который пользователи вносят количество проданных фруктов. Если числовой реквизит в таблице один, то и выбора не будет. Он встанет сюда сам;
- «Параметры»:
- «Измерение OLAP-куба» - выберите ранее созданное измерение – Фрукты;
- «Дата источника» - все даты, кроме «Системной» - это даты, которые относятся к объекту, из которого была сделана запись в таблицу; чтобы получить дату именно записи в таблицу, выбирайте «Системный»;
- «Дата OLAP-куба» - «Дата (точный)».
- Сохраните изменения.
2.4 Показатель-формула, чтобы посчитать
Создайте показатель-формулу «Количество сделок»:
- В блоке «Показатели» → «Создать».
- Блок «Свойства показателя OLAP-куба»:
- введите название измерения - Количество сделок;
- «Тип показателя» - «Формула»;
- «Свойства» - поставить чек-бокс на «Агрегация».
- Блок «Формула» → выбрать «Константа» → указать «1».
- Сохраните изменения.
Куб готов. Вы можете использовать его для дальнейших вычислений. Например, чтобы узнать сумму среднего чека.
Проверить, что Система посчитала, можно через создание OLAP-отчёта.





