Определение статуса дня
При анализе трендов транзакций в разные периоды года могут возникать характерные проблемы, связанные с невозможностью быстрого определения статуса дня (рабочий, выходной или сокращенный) для определения зависимостей. Данный демопример позволяет присвоить статус дня по каждой дате операций и подсчитать рабочие/нерабочие/сокращенные дни с помощью Loginom.
В сценарии используется компонент ↶Генератор календаря (выполнение) из библиотеки Silver-Kit версия: 3.2.0.
Примечание: Демопример имеет ограничение демонстрации всех возможностей при запуске на демостенде (Запустить демо). Рекомендуем установить пример локально.
Описание алгоритма
1. Импорт данных
Таблица «Импорт данных»
| Имя | Метка |
|---|---|
| ID клиента | |
| Дата транзакции | |
| Сумма |
2. Формирование календаря
В подмодели формируется производственный календарь, где каждой дате из временного интервала присваивается статус дня.
С помощью узла Таблица в переменные выделяются максимальное и минимальное значение даты из исходных данных, они преобразуются в переменные.
В производном компоненте ↶Генератор календаря (выполнение) формируется календарь в интервале, заданном значениями переменных.
Из-за особенностей REST-сервиса производственный календарь можно получить только на один календарный год, поэтому в подмодели Предобработка для обращения к сервису по исходным данным выделяются годы в строковом типе данных.
В данной подмодели получаем статусы дней с помощью сервиса isdayoff.ru.
В подмодели Получение статусов дней на один год реализуется получение статусов дня через REST-запрос к сайту https://isdayoff.ru. В узле JavaScript сначала проверяется наличие ответа от сервиса. Если данные получены, ответ преобразуется в табличный формат. Если данные отсутствуют, то выводится сообщение об ошибке.
Далее, с помощью узла Замена, для простоты понимания к ответу REST-запроса добавляются строковые значения:
0 — Рабочий день, 1 — Выходной день, 2 — Сокращенный рабочий день.
С помощью узла Цикл настроенного на подмодель Получение статусов дней на один год реализуется получение статусов дней для всех лет.
В узле Параметры полей выполняется отбор полей, которые будут использоваться в дальнейшей обработке.
Включен флаг — Добавлять идентификаторы итераций.
В узле Соединение создается производственный календарь, путем соединения полученных статусов с обычным календарем.
3. Слияние
В данном узле через Правое соединение к данным о клиентах добавляются Статусы дня.
В первом визуализаторе Куб показано, количество посещений клиентов в определенные дни.
Во втором визуализаторе Куб показано, сколько дней каждого статуса было за заданный промежуток времени.
На основе данных в визуализаторе может быть сформирован профиль клиента. Эта информация может быть использована отделом Маркетинга в дальнейшей работе.
Работа с компонентом Дата и Время
Скачайте и откройте файл в Loginom. При необходимости Loginom CE можно скачать бесплатно
Минимальные требования к системе:
- Операционная система: Windows 10 и выше
- CPU x64: 2 core 1
- Оперативная память: 4 GB
- Жесткий диск: 10 GB
1 Поддерживается работа на x64 процессорах Intel Core, AMD FX и более новых, содержащих инструкции SSE4.2, POPCNT.