Мы подготовили подборку со всеми значимыми обновлениями по итогам последнего квартала года. Изменения в функционале направлены на автоматизацию рутины для наших клиентов, чтобы они сосредоточились на самых приоритетных направлениях бизнеса.

Доработки графика Воронка

Были сделаны существенные доработки для графика Воронка, ниже будут перечислены пункты.

1. Можно выбирать колонку / строку, на основании которой строить график:

 

Для выбора доступны только колонки / строки числового формата.

  1. Появилась возможность настраивать параметры подписей внутри бара:

Для подписей внутри бара можно задавать настройки:

  • Values Type – то что отображать внутри бара. Тут доступно измерение из строк / столбцов, выделенные при построении графика строки / колонки, дефолтный параметр Percentage Value (описано ниже).
  • Font Size — размер шрифта.
  • Length — максимальная длинна подписи внутри бара.
  • Label Colors — цвет (для всех подписей одновременно).
  • Adjust Label to the Bar Size -подогнать размер шрифта и длину под размер бара.

 

В выпадающем списке при выборе колонки / строки для отображения внутри бара есть так же дефолтный параметр «Percentage Value». Этот параметр делит каждый бар на бар, который содержит максимальное значение т.е. считает процент от максимума:

  1. В блоке «Border» можно изменять цвет обводки баров:

  1. В блоке «Color Mode» доступны две цветовые схемы:
  • «Element by Element» — выбор цвета для каждого элемента отдельно.
  • «Gradient» — покраска градиентом от максимума до минимума:

  1. Можно задавать тултип на основании одной, двух или трех колонок / строк:

  1. Стало доступно использовать правую и левую оси для вывода дополнительной информации:

Настройки в большей степени по аналогии как и для подписей внутри бара:

  • Values Type – то что отображать внутри бара. Тут доступно измерение из строк / столбцов, выделенные при построении графика строки / колонки, дефолтный параметр Percentage Value.
  • Font Size — размер шрифта.
  • Length — максимальная длинна подписи внутри бара.
  • Label Colors — цвет (для всех подписей одновременно).
    • Based on the Elements Colors – позволяет задать цвет для подписей на осях такой же, как и цвет баров:

  • Line Colors – позволяет задать цвет для линий, которые соединяют подпись на оси с баром.
    • Based on the Elements Color – действует аналогично как и для подписей на оси, только делает цвет линии такой же как и цвет бара:

 

Настройки для осей доступны как для правой, так и для левой осей:

  1. Можно задавать отступы для графика справа и слева одновременно:

Иконки для графиков

При выборе графика добавились иконки:

Новый тип чтение таблиц Fast Read

Сейчас по умолчанию любая таблица открывается в актуальном состоянии, когда все данные, которые должны быть актуализированы – актуализированы.

Рассмотрим пример: в модели есть мультикуб «источник» и мультикуб «приемник». «Пользователь_1» нажимает на открытие приемника, в это время десять других пользователей ежесекундно вводят данные в источник, в таком случае во время открытия мультикуба «приемник» «пользователь_1» будет ждать пока данные станут актуальные. Но, так как обновление данных происходит постоянно, то «пользователь_1» в теории может ждать до тех пор, пока десять других пользователей не закончат ввод данных и в мультикубе «приемник» данные не перестанут изменяться, что может длиться минуту, две, три.

Настройка Fast Read позволяет открывать таблицу в любом состоянии т.е. в примере выше «пользователь_1» откроет «приемник», не ожидая пока в нем будут актуальные данные т.е. не ожидая пока десять других пользователей закончат ввод в «источник» и данные в мультикубе «приемник» станут актуальные на момент открытия мультикуба.

Настройка располагается в настройках модели на вкладке «Advance»:

 

Функция SELECT(TEXTSUM(),)

Логика аналогична функции SELECT(SUM(),), только вместо обычного SUM используется TEXTSUM.

Функция FINDTEXT()

Функция FINDTEXT ищет позицию элемента в подстроке.

Синтаксис:

