В 2015 году одной из важных задач для компании «Топ Софт» стала разработка генератора запросов на языке DAX по заказу корпорации Intel, мирового лидера в области высоких технологий. Подобных решений практически нет на рынке, поэтому в проекте совмещались и исследования, и проектирование новой архитектуры, и программирование в сжатые сроки.
Язык DAX (Data Analysis eXpressions – выражения для анализа данных) создан компанией Microsoft для автоматизации расчетов в приложении Power Pivot для Excel, табличных моделях Analysis Services и Power BI.
Ранее компания «Топ Софт» уже использовала язык DAX в рамках проекта «Галактика BI» при тестировании работы компонент Ranet OLAP и дизайнера панелей мониторинга (Dashboard) «Галактика Бизнес-Монитор» (Ranet Analytics) на табличных моделях Analysis Services. Существующие решения легко и без каких-либо ограничений поддерживают работу с табличными моделями Analysis Services. Однако в ходе тестирования «Галактика Бизнес Монитор» запросы на языке DAX разрабатывались вручную.
Целью нового проекта стало создание автоматизированного генератора DAX-запросов. При этом должны были быть учтены все варианты использования, связанные произвольной группировкой полей из разных таблиц в запросе и фильтрацией данных, что является не тривиальной задачей. Однако компетенции и практический опыт специалистов Департамента перспективных проектов компании «Топ Софт» позволили успешно справиться с реализацией этого решения.
Преимущества генератора запросов:
- открытое API обеспечивает простоту встраивания компонент Ranet UI в другие приложения;
- оперирование простыми понятиями (фильтр, колонка) и освобождение разработчиков от необходимости в деталях разбираться с синтаксисом языка DAX;
- автоматическое создание DAX-запросов для анализа данных и формирования отчетов, что экономит время на разработку решений;
- наличие визуального дизайнера DAX-запросов позволяет разработчикам и бизнес-пользователям быстро настраивать аналитические отчеты, постепенно осваивая синтаксис языка DAX.