FINDTEXT(A,B,C)

  • A – обязательный параметр. Символ, текст, позицию которого нужно найти. Аргумент может быть кубом или введенным в формулу текстом.
  • В – обязательный параметр. Текст, в рамках которого нужно искать указанный символ. Аргумент может быть кубом или введенным в формулу текстом.
  • С — опциональный параметр. Позволяет указать, с какой позиции начинать поиск. По умолчанию – 0 т.е. поиск всегда происходит с самого начала указанного текста. Аргумент может быть кубом числового формата или введенным в функцию числом.

Работа аналогична функции FIND() экселя.

Доработки учета регистра для функций FINDITEM() / FINDBYNAME() / FINDBYCODE()

Функции FINDITEM() / FINDBYNAME() / FINDBYCODE() по умолчанию учитывают регистр т.е. «Россия» и «россия» для этих функций не являются одинаковым текстом. Был сделан параметр, который позволяет игнорировать регистр при работе функций.

FINDITEM(X,Y,Z1,Z2)

  • X — обязательный параметр, любой справочник или его выборка.
  • Y — обязательный параметр, текстовое выражение, на основе которого осуществляется поиск элемента в X.
  • Z1 — необязательный параметр, уточняющий ареал поиска элемента в X. Возможные значения (строковые или числовые константы):
    • list или 0 (значение по умолчанию) – только по элементам, относящимся непосредственно к указанному справочнику (выборке справочника);
    • hierarchy или 1 – по всей иерархии указанного композитного справочника, в который помимо элементов самого справочника входят элементы родительских справочников.
  • Z2 — необязательный параметр, определяющий чувствительность к регистру при поиске элемента в X на основе значения параметра Y. Возможные значения (строковые или числовые константы):
    • case_sensitive или 0 (значение по умолчанию) — учитывать регистр при поиске элемента в X на основе значения параметра Y.
    • case_insensitive или 1 — не учитывать регистр при поиске элемента в X на основе значения параметра Y.

Большие выпадающие списки / фильтры

Раньше нельзя было открыть в фильтрах мультикуба или выпадающем списке справочник более ~ 10 000 элементов, сейчас сделана первая часть задачи для возможности удобно работать с измерениями большого размера в фильтрах и выпадающих списках.

Доработка доступна не во всех, но в основных компонентах системы, где используются большие справочники:

  • Фильтры мультикуба.
  • Выпадающие списки ячейки.
  • Фильтры дашборда.
  • Фильтры модели.
  • Окно для перемещения элементов в справочнике.
  • Окно для удаления элементов в справочнике.
  • Фильтр при построении / редактировании графика.

Доступно два типа отображения: Tree, Grid:

  • Tree – вид отображения справочника как было раньше, но с несколькими изменениями.

    • При открытии справочника загружаются только первые 1 000 элементов.
    • Поиск происходит только по загруженным элементам. Загрузить можно больше, если проскроллить справочник в конце и нажать «Загрузить еще».

    • В режиме Tree можно загрузить все элементы измерения, нажав на «Load All Data», в таком случае будет загружаться целиком справочник. Если справочник объемный, то загрузка всех элементов справочника приведет к зависанию страницы как и раньше.

    • Доступна опция сброса загрузки фильтра на первоначальное значение т.е. когда была загружена только первая тысяча элементов.

  • Grid – новый тип отображения справочников в фильтрах / выпадающих списках.

    • Подгрузка элементов происходит динамически т.е. по мере проскролливания фильтра / выпадающего списка происходит загрузка элементов справочника, загрузки всех элементов при открытии фильтра не происходит.
    • На текущий момент не доступен поиск, поиск будет доделан в следующих задачах.
    • Нет возможности скрывать, показывать уровни, функционал будет доделан в следующих задачах.

Система запоминает в рамках каждой таблицы и каждого пользователя, какой тип отображения (Tree или Grid) был выбран в последний раз т.е. пользователь выбрал режим Grid, закрыл фильтр, при следующем открытии фильтра будет открыт режим Grid.

В настройках модели можно задавать для всех пользователей, какой тип фильтра будет выбираться при первом открытии фильтра / выпадающего списка: Tree или Grid.

Автоматизации процесса загрузки OLAP сборок для возможности подмены версии BE

Функционал подмены версий BE имеет более технический характер и используется в основном в двух случаях:

  • когда в новом обновлении было допущено некорректное поведение и необходимо вернуть старую версию BE, чтобы модель работала корректно во время починки функционала разработчиками;
  • необходимо протестировать время выполнения операций на другой версии BE.

На вкладке Storage добавились две опции:

  • Storage Build – здесь в выпадающем списке можно выбрать версию BE, которую необходимо подменить для конкретной модели.
  • Storage Build Executable – способ запуска версии BE.

При изменении в опциях Storage Build и Storage Build Executable появляется окно, которое говорит, что для применения изменений модель необходимо перезапустить. Это можно сделать сейчас, тогда будет сделан бекап и модель перезапуститься, либо это можно сделать потом, тогда ничего не произойдет и изменения будут применены при следующем перезапуске модели.

OLTP на базе PostgreSQL

На данный момент возможно было развернуть OLTP на базе MySQL или ClickHouse, теперь так же возможно это сделать на базе PostgreSQL.

Сортировка элементов на графиках

В некоторых графиках на вкладке Data добавился блок Sorting on Values, который позволяет сортировать элементы от меньшего к большему, от большего к меньшему или отображать график без сортировки:

При условии отображения на графике более чем одного элемента (число_9 и число_10 на скриншоте ниже) все элементы суммируются по одному элементу измерения (месяцы на оси OX) и потом сортируются:

Т.е. в январе суммируются «число_9» и «число_10», в феврале суммируются «число_9» и «число_10» и так далее по всем месяцам. После суммирования происходит сортировка измерения месяцев.

Сортировка доступная на графиках:

  • Combination Chart;
  • Bar Stacked Chart;
  • Column Stasked Chart;
  • Biaxial Line Chart;
  • Biaxial Bar Chart;
  • Pie Chart;
  • Column Chart;
  • Bar Chart;
  • Line Chart;
  • Funnel Chart;
  • WaterFall.

Оптимизация первоначальной загрузки дашборда

Первоначальная загрузка дашборда стала происходить быстрее на 15-50%. Прирост скорости зависит от количества и сложности цепочек контекста на дашборде.

Настройка подписей к осям на графиках

В меню редактирования графика появилась новая форма: X/Y-Axis Labels, которая включает в себя следующие параметры:

  • Length (px) – длина подписи в пикселях;
  • Size (px) – размер шрифта подписи в пикселях;
  • Type – наклон подписи (горизонтальный, вертикальный, по диагонали);
  • Flip Lables – возможность отразить подпись по вертикали;
  • Hide Axis – возможность скрыть ось.

Все вышеперечисленные параметры недоступны при первом открытии меню редактирования (кроме Hide Axis, данный параметр доступен всегда).

Для того, чтобы открыть возможность редактирования данных параметров, необходимо в форме Interval of the Axes Points выставить режим редактирования Custom.

На следующем скриншоте представлен пример отображения очень длинных подписей на графике с выбранной ориентацией «Diagonally» и максимальным размером шрифта.

Системный мультикуб Variables и параметр Secret

В модель добавился системный мультикуб Variables, который может содержать в себе константы, относящиеся к модели (например, на текущий момент при создании новой модели в МК Variables появляется куб Model_ID, содержащий в себе ID модели).

Также появилась возможность закрыть звездочками данные куба, содержащего информацию, не подлежащую огласке или нахождению в открытом доступе.

Для реализации данного функционала нам нужен куб в текстовом формате. На
примере ниже это куб Password.

Включить отображение через звездочки можно в модальном окне настройки форматов. Новый параметр называется Secret.

После включения параметра Secret, значение в кубе заменяется на символы: «*****».

Если после включения функции Secret попробовать её выключить – куб автоматически

очистится, чтобы не допустить раскрытия конфиденциальной информации.

ВАЖНО

  1. Посмотреть, что скрыто в кубе через интерфейс пользователя нельзя т.е. нельзя открыть ячейку и посмотреть значения. Но данные из куба с параметром Secret можно получить из скрипта т.е. можно вписать пароль в текстовый куб, закрыть его с помощью параметра Secret и ссылаться в скрипте на куб с паролем для прохождения авторизации во внешних системах. Получается пароль не храниться в открытом доступе и в то же время его можно использовать в скриптах.
  2. На текущий момент в базе данных значение ячейки хранится в нешифрованном виде! Если создать дополнительный куб в текстовом формате и сослаться на засекреченный куб формулой TEXT(‘Password’), то данный доп. куб вытащит информацию из засекреченного куба в открытый доступ – это ограничение текущей реализации.

Фиктивные измерения (упрощенное Subsidiary View) и фильтрация по пользователям

Появилась возможность вырезать измерения из конкретного куба, не затрагивая при этом измерения мультикуба и добавить фиктивное измерение пользователей.

В режиме редактирования мультикуба появились два новых столбца:

  • User Context Dimension –для каждого куба можно добавить фиктивное измерение пользователей. Для конкретного куба добавляется новое измерение – измерение пользователей, но это измерение нельзя увидеть в таблице – оно фиктивное. При добавлениии фиктивного измерения пользователей происходит принудительная фильтрация по пользователю, под которым в данный момент происходит сессия.
  • Omit Dimesions — настройка позволяет исключить измерение из куба. При удалении измерения, элементы удаленного справочника продолжат отображаться в мультикубе. Основные формулы (формула ссылка, select, sum) будут срабатывать так, как будто измерение удалено из мультикуба, хотя визуально его можно увидеть. Удалить можно только пользовательские справочники т.е. время и версии удалить из куба нельзя.

Фильтрация по пользователям

Одним из кейсов, в котором можно применить новый параметр User Context Dimension является фильтрация в рамках текущего пользователя, т.е. булеан куб фильтрация, но только в рамках текущего пользователя.

Чтобы задать фильтрацию по пользователю вышеописанным способом нам понадобятся:

  • Наличие пользователя в системном справочнике Users.
  • Мультикуб-фильтр, с измерением по которому будет происходить фильтрация (на скриншоте «Months») и измерением Users:

  • В мультикубе, который необходимо фильтровать нужно сделать куб формата boolean и добавить фиктивное измерение пользователей:

  • Теперь можно производить фильтрацию в мультикубе «мк_1» по кубу «Фильтр», в рамках каждого пользователя, не имея при этом в мультикубе измерение пользователей. Т.е. пользователь i.kamaev@optimacros.com увидит только январь 2020, польователь test_1@mail.ru увидит только февраль 2020, пользователь v.kononov@mcb-consulting.com увидит только март 2020

ВАЖНО: Сейчас есть два ограничения:

  • Мультикуб можно фильтровать только по boolean кубу, который находится в рамках этого мультикуба.
  • Можно фильтровать только представление, в котором на одной из осей располагается измерение для фильтрации (в примере выше это измерение Months), а на другой оси измерение кубов, остальные измерения в фильтрах. Т.е. нельзя фильтровать представление, в котором измерение кубов находится в фильтрах.

Описанные выше ограничения будут сняты примерно в течении месяца.

Изменение дефолтных параметров для высоты и ширины на системных таблицах

В системных таблицах параметры ширины и высоты ячеек по умолчанию изменились.

К примеру, в режиме редактирования мультикуба, ширина всех параметров была одинаковой и некоторые наименования параметров обрезались.

Теперь ширина и высота параметров по умолчанию установлены так, чтобы все наименования были видны, а ячейки стали более информативны.

ВАЖНО!

В моделях, которые уже были созданы до этой доработки, логика будет следующая: если вы не изменяли ширину и высоту в системной таблице т.е. все параметры были дефолтными, то ширина и высота изменятся на новые дефолтные параметры. Если вы редактировали ширину и высоту определенной системной таблицы, т.е. параметры ширины и высоты не являются дефолтными, то таблица останется без изменений.

 

Gantt Chart (Диаграмма Ганта)

Диаграмма Ганта —  вид диаграмм, который используется для иллюстрации плана, графика работ по какому-либо проекту. Является одним из методов планирования проектов.

Для использования всех возможностей диаграммы Ганта нам понадобится мультикуб с кубами, представленными на картинке ниже.

  • Начало – куб в формате Date, обозначающий начало этапа проекта. Обязательно должен присутствовать для корректного построения диаграммы.
  • Конец – куб в формате Date, обозначающий окончание этапа проекта. Обязательно должен присутствовать для корректного построения диаграммы.
  • Цвет – куб в текстовом формате с данными в виде HEX-кода. Куб позволяет выбрать любой цвет бара на диаграмме. Необязательный куб.
  • Текст для события – куб в текстовом формате. Позволяет добавить описание для события на диаграмме. Необязательный куб.
  • Дата для события – куб в формате даты. Позволяет добавить события на диаграмме. Таких событий, может быть, до 4-х на одной диаграмме. Необязательный куб.
  • Percent – куб в процентном формате. Позволяет дополнительно указать статус выполнения текущего этапа на диаграмме. Необязательный куб.

При создании диаграммы Ганта на основании вышеописанных кубов, мы можем менять следующие параметры:

  • Начало и конец бара на основании куба – два выпадающих списка, позволяющих установить кубы, по которым в диаграмме будут построены бары. В вышеописанном мультикубе это кубы Начало и Конец.

  • Элементы начала и конца бара – позволяют установить для начала и конца бара следующие элементы: прямоугольник, стрелка, полукруг.

  • Цвет бара на основании куба – позволяет выбрать любой цвет для бара с помощью куба в текстовом формате. В вышеописанном примере это куб Цвет.

  • Подписи на основании куба – позволяет выбрать куб любого формата или справочник, расположенный в строках мультикуба в качестве подписи бара. Разделяется на три выпадающих списка, позволяющих установить подпись внутри бара, с левой стороны от бара, с правой стороны от бара.

 

График Route Map

Появилась первая версия нового визуального объекта — «Маршрутная карта» («Route Map»). Этот визуальный объект позволяет отобразить на карте мира маршруты в виде линий между точками маршрута, а также содержит большое количество дополнительных настроек.

Для использования всего текущего функционала маршрутной карты, нам понадобится

мультикуб со следующими кубами (имена для кубов произвольные):

  • Наименование точки – куб в формате Text. Как и следующий куб, удобно использовать для отображения информации о точке на объекте.
  • Описание — куб в формате Text. Как и предыдущий куб, удобно использовать для отображения информации о точке на объекте.
  • Coordinate – куб в формате Text. Координаты точки маршрута в формате «широта, долгота», например: 57.9036, 56.1828.

ВАЖНО: куб Coordinate временно требует именно такое наименование для

корректной работы маршрутной карты.

  • Иконка – куб в формате Text. Позволяет выбрать тип иконки, отображающей точку маршрута.
  • Цвет (HEX) – куб в формате Text. Позволяет выбрать цвет линии и иконки маршрута, указав требуемый HEX код в ячейке.
  • Порядок – куб в формате Number. Позволяет выбрать порядок, в котором будут построены маршруты.
  • Тип линии — куб в формате Text. Позволяет выбрать тип линии, на текущий момент доступны следующие варианты: dot, solid, Long Dash, dash.
  • Размер иконки – куб в формате Percentage. Позволяет изменить размер иконки на объекте.
  • Цель — куб в формате Text. Позволяет сгруппировать маршруты по единому признаку. Цель – только пример, признак может быть любой.

На скриншоте ниже отображен пример маршрутной карты:

 

 

Возможность задавать ширину и высоту для ячеек

В контекстном меню появилась настройка Высота/Ширина строк (колонок), позволяющая настроить нужную ширину и высоту.

При вызове настройки для строк, при наличии двух измерений в строках, имеем три вводимых поля:

  • All Rows Height – высота всех ячеек;
  • Row Headers Width (Cubes) – ширина хедеров для измерения кубов;
  • Row Headers Width (Years) – ширина хедеров для измерения годов.

При вызове настройки для колонок по аналогии имеем три вводимых поля:

  • All Columns Width – ширина всех ячеек;
  • Column Headers Height (Cubes) – высота хедеров для измерения кубов;
  • Column Headrs Height (Years) – высота хедеров для измерения город.

ВАЖНО: выбранные значения будут действовать и на новые элементы, которые добавляются в измерение.

Выгрузка аудита согласно фильтру

Ранее при экспорте событий аудита при помощи виджета Экспортировать данные, аудит выгружался полностью, несмотря на наложенные фильтры в виджете Фильтр по логу.

Теперь экспорт аудита осуществляется в соответствии с установленными фильтрами на момент выгрузки т.е. что видим на экране, то и экспортируется.

 

Изменения в боковом меню Логин Центра

В правом меню Логин Центра изменили расположение страницы: Invites, Invite new user и Create empty account.

Теперь они располагаются внутри выпадающего меню Users в верхней части меню.

Также, Invites был переименован в Recently Invited.

Пункт меню User accounts также теперь расположен во вкладке Users и переименован в All Users.

Кнопка с корзинкой, отображающая страницу с удаленными аккаунтами, тоже теперь располагается в выпадающем меню Users, под названием Deleted.

Новая страница Логин Центра, со списком аккаунтов, которые будут заблокированы за неактивность

В новом выпадающем меню Users появился список пользователей Upcoming Blocks.

Это список пользователей с указанием времени блокировки аккаунта в будущем за неактивность, в случае если аккаунт продолжит проявлять неактивность.

Список сортируется по датам от ближайшей к блокировке даты до самой дальней.

ВАЖНО: у пользователей с ролью Сервисный администратор отсутствует автоматическая блокировка за неактивность.

Изменения в пункте меню User Sessions в Логин Центре

Пункт меню User Sessions теперь представляет из себя выпадающее меню Sessions, которое состоит из двух подпунктов: Live Browsers и Named Tokens.

Live Browsers – отображает список сессий обычных пользователей, которые создаются путём входа пользователя через браузер.

Named Tokens – отображает список сессий, которые создавались вручную, для использования в интеграциях или скриптах. Данные сессии не истекают автоматически.

Возможность задавать способ хранения при создании кубов / свойств

При создании нового мультикуба через кнопку Добавить мультикуб с именем, появилась возможность выбрать способ хранения данных в кубах в создаваемом мультикубе.

Новый функционал теперь отображается в виде шестеренки в разделе описания создаваемых кубов.

При нажатии на шестеренку, появляется модальное окно Способ хранения.

На текущий момент для выбора доступны два способа хранения данных:

  • Sparse Simple / Разрежённый.
  • Planar / Планарный.

В способе хранения Sparse Simple / Разреженный есть возможность выбрать Тип, состоящий из двух вариантов:

  • Простой

  • Выборочный

Кроме того, при выборе способа хранения Разреженный есть возможность выбрать Заполненность в диапазоне от 0% до 50%.

Дополнительно: при создании нового куба в мультикубе или создании свойства в справочнике, если перед созданием выделить уже существующий куб / свойство, то создаваемый куб / свойство автоматически унаследует Способ хранения от выделенного.

Также при добавлении кубов через кнопки Добавить Кубы и Добавить Кубы с именами появилась опция Способ хранения, аналогичная описанной выше новой опции при создании мультикуба.

 

 

Возможность записи файлами в ORACLE.

Добавлена поддержка ускоренного экспорта в Oracle.

Данный функционал был реализован посредством скриптов с помощью ядра core export_import, начиная с версии 1.10.19.

Подробное описание можно изучить в разделе Support — Новые возможности скриптов