Руководство пользователя

Начало работы

Начало работы

Добро пожаловать!

Приветствуем Вас в базе знаний Fastboard! Здесь вы узнаете, как устроена наша BI-система, познакомитесь с ее возможностями и узнаете, как наиболее эффективно их использовать.

База знаний разбита на части, где описаны элементы системы:

Начало работы  — вступительная часть, где вы знакомитесь с системой и делаете первые шаги

Панель администратора  — здесь описаны возможности, доступные администратору

Менеджер проектов   — страница. где можно просмотреть список своих проектов и управлять ими

Конструктор дашбордов  — основной рабочий инструмент, позволяющий создавать и просматривать отчёты

Диспетчер данных  — комплекс инструментов для импорта и преобразования данных

Последние обновления — перечень последних изменений и обновлений Fastboard

Библиотека виджетов  — подробное описание возможностей всех доступных визуализаций

Если Вы не нашли здесь интересующей Вас темы, попробуйте воспользоваться поиском или напишите нам по адресу welcome@winsolutions.ru. Мы всегда рады помочь!

Начало работы

Как устроен Fastboard?

Fastboard можно условно поделить на три основных части:

  1. Менеджер проектов — это страница, которую вы видите после логина. На ней размещены все доступные вам проекты, можно создавать новые и управлять существующими.

    image.png




  2. Визуальный редактор дашбордов — страница, на которой происходит компановка визуализаций, их настройка и оформление.

    image.png




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

    image.png

    image.png


Начало работы

Быстрый старт

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

  1. Войдите в систему с правами разработчика или администратора.

  2. Создайте проект и откройте его.

    image.png


    На этом этапе вы уже можете начинать создание дашборда. По умолчанию во всех виджетах включен режим прототипирования (или виртуальных данных). Так что для начала работы иметь в проекте реальные данные вовсе не обязательно. В левом верхнем углу под кнопкой возврата на главную страницу находится библиотека виджетов.  

    image.png

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

    image.png


  3. Подключите источник данных. Для этого необходимо создать новое подключение. Кнопка «Создать подключение». Подробнее о создании и типах источников.

    image.png



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

    image.png

    После того как выбор сделан нажимаем кнопку «Вставить в скрипт». После этого окно закроется и мы увидим скрипт загузки сгенерировный для импорта выбраннцих таблиц и полей.


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

    image.png


  6. По завершении загрузки перейдите на вкладку "Модель данных".

    image.png


  7. На экране модели данных добавьте на лист таблицы, которые вам нужно соединить. В случае, если в вашей модели данных только одна таблица, добавьте ее на лист, нажмите "Сохранить" и переходите к шагу 10.
    image.png


  8. Выберите нажатием основную таблицу, к которой будут присоединены остальные. (1) В нашем примере это таблица "Incidents", к которой по ключу "TypeId" можно присоединить таблицу "IncidentTypes". Выберите таблицу, которую вы хотите присоединить(2), тип связи(3) и нажмите "связать"(4).

    image.png


  9. Далее вам необходимо выбрать поля(1)(2), по которым будут связаны таблицы. Выбрав оба поля, нажмите "OK".(3) При необходимости, шаги 7-9 можно повторить для добавления дополнительных таблиц. 

    image.png


  10. После того, как вы закончили построение модели данных, нажмите кнопку "Сохранить"(1), а затем кнопку перехода на экран конструктора дашбордов(2).

    image.png

  11. Выберите нужную вам визуализацию и добавьте ее на лист.image.png


  12. Включите режим "Реальные данные" в параметрах виджета, выберите поля для разрезов и показателей. Ваша первая визуализация готова!

    image.png

Менеджер проектов

Главная страница приложения. Начальная точка входа в приложение. 

Менеджер проектов

Навигация

image.png

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

  1. Навигация по разделам Черновики и списоку потоков доступных пользователю.
  2. Центральный блок. Название выбранного в данный момент потока и навигация по его вкладкам «Проекты» и «Доступы»
  3. Правая боковая панель. Содержит информацию о выбранном проекте и его версиях
  4. Выпадающее меню. Содержит кнопки выхода и перехода в панель администратора (только для пользователя с ролью «Админ»)

Черновики и список потоков

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

Черновики — постоянный поток пользователя с ролью «Админ», «Разработчик», «Аналитик». Проекты находящиеся в этом потоке видны только данному пользователю. Поток нельзя удалить или переименовать. Во всем остальном он ничем не отличается от других потоков.

Для роли «Зритель» черновики не предусмотренны, так как эта роль предназначена для бизнес-пользователей, которые не занимаются разработкой.

Действия со списком потоков:
  1. Создать поток. Кликом по кнопке «Создать поток» вызывается модальное окно для ввода названия. Далее по клику на кнопке «создать», новый поток появляется в списке доступных пользователю.

  2. Удалить поток. При наведении на элемент списка, либо на название в титульной части, справа от названия появится кнопка «корзинка». (Доступно при наличии прав на управление) 

    image.png   image.png

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

  3. Переименовать поток. В титульной части при наведении на название появится иконка «Карандаш». Клик на ней откроет модальное окно в котором можно изменить название потока. Для подтверждения изменений нажать на кнопку «Готово». «Отмена» закроет модальное окно без изменений. (Доступно при наличии прав на управление) 

    image.png

  4. Фильтрация списка через поиск. В поисковой строке над списком потоков можно ввести поисковый запрос. В списке останутся только проекты в названии которых содердится коомбинация введенных символов. Клик по крестику в поисковой строке очистит строку и фильтрация сбросится

    image.png

Центральный блок

Кроме перименования и удаления потока этот блок содержит навигацию по вкладкам. Одна из которых проекты

Проекты

Вкладка содержит все проекты находящиеся в данном потоке.

Доступ

О правах доступа

image.png

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

Выдать доступ другому пользователю к потоку можно следующим образом:

  1. Клик по кнопке «Добавить» справа вверху от таблицы
  2. В открывшемся модальном окне в выпадающем списке выбрать пользователей и группы пользоватлей, которым необходимо предоставить доступ к потоку. 

    image.png


  3. Выбрать права доступа. 
  4. Подтвердить операцию кликом на кнопке «Добавить»

Правое боковое меню

Активируется ликом на иконку «i».

image.png

Содержит две вкладки:

image.png


Менеджер проектов

Работа с проектами

Создать проект

Черновики — место, где можно создать новый проект. Клик на «большой плюс» откроет модальное окно, где нужно ввести название новому проекту. И после подтверждения он появится в списке проектов.

image.png
Далее с проектом доступны следующие действия:

  1. Копирование на месте, либо в другой поток
  2. Перенос в другой поток
  3. Откат к одной из предыдущих версий
  4. Защита от изменений
  5. Переименование
  6. Просмотр информации о проекте
  7. Удаление

В контекстном меню по правой кнопке мыши выбираем одно из действий:

image.png

 

Копировать проект

Сценарий 1. Простое копирование

  1. В модальном окне выбрать поток куда требуется скопировать проект. 
  2. Изменить название если требуется создать независимую копию.
  3. Подтвердить кликом на «Копировать» 
  4. Будет создана новая копия проекта

image.png

Сценарий 2. Копирование с заменой

  1. Выбрать поток
  2. Поставить чекбокс «Заменить существующий»
  3. Выбрать проект который необходимо заменить
  4. Подтвердить кликом на «Заменить»
  5. Содержимое проекта будет заменено скопированным. Ссылка на проект останется неизменной. Технически произойдет обновление версии проекта. 

image.png

В любом сценарии чекбокс «Запустить импорт после создания» инициирует импорт данных в созданный проект согласно скрипту загрузки.

 

Откатить проект

Во время работы с проектом в визуальном редакторе или в диспечере данных при каждом нажатии на кнопку «Сохранить» (визуал, скрипт загрузки, или модель данных) в истории проекта создается новая точка сохранения. Таким образом в проекте хранится история его изменений. В информации о событии сохранения содержится время сохранения и логин пользователя который произвел это сохранение. При необходимости можно восстановить какое-либо из сохраненных состояний, то есть откатить, к нужной версии. 

В открывшемся модальном окне необходимо выбрать точку к которой необходимо восстановить проект. Далее есть два варианта:

  1. Откатить. Состояние проекта будет восстановленно к выбранной точке
  2. Создать копию. Из выбранной версии проекта будет создана независимая копия. Для нее на следующем шаге нужно будет ввести название и продтвердить кликом на кнопке
image.png image.png


Переместить проект

В открывшемся модальном окне необходимо выбрать поток в который необходимо переместить проект. И подтвердить кликом на кнопку «Переместить»

image.png

 

Защитить проект

Защита проекта это механизм предотвращающий случайную перезапись проекта. Когда проект защищен от записи его можно открыть и даже сделать какие-либо изменения. Но при попытке сохранить возникнет ошибка.

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

Защищенный проект отмечен специальным знаком замочка в карточке.

image.png

 

Переименовать проект

Для переименования проекта в появившемся модальном окне нужно ввести новое название и подтвердить изменение кликом на кнопку «Переименовать»

image.png

 

О проекте

Это модальное окно в котором будет показана информация о проекте

Конструктор дашбордов

Конструктор дашбордов

Общий вид

image.png

Страница конструктора дашбордов состоит из следующих элементов:

  1. Кнопка возврата на страницу управления проектами
  2. Кнопка добавления визуализации
  3. Кнопка добавления фильтра
  4. Кнопка добавления текстового блока
  5. Пример текстового блока
  6. Пример визуализации
  7. Вкладки страниц дашборда
  8. Рабочая область проекта. Размерами этой области ограничены перемещения элементов
  9. Пример фильтра
  10. Кнопка "Диспетчер данных": открывает диспетчер данных, управляющий подключениями и импортированными данными
  11. Кнопки вызова панели настроек: открывает глобальные настройки проекта
  12. Кнопка просмотра SQL-запроса визуализации: позволяет просмотреть SQL-запрос, формирующий все визуализации на листе
  13. Кнопка сохранения проекта: сохраняет внесенные в проект изменения. Если ее не нажать, то после закрытия страницы с проектом изменения будут утеряны.
Конструктор дашбордов

Настройки проекта

Общие настройки

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

image.png

Режим просмотра

Активирует режим имитирующий работу в режиме просмотра, при котором выделение виджетов, их перемещение по странице и изменение размеров заблокировано.

Модель данных по умолчанию

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

Реальные данные (еще не реализовано)

Переключатель управляет тем будут ли отображены реальные данные (если они загружены) в визуализациях проекта. Режим "Принудительно" позволяет обойти локальные настройки виджетов, влияя на весь проект целиком.

Размеры рабочей области

Включает или отключает отображение рамки по краям рабочей области

Конструктор дашбордов

Настройки страниц

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

image.png

Элементы управления настройками страниц

  1. Переименовать страницу
  2. Изменить ширину и высоту рабочей области
  3. Создать пустую страницу
  4. Создать страницу-дубликат выбранной
  5. Изменить порядок страниц
  6. Скрыть или отобразить страницу
  7. Удалить выбранную страницу
Конструктор дашбордов

Палитры

Палитра — набор цветов, доступных для использования в конструкторе дашбордов для всех элементов использующих изменение цвета.

image.pngНастройки палитр

Создание и удаление палитры

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

Чтобы создать палитру необходимо кликнуть по одной из кнопок в секции «Создать палитру»:

Секция управления палитрами

Далее необходимо дать название новой палитре в поле «Переименовать палитру»

Удаление палитры происходит в этой же секции. При нажатии на кнопку «Удалить палитру» будет удалена текущая палитра.

Работа с цветом


Секция работы с цветом

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

Выбор текущей палитры

Позволяет активировать другую палитру из списка

Селектор текущей палитры

Образцы и наборы цветов

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

Наборы цветов в палитре

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

Элементы управления

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

Чтобы создать группу нужно нажать . Будет создана группа с образцом цвета выделенным на момент нажатия кнопки.

Удалить образцы можно с помощью ;

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

Редактирование цветов

Изменить образец цвета можно двумя способами:

  1. Ввести HEX или RGB код текстовое поле
  2. Изменить параметры цвета с помощью трехпозиционной шкалы по модели HEX

Независимо от способа после ввода кода или изменения значений вручную эти поля синхронизируются

Конструктор дашбордов

Темы оформления

Тема оформления — это цветовое решение интерфейса проекта и системы в целом. Базовых тем по умолчанию две: тёмная и светлая. Вы можете внести изменения в существующие темы или создать неограниченное количество новых тем.

Светлая и темная темы

Вкладка «Темы»

image.png

Переключение между темами

В первой секции выведен список тем проекта. Напротив каждой есть иконка «Глазок». Текущая тема подсвечивается «акцентным цветом» (в данном случае голубым). Чтобы активировать другую тему нужно кликнуть на соответствующий глазок другой темы.

image.png

Удаление темы

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

Последнюю тему в списке удалить не получится 

Создание темы

Чтобы создать новую тему, нужно кликнуть на соответствующую кнопку в той же первой секции. Новая тема будет создана как копия текущей. В списке тем появится еще одна строчка, а в название новой темы будет состоять из исходного + "copy".

image.png

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

Цвета темы

Оформление интерфейса приложения устроено таким образом что все элементы и все заливки разделены на уровни. Каждому уровню присвоен свой цвет. Таким образом оформление всего интерфейса состоит из 10 основных цветов + 1 акцентный + 1 сигнальный.

Элементы:
Level 1 — Заголовок виджета, название секции, некативный фильтр, неактивный разрез, неактивная кнопка, текст в полях ввода и селектах, значения в виджетах, текст кнопок меню
Level 2 — Названия страниц, подзаголовок виджета, метки осей, текст в легенде
Level 3 — Подписи настроек меню
Level 4 — Координатные оси графиков
Level 5 — Разделители, рамки
Accent — Цвет активных элементов, режимов, страниц

image.png

Редактирование темы

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

image.png

Итак, чтобы изменить параметры какого либо из цветов темы, нужно кликнуть на нем левой кнопкой мыши. Затем как и в редакторе палитры изменить параметры можно двумя способами:

  1. Вводом (вставкой) HEX или RGB кода цвета в поле для ввода
  2. Перемещением ползунков по модели HSL

Тема для редактора кода

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

image.png

Конструктор дашбордов

Добавление виджетов

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

image.png

Виджет — единица дашборда. Экземпляр трансформируемого контейнера, оформление, внутреннее содержание и логика работы которого зависит от выбранного типа из библиотеки. После создания и выделения виджета появляется доступ к его параметрам.

Конструктор дашбордов

Параметры виджета

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

image.png

В этом разделе мы рассмотрим общие принципы построения визуализаций. В разделе библиотека виджетов будут рассмотрены индивидуальные настройки для каждой.

Вкладка «Данные»

Эта вкладка содержит секции с верхнеуровневыми параметрами визуализации

image.png

Реальные данные

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

image-1681399227888.png

Модель данных

Позволяет выбрать одну из моделей данных, ранее созданных в конструкторе моделей данных. Данные из этой модели будут использоваться для данного виджета (построение графика, заполнение полей таблицы, получение значений для фильтрации и т.д.). Все виджеты использующие одну модель будут связаны через нее, то есть будут фильтровать эту модель и реагировать на ее фильтрацию. Такой подход будет полезен, если требуется отделить или изолировать какие-то данные используя общее хранилище.

Разрезы

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

image.png
Разрез. Выбор поля для вывода реальных данных.

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

Добавление нового разреза через кнопку «Добавить разрез». Если создается больше одного разреза, то для каждого создается своя визуализация и в виджете появляются вкладки с названиями разрезов, через которые можно получить доступ к этим визуализациям.

image.png
Пример визуализации с двумя разрезами

image.png

Дополнительное меню настроек разреза

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

Показатели

Как и для разрезов в показателях поля таблиц выбираются из импортированных данных. Но в случае с показателями необходимо обязательно указать агрегацию:

Виртуальные данные для всех показателей генерируются автоматически.

Пользовательское название для показателя указывается также как и для разреза в специальном поле ввода в ячейке показателя.

image.png

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

Добавление нового показателя через кнопку «добавить показатель»

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

image.png

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

Редактор SQL-запроса

Открыть редактор можно нажав на кнопку "SQL" в настройках виджета.

image.png

Интерфейс редактора состоит из полей: Разрезы, Показатели, Группировки и фильтры, а также карта модели выбранной в виджете.

image.png

Редактор SQL позволяет вам вручную редактировать запрос данных для каждого виджета. Скрипт редактора кода связан с выбором данных в интерфейсе. Когда пользователь выбирает поле для разреза и показателя в панели настроек, система генерирует SQL-запрос. И этот запрос затем можно изменить в редакторе. Например прописать другое поле для разреза и при сохранении изменений это поле изменится в интерфейсе. Кроме простого выбора поля в редакторе можно писать сложные выражения.

Поля "Разрезы" и "Показатели" соответствуют секции SELECT SQL-скрипта и разделены для корректной работы визуализаций.

Поле "Группировки и фильтры" соответствует секциям WHERE и GROUP BY, в нем можно прописать локальные параметры фильтрации, группировки, лимитов, действующие только на данный виджет. Все внешние фильтры будут применяться поверх локальных.

Карта модели позволяет отметить необходимы поля и по клику на кнопку «Добавить в текст» добавит все выбранное через запятую

Цвет

Имеет несколько режимов:

image.png

Мин/Макс значение

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

image.png


Вкладка «Вид»

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

Параметры контейнера

Заголовок

Позволяет задать заголовок для визуализации, а также скрыть или показать его на виджете

Подзаголовок

Позволяет задать подзаголовок для визуализации, а также скрыть или показать его на виджете

Подсказка

Управляет отображением подсказки на графиках при наведении на показатели.

Позиционирование заголовка

То как будут выравнены заголовки относительно контейнера визуализации. Применяется сразу ко всем заголовкам визуализации

Легенда 

вкл/выкл: Управляет видимостью легенды визуализации.
авто/вручную (отступ, пикселей:__): Управляет размером отступа легенды от границ виджета

Расположение: (внизу/сверху/слева/справа): Расположение легенды относительно сторон контейнера

Позиционирование(вверху, в центре, внизу; слева, в центре, справа): позиционирование внутри каждой из них.
Ширина контейнера легенды в пикселях, когда выбрано расположение «слева» либо «справа».

image.png

Вкладка «События»

 

Конструктор дашбордов

Виртуальные данные

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

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

 

Как работать с виртуальными данными

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

image.png

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

image.png

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

image.png

Конструктор дашбордов

SQL-преобразование данных


image.png

В Fastboard данные для визуализаций преобразуются в несколько этапов с помощью последовательно выполненных SQL-скриптов.

Этап 1: Редактор скрипта загрузки

image.pngНа этом этапе данные загружаются из источника данных во внутреннее хранилище Fastboard. В скрипте загрузки используется синтаксис и возможности Clickhouse (подробнее: https://clickhouse.com/docs/ru/sql-reference ). Данные, полученные с помощью скрипта загрузки хранятся в проекте в виде несвязанных таблиц. 

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

По умолчанию импорт каждой таблицы состоит из заголовка (например, Table "Brand") и трех секций:

Create @@@ - создает в clickhouse таблицу с указанными столбцами и типами данных

Delete @@@ - удаляет существующую таблицу из clickhouse при повторном запуске скрипта загрузки для корректной перезаписи данных

Read @@@ - считывает данные из источника, приводит типы данных к указанным и записывает в созданную ранее таблицу. 

Отладочная информация

Если при в коде скрипта загрузки были допущены ошибки, после сохранения и запуска скрипта они отобразятся в консоли: 

image.png


Этап 2: Конструктор моделей данных

Модель данных заменяет собой секцию FROM у запросов, по которым в конструкторе дашбордов строятся визуализации. Она строится в визуальном конструкторе и представляет собой набор таблиц проекта, соединенных операторами JOIN в одну. Моделей может быть произвольное количество, в зависимости от потребностей пользователя.
image.png

Этап 3: Конструктор дашбордов

В конструкторе дашбордов пользователь оперирует данными, обработанными в скрипте загрузки и объединенными в  модель данных. На этом этапе доступны кастомные SQL-запросы в следующих блоках:

SQL-редактор виджета

Формирует набор данных для отдельно взятой визуализации. В редакторе доступны для редактирования три поля: Разрезы, Показатели, Группировки и фильтры.

image.png

Разрезы и показатели определяют секцию SELECT запроса и разделены для того, чтобы правильно построить диаграмму. Разрезы представляют собой измерения, а показатели -- меры(агрегируемые данные). 

Группировки и фильтры определяют секции WHERE, ORDER BY и GROUP BY запроса.

image.png

Для агрегации показателей существуют встроенные функции (SUM, COUNT, AVG, MIN, MAX), а также "По выражению":

Показатель по выражению

image.png

image.png

Данная функция позволяет написать произвольное SQL-выражение для выбранного показателя. Это выражение будет добавлено в основной SQL-редактор виджета, в поле "Показатели", с указанием алиаса данного показателя.

image.png

Цвет по условию

Данная функция позволяет написать SQL-выражение для расчета и выбора цвета показателя из палитры. Например, 

case 
when Car.BRAND = 'Toyota' then '1'
when Car.BRAND = 'Mitsubishi' then '2'
else '3'
end

где цифры в одинарных кавычках это выбранные образцы цветаimage.png

SQL-редактор медиаблока

Медиаблок - виджет, позволяющий использовать текст с переменными, значение которых определяется SQL-выражением, а также картинки, также подставляющиеся с помощью SQL-запроса. 

SQL-редактор медиаблока не имеет полей "Разрезы" и "Показатели", вместо них одно поле "Переменные", аналогично определяющее секцию SELECT, и поле "Группировки и фильтры", аналогично стандартному редактору определяющее секции WHERE, ORDER BY и GROUP BY

Переменные в медиаблоке

Имена переменных назначаются на основной вкладке параметров медиаблока. Можно увеличить их количество кнопкой "Добавить переменную" или удалить выбранную переменную с помощью кнопки "Корзина". Переименовать переменную можно нажав на ее название.

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

Также в нем можно открыть редактор запросов для ввода выражения, которое определит значение переменной. Если для переменной не указано выражение, значением будет "undefined".

Картинки в медиаблоке

В режиме "Ссылка - По условию" работает аналогично функции "Цвет по условию". 

image.png

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

Отладочная информация

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

image.png

Этап 4: Результирующий SQL-запрос

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

Отредактировать результирующий запрос нельзя, для этого необходимо вернуться на предыдущие этапы.

image.png

Библиотека виджетов

Библиотека виджетов

Комбинированная диаграмма

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

Вкладка «Данные»

Кроме стандартных секций для данной визуализации предусмотрены следующие:

Тип

Показатели этой визуализации могут быть представлены в следующих типах:

  1. Стопкой. Высота каждого столбца является суммой значений
  2. Группой. Каждый столбец зависит от значения показателя
  3. Номинированная на 100%. На оси отображаются проценты от 0 до 100, значения показателей автоматически пересчитываются в процентах

Поворот на 90°

Вне зависимости от выбранного типа компоновки визуализацию можно повернуть на 90 градусов. За это отвечает специальная секция панели настроек

Выбор данных

На вкладке "Данные" для построения визуализации необходимы 1 разрез (измерение), которое является осью Х на графике и показатели (меры) (неограниченно), значения которых являются графиками (гистограммой или линейным). Могут быть добавлены альтернативные разрезы, которые создадут вкладки на графике.

Параметры показателей

Открыть окно параметров показателя можно, нажав на соответствующую кнопку:

Название из источника

Если включить этот параметр, в легенде визуализации отобразится название таблицы из источника вместо названия показателя

Доп. показатель

Если включить этот параметр, показатель будет отображен на дополнительной оси Y (отображение оси можно включить на вкладке "Вид")

Тип элемента

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

Столбик

В этом режиме показатели будут отображены в соответствии с выбранной компоновкой столбцов. При выборе режима "Столбик доступны следующие параметры:

Линия

На показатели в этом типе элемента секция «компоновка столбцов» не распространяется. Для этого типа элемента предусмотрены настройки графического отображения:

В этом типе элемента также как и в «столбцовом» предусмотрено управление расположением значений — над точкой или под точкой. А также поворот значений на 90°.

Цвет показателя

Для каждого показателя можно выбрать цвет

Параметры разрезов

Стандартные

Вкладка вид

Состоит из секций рассмотренных в разделе параметры виджета, а также:

Ось разрезов

Ось показателей

Ось доп. показателей

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

Приближение по горизонтали

Добавляет элементы управления, позволяющие выбрать для отображения в увеличенном масштабе нужную часть графика по оси X Параметр "Отступ" позволяет вручную отрегулировать расстояние элемента управления от края контейнера.

Приближение по вертикали

Добавляет элементы управления, позволяющие выбрать для отображения в увеличенном масштабе нужную часть графика по оси Y Параметр "Отступ" позволяет вручную отрегулировать расстояние элемента управления от края контейнера.

Ручные отступы графика

Позволяет вручную отрегулировать расстояние между изображением графика и любой из сторон контейнера. На изображении ниже установлены отступы со значением "0":

Библиотека виджетов

Круговая диаграмма

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

Вкладка «Данные»

Тип

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

примеры:


Пирог


Роза

Выбор данных

Для построения необходимы 1 разрез (измерение) и 1 показатель (мера). Могут быть добавлены альтернативные разрезы, которые создадут вкладки с альтернативными графиками. Более показателей добавить нельзя.

Параметры показателей

Кроме стандартных секций для линейного графика предусмотрены следующие:

Оформление

Подпись

То что будет выведено в подпись.

Формат значений

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

Параметры разрезов

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

Вкладка вид

Состоит из секций рассмотренных в разделе параметры виджета.

Библиотека виджетов

Таблица

image.png

Вкладка «Данные»

Для построения необходимы разрезы (измерения) и/или показатели (меры) (неограниченно), и те, и другие являются столбцами таблицы

Можно изменять порядок показателей, порядок разрезов, переместить показатель в разрез и наоборот. Однако на первом месте всегда располагается разрез

Дополнительно к стандартным основным секциям в этом виджете добавится

Сгруппировать все разрезы

Если разрезов больше одного, все они схлопнутся «под плюсик», в сводную таблицу. То есть в каждом значении верхнеуровнего разреза при раскрытии будут все значения вложенного. И так по цепочке до самого последнего (нижнего).

Параметры показателей

Сортировать по этому столбцу

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

Рассчитать итог

При условии, что строка итогов отображается, секция активирует показ итогового значения по данному показателю в соответствующем столбце таблицы с числовыми, денежными или процентными значениями. Значение процента итога - от 0 до 100.

Предусмотрен выбор функции агрегации (сумма, количество, мин/макс, среднее, медиана, пользовательское выражение).

Задать ширину столбца

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

Параметры разрезов

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

Задать ширину столбца

При активной настройке ширина столбца задается вручную в пикселях

Группировать

Сгруппирует (свернет под «плюсик») все разрезы которые идут после этого. То есть в каждом значении верхнеуровнего разреза при раскрытии будут все значения вложенного. И так по цепочке до самого последнего. Активация будет доступна только если этот разрез первый в списке, либо в предыдущем разрезе эта настройка уже активирована.

Вкладка "Вид"

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

Подсказка

При активной настройке в таблице выводится текст подсказки, который пользователь вводит вручную

Вертикальные линии

При неактивной настройке вертикальные линии в таблице будут скрыты. По умолчанию включено.

Горизонтальные линии

При неактивной настройке горизонтальные линии в таблице будут скрыты. По умолчанию включено.

Адаптивная таблица

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

Отбивка столбца разрезов

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

Отбивка шапки

При активации соответствующих чекбоксов строка заголовков («шапка») таблицы будет выделена фоном, жирной линией либо и тем, и другим.

Отбивка шапки

При активации соответствующих чекбоксов строка итогов таблицы (если она включена) будет выделена фоном, жирной линией либо и тем, и другим.

Отбивка строк

При активной настройке строки заливаются цветом через одну.

Внутренний отступ в ячейках

Для данного виджета предусмотрено управление внутренними расстояниями по вертикали и горизонтали.

Показать строку итогов

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

Расположение строки итогов может быть сверху таблицы, так и снизу

Библиотека виджетов

Диаграмма "Дерево"

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

Вкладка «Данные»

Выбор данных

  1. Для построения необходимы разрезы (измерения)(неограниченно) и 1 показатель (мера). Альтернативы добавлять нельзя. Более показателей добавить нельзя
  2. При добавлении более одного разреза ячейки делятся на доли по количеству значений второго разреза, а первый становится группой по этим долям (пример на рисунке) и тд.

Параметры показателей

Для диаграммы "Дерево" предусмотрены стандартные секции.

Параметры разрезов

Кроме стандартных секций предусмотрены:

Показать значения

При включении отображает значение каждого показателя внутри его доли на диаграмме

Вкладка «Вид»

Секции, рассмотренные в разделе параметры виджета.

Библиотека виджетов

Диаграмма "Heatmap"

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

Диаграмма Heatmap (градиент)

image.png

Диаграмма Heatmap (ступенями)

image.png

Вкладка "Данные"

  1. Реальные данные (вкл/выкл): переключает отображение реальных и виртуальных данных
  2. Ось X, Ось Y, Показатель: для построения необходимы 2 разреза (измерения), где каждое значение является координатами по оси X и Y соответственно и 1 показатель (мера), значение которого является значениями на пересечениях координат. Более показателей/разрезов добавить нельзя. Есть возможность настроить параметры показателя и разрезов.
    1. Параметры значений разрезов:
      • Показывать пустые значения: на оси разрезов будут отображены метки разреза у которых нет значений
      • Группировать по дате: отображение значений разреза на оси координат меняется в соответствии с выбранной группировкой
    2. Параметры значений показателя:
      • Показать значения: отобразить значения показателя на диаграмме
      • Ориентация: повернуть на 90 градусов
      • Начертание: включить жирный, курсивный и подчеркнутый шрифт
      • Размер: указать размер шрифта в пикселях
      • Межбуквенный интервал: установить интервал между символами в пикселях
      • Цвет: выбрать цвет символов
      • Форматирование значений: включить форматирование (например, вместо "1" отобразить "1,00 $"
      • Выбор формата: числовой, процентный, валютный (можно выбрать тип), долевой, степень числа
      • Дополнительные параметры формата: текстовое поле (разместить после числа произвольный текст),  уменьшить число знаков после запятой, увеличить число знаков после запятой, разбить число по три символа пробелами
  3. SQL: открыть SQL-редактор для этой визуализации
  4. Цвет: определяет цвет заливки прямоугольников со значениями показателей одним из нескольких режимов:
    1. Градиент: от минимального (цвет 1) к максимальному (цвет 2) значению лимита
      • Легенда отображается в виде градиента (см. рис "Диаграмма Heatmap (градиент)
      • Можно настроить промежуточные цвета (аналогично функциональности "Цвет по значению")

        image.png

    2. Ступенями: настраивается аналогично градиенту, но переходы цветов отсутствуют, отображаются только выбранные цвета.
      • Диапазон значений разбивается на эти цвета поровну и автоматически.
      • Легенда отображается в автоматическом режиме
  5. Лимит: ограничивает данные для построения диаграммы указанным количеством строк
  6. Мин/макс значение: ограничивает значения показателей в пределах, установленных данным параметром

Вкладка "Вид"

Аналогично комбинированной диаграмме

Библиотека виджетов

Пузырьковая диаграмма

Представляет собой две координатные оси и точки, расположенные на координатной плоскости. 

Для построения необходимы 1 разрез (измерение), где каждое значение является точкой (пузырьком) и 2 показателя (меры), значения которых являются координатами для точек. Более показателей/разрезов добавить нельзя.

image.png

  1. Реальные данные(вкл/выкл): переключает отображение реальных и виртуальных данных
  2. Построить диапазон по (выбор показателя): позволяет выбрать показатель для построения легенды, с помощью которой можно выбрать крайние значения (на рисунке расположена под диаграммой)
  3. Оси (выбор поля): Показатели, значения которых будут использованы в осях диаграммы. Параметры показателя:
    • Форматирование значений: включить форматирование (например, вместо "1" отобразить "1,00 $"
    • Выбор формата: числовой, процентный, валютный (можно выбрать тип), долевой, степень числа
    • Дополнительные параметры формата: текстовое поле (разместить после числа произвольный текст),  уменьшить число знаков после запятой, увеличить число знаков после запятой, разбить число по три символа пробелами
    • Мин/Макс для основных: позволяет выставить лимит значений показателя
  4. Пузырьки (выбор поля): Разрез, значения которого будут использованы для расположения и наименования пузырьков. Параметры разреза:
    • Название из источника(вкл/выкл): в названии показателя будет выведено название столбца (поля) из таблицы в модели данных
    • Пустые значения(вкл/выкл): скрыть либо показать ячейки столбца в которых отсутствуют значения
    • Показать значения (вкл/выкл): отобразить либо скрыть значения разреза на диаграмме
    • Форматирование: позволяет изменить вид и расположение значений разреза на диаграмме
  5. Размер пузырька: размер точек может быть задан дополнительным показателем (опционально)(например, на рисунке размер точки зависит от количества заказов, оформленных на одно название товара). Если показатель не добавлять, размер у всех точек будет один. Параметры показателя:

    • Название из источника(вкл/выкл): в названии показателя будет выведено название столбца (поля) из таблицы в модели данных
    • Тип элемента (базовый/показатель): если выбран "базовый", то все точки будут одинакового, указанного в параметре, размера. Если выбран "показатель" -- точкам будет присвоен размер в диапазоне от минимального к максимальному, в зависимости от значения показателя. 
  6. SQL: открыть SQL-редактор для этой визуализации
  7. Цвет пузырьков: определяет цвет заливки пузырьков со значениями показателей одним из нескольких режимов:
    1. Вручную: выбор одного цвета для всех пузырьков вручную
    2. Градиент: от минимального (цвет 1) к максимальному (цвет 2) значению лимита
      • Легенда отображается в виде градиента 
      • Можно настроить промежуточные цвета (аналогично функциональности "Цвет по значению")

        image.png

    3. Ступенями: настраивается аналогично градиенту, но переходы цветов отсутствуют, отображаются только выбранные цвета.
      • Диапазон значений разбивается на эти цвета поровну и автоматически.
      • Легенда отображается в автоматическом режиме
    4. По условию: цвет настраивается в зависимости от результата SQL-запроса, например:
      CASE 
      WHEN Car.BRAND = 'Toyota' THEN '1'
      WHEN Car.BRAND = 'Mitsubishi' THEN '2'
      ELSE '3'
      END
      где цифры в одинарных кавычках это выбранные образцы цвета
  8. Цвет значения: аналогичная предыдущей настройка цвета для подписей значений
  9. Лимит: ограничивает данные для построения диаграммы указанным количеством строк

Вкладка "Вид"

Аналогично комбинированной диаграмме

 

Библиотека виджетов

Медиаблок

Виджет который может содержать текст, фоновую заливку или картинку и зменять их свойства в зависимости от заданного пользователем SQL-выражения.

image.png

Вкладка «Вид»

image.png

Параметры текстовой части виджета

Параметры контейнера

Стандартная секция для всех виджетов. За исключением настройки цвета фона. Здесь фон может быть дополнительно по условию.

Модель данных

Выбор модели данных, к которой будет обращен SQL-запрос данного виджета

Свойства

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

Синтаксис:

Гиперссылку [url] можно сделать динамической, передав ее через переменную. Однако, в текст ссылки через переменную передать не получится. #{{var}}... - не сработает

image.png

 

image.png

 

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

Переменные

Список переменных, использующихся в тексте. Можно увеличить их количество кнопкой «Добавить переменную» или удалить выбранную переменную с помощью кнопки "Корзина". Переименовать переменную можно нажав на ее название.

image.png

Параметры переменной

image.png

Рядом с названием переменной находится кнопка, вызывающая редактор SQL-запроса для конкретной переменной. Сдесь можно написать выражение, изпользуя поля выбранной модели данных. В переменную попадет последнее полученое значение.

image.png

image.png


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

image.png

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

image.png

Свойства. Это такое же текстовое поле как в результируещем тексте, но только для этой переменной. В фигурные скобки этой переменной в основном блоке пойдет все что указано в локальном. Простой текст и/или ключевое слово «value», которое означает результат выражения переменной, если оно есть.  

Подсекции оформления текста переопределят свойства аналогичные основного текста для этой переменной после активации переключателя. 

image.png



SQL

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

image.png

Позиционирование

Данная настройка позволяет располагать текст относительно центра контейнера по горизонтали и вертикали:

• Слева
• По центру
• Справа

Свойства

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

Размер шрифта: задается вручную в пикселях

Межстрочный интервал: задается вручную в процентах

Межбуквенный интервал: задается вручную в пикселях

Цвет: любой цвет из палитры, либо один из интерфейсных цветов

Прозрачность: задается вручную в процентах

Внешние отступы: для данного виджета предусмотрено управление внутренними расстояниями по вертикали и горизонтали. Кнопка связи активирует одновременное изменение отступов виджета

Лимит

Позволяет установить ограничение итогового результата по количеству строк. По умолчанию установлен лимит 1.

Вкладка "Изображение"

Содержит параметры медиаблока, управляющие фоновыми изображениями

Тип

Позволяет выбрать источник изображения: база данных или внешняя ссылка. При выборе типа "БД" требуется указать поле, содержащее значения в формате http-ссылок на картинок. Если поле содержит более одной ссылки, появится слайдер для перелистывания картинок.
Пример картинки со слайдером:

image.png

Фон

Позволяет настроить условия для отображения картинок аналогично параметрам фона вкладки "Вид":

Пропорции

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

Библиотека виджетов

Фильтр «Выпадающий список»

Фильтр "Список"

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

Выбранные значения фильтра отображаются на листе как название фильтра и количество выбранных в нем значений. Фильтр имеет следующие элементы управления:

  1. Кнопка «Сохранить»: закрывает и активирует фильтр
  2. Кнопка «Отмена»: закрывает фильтр и не сохраняет изменения
  3. Кнопка "Крестик около названия активного фильтра: отменяет фильтрацию
  4. Кнопка «Корзина» в правом верхнем углу дашборда: отменяет все выбранные значения
  5. Вкладка с названием фильтра в верхней части дашборда: при наведении курсора мыши отображает активные значения фильтра; при нажатии на крестик отменяет фильтрацию

Основные настройки

Реальные данные

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

Модель данных

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

Применить ко всем листам

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

Название из источника

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

Имя фильтра

При включенном названии из источника оно дублируется как в источнике, иначе задается вручную.

Элементы фильтра

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

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

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

Позиционирование

Данная настройка позволяет располагать фильтры относительно центра рабочей области слева/по центру/справа

Отключить перемещение контейнера

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

Библиотека виджетов

Фильтр «По периоду»

Этот тип фильтра понимает только тип данных «Дата» и фильтрует ваш дашборд по выбранному в нем периоду

image.png

image.png

image.png

Имеет несколько режимов

Настройки

image.png

Параметры контейнера
Реальные данные

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

Модель данных

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

Применить ко всем листам

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

Название

Надпись которая будет выведена когда в фильтре ничего не выбрано

Позиционирование

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

Библиотека виджетов

Фильтр «Кнопки»

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

Основные настройки

Параметры контейнера
Реальные данные

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

Модель данных

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

Применить ко всем листам

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

Элементы фильтра

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

Внутренние отступы

Для данного виджета предусмотрено управление внутренними расстояниями по вертикали и горизонтали. Кнопка связи активирует одновременное изменение отступов виджета

Позиционирование

Данная настройка позволяет располагать фильтры в границах контейнера по левому краю/по центру/по правому краю.

Библиотека виджетов

Каскадная диаграмма «Водопад»

Представляет собой две координатные оси, на которых располагаются столбцы гистограммы. Используется для отслеживания последовательности изменений. Позволяет понять, каким образом на начальное значение повлиял ряд промежуточных факторов (выбираются в секции «Разрезы»).

image.png

Вкладка «Данные»

На данной вкладке предусмотрены стандартные секции, за исключением секции «Показатели».

image.png

Число показателей для каскадной диаграммы строго фиксировано. Для построения необходимо внести 2 показателя: начальный (по умолчанию «План») и конечный (по умолчанию «Факт»). Промежуточные столбцы будут формироваться автоматически в зависимости от разности конечного и начального значений: для положительной разности предусмотрен показатель «Позитив», а для отрицательной – «Негатив». 

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

Вкладка «Вид»

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

Ось разрезов

Переключатель для управления показом оси и меток разрезов на визуализации.

Линия оси

Регулирует отображение самой оси разрезов и её расположение (снизу или сверху) каскадной диаграммы.

Название оси

Переключатель для управления показом названия оси (не подписей) и его расположением под осью: выравнивание по левому/правому краю или по центру.

Авто/Вручную – переключатель, который позволяет задавать отступ названия от оси разрезов автоматически или с точным указанием количества пикселей для отступа.

Метки

Переключатель для управления показом подписей к каждому из разрезов на оси с возможностью точно указать количество пикселей для отступа.

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

Засечки меток

Переключатель для управления показом соединяющих линий между осью разрезов и метками. Можно установить засечки по центру столбцов гистограмм или по их краям.

Ориентация меток

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

Длина метки

Позволяет установить количество отображаемых символов в названии метки. Авто – показывать название полностью. Вручную – задать количество символов числом.

Шаг по оси

Позволяет установить частоту отображения меток на оси. Авто – количество меток регулируется размерами визуализации, если метки не помещаются, то скрываются n промежуточных меток для отображения без наложения текста. Вручную – строго фиксирует количество пропускаемых промежуточных меток (от 0 до n); если метки не помещаются, то будут отображаться с наложением текста.

Ось показателей

Аналогично оси разрезов, за исключением расположения оси (снизу или сверху), расположения названия (Внизу в центре или вверху) и невозможности задавать длину меток.

Приближение

Приближение по горизонтали

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

Отступ Авто/Вручную – переключатель, который позволяет задавать отступ инструмента для приближения от оси разрезов автоматически или с точным указанием количества пикселей для отступа.

Приближение по вертикали

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

Отступ Авто/Вручную – переключатель, который позволяет задавать отступ инструмента для приближения от оси разрезов автоматически или с точным указанием количества пикселей для отступа.

Вкладка «События»

На данной вкладке предусмотрены стандартные секции

Диспетчер данных

Диспетчер данных

Источники данных

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

image.png

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

image.png

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

В левой части страницы скрипта находится список созданных подключений. Этот список состоит из двух секций:

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

Создание подключения

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

image.png

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

image.png

База данных

Где необходимо заполнить реквизиты подключения:

Для Click House будет доступен дополнительный параметр HTTP/HTTPS
Для Oracle нужно будет указать формат даты, т.к. у каждого экземпляра этой СУБД формат даты может отличаться

image.png


Файл 
  1. В модальном окне заполнить/выбрать:
    • Название подключения
    • Расположения файла:
      • Загрузить. Файл также может быть загружен с локального компьтера пользователя. Но есть ограничение по объему 25мб. Размер может быть изменен в настройках системы. Папка для загрузки по умолчанию : /opt/fastboard/upload_{имя окружения}
      • С сервера. Папка Upload на вашем сервере, куда можно положить файл любого размера сторонними средствами 
    • Формат файла определится автоматически, если форматы CSV, TXT, JSON, XLS/XLSX, XML, QVD. Другие форматы не поддерживаются, но загрузить их можно, если в них структура данных одного из поддерживаемых форматов, то необходимо выбрать этот формат вручную
    • Все файлы в папке. Если отметить это чекбокс в выборе расположения будет только сервер, формат файла необходимо можно выбрать только вручную, будут выбраны все файлы выбранного формата содержащиеся в папке, а ткже появится поле для ввода маски для имени файла. Если указать маску, то выберутся только файлы подходящие под заданные условия
    • Автообновление. Система будет отслеживать изменения файла, или файлов. Если это произошло БД созданная из этого файла или файлов будет автоматически обновлена согласно произошедшим изменениям.

      Один файл Несколько файлов
      image.png image.png
  2. После выбора параметров необходимо нажать кнопку "Создать" для того, чтобы начать загрузку данных из файла в хранилище данных Fastboard.
  3. Из файла или файлов будет создан коннектор. В списке подключений появится новый источник с указанным названием из которого можно будет выбирать данные для проектов. 

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

Удаление коннектора

Может быть двух типов:

1. Из проекта. 

image.png

Нажатием на кнопку корзинки в списке коннектов проекта можно удалить все данные этого источника из скрипта загрузки. После чего нужно запустить скрипт чтобы обновить данные проекта/

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

2. Из списка коннектов. Если у пользователя есть права на управление источником, он может удалить его из системы. Для этого нужно вызвать модальное окно редактирования коннектора и в нем нажать кнопку «Удалить подключение»

image.png

Доступ к коннекторам

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

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

Пользователь с ролью «Администратор» всегда имеет права на управление любым коннектором. Всегда видит все конекторы и может ими распоряжаться.

В данный момент это функционал доступен только через API

Диспетчер данных

Выбор данных для загрузки

Для просмотра и выбора данных доступных в конкретном источнике необходимо кликнуть на нем в этом списке.

image.png

После того как выбор сделан нажимаем кнопку «Вставить в скрипт». После этого окно закроется и мы увидим скрипт загузки сгенерировный для импорта выбраннцих таблиц и полей.

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

image.png

Следующий шаг -- Создание модели данных.
Диспетчер данных

Редактор скрипта загрузки

Скрипт загрузки генерируется автоматически после выбора источников данных

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

image.png

Правила использования редактора

Добавить источник

Шаги Ожидаемый результат

В любом месте скрипта добавить строку
Source "Название коннекта"

где:

  • Source - ключевое слово обозначающее вставку нового коннекта,
  • "Название источника" - имя коннекта из списка источников
  • При вставке кода для импорта таблиц из этого источника  таблицы успешно загрузятся в БД проекта



Добавить таблицу из источника

Шаги Ожидаемый результат
  • Объявить название таблицы:
    Table "Car"

  • Определить и указать скрипту список полей новой таблицы. Для этого:
  1. Описать секцию Create (команда на языке Clickhouse для создания таблицы в БД проекта, в которую запишутся данные из таблицы-источника):
    Create @@@ - начало секции 
    CREATE TABLE IF NOT EXISTS - команда КХ на создание таблицы
    "id" String NULL, - поле таблицы, в которое будет записано значение из источника: "название поля" / тип данных / может ли быть пустым (если нет, not null)
        "createdAt" DateTime64 (6) NULL,
        "updatedAt" DateTime64 (6) NULL,
      ) ENGINE = MergeTree () 
    ORDER BY
      tuple ()
    @@@ - конец секции Create

  2. Описать секцию Delete (для удаления временной таблицы):
    Delete @@@
    ALTER TABLE "Car" DELETE WHERE 1=1
    @@@

  3. Описать секцию Read (Для выбора полей из таблицы-источника:
    Read @@@
    SELECT - команда (на языке источника) на выбор полей
      "id"::text, -  поле таблицы, которое будет взято из источника. "название поля" / тип данных. Для избежания ошибок при импорте всем полям данной секции прописывается тип ::text
      "createdAt"::text,
      "updatedAt::text,
    FROM
      "Car" - таблица источника
    @@@

  4. Описать секцию Write
    Write @@@
    INSERT INTO - команда на языке КХ на вставку данных созданную в КХ
      "Car" (
        "id",
        "createdAt",
        "updatedAt"
      )
    @@@


  5. Необязательная секция 
    Optimize @@@
    OPTIMIZE TABLE "Car" DEDUPLICATE
    @@@
    По умолчанию есть. Если ее оставить, то произойдет дедубликация полей. Если это действие не требуется, секцию нужно удалить.



  6. Убедиться что каждое поле импорта имеет одинаковое название в секциях Create, Read, Write

  7. Нажать кнопку «Сохранить». Для сохранения изменений в тексте скрипта

  8. Нажать кнопку «Запустить». Для старта импорта данных согласно сохраненному скрипту загрузки
  • Добавленная таблица появилась в списке доступных на странице модели данных проекта

  • Новая таблица содержит все поля указанные в скрипте загрузки

  • Новая таблица может быть использована в модели данных

Удалить таблицу

Шаги Ожидаемый результат
  1. Удалить строку объявляющую таблицу
    Table "Car"

  2. Удалить секции Create, Delete, Read, Write для этой таблицы

  3. Нажать кнопку «Сохранить». Для записи изменений в тексте скрипта

  4. Нажать кнопку «Запустить». Для старта импорта данных согласно сохраненному скрипту загрузки
Удаленная таблица исчезла из списка таблиц на странице модели данных


Добавить поле из таблицы источника в таблицу импорта

Шаги Ожидаемый результат
  1. В список полей таблицы куда вставляем секции Create добавить строку: 
    "id" String NULL - "название поля" / тип данных / может быть пустым Null (если нет, not null)

  2. В список полей таблицы откуда импортируем для секции Read добавить строку с названием поля:
    "id"::text - "название поля" / тип данных (всегда текст)

  3. В список полей данной таблицы в секции Write добавить строку с названием поля:
    "id"

  4. Нажать кнопку «Сохранить». Для записи изменений в тексте скрипта

  5. Нажать кнопку «Запустить». Для старта импорта данных согласно сохраненному скрипту загрузки
На странице модели данных в данной таблице появилось поле "id" с типом данных, указанным в секции Create

Удалить поле из таблицы

Шаги Ожидаемый результат
  1. В списке полей таблицы в секциях Create, Delete, Read, Write удалить необходимое поле

  2. Нажать кнопку «Сохранить». Для записи изменений в тексте скрипта

  3. Нажать кнопку «Запустить». Для старта импорта данных согласно сохраненному скрипту загрузки
Удаленное поле исчезло таблицы на странице модели данных


Изменить тип данных поля

Шаги Ожидаемый результат
  1. В строке поля таблицы в секции Create изменить тип на один из поддерживаемых КХ: String, Int64, Float32 и т.д.
    Полный список типов

  2. Нажать кнопку «Сохранить». Для записи изменений в тексте скрипта

  3. Нажать кнопку «Запустить». Для старта импорта данных согласно сохраненному скрипту загрузки
Тип поля изменился в таблице 

В настоящий момент для применения любых изменений в таблицах (создание поля, переимнование поля, изменение типа поля и т.д.) необходимо пересоздать таблицу в БД проекта. Для этого после внесения всех изменеий к имени таблицы можно добавить, например _1, после этого сохранить, затем запустить скрипт. При необходимости вернуть таблице старое название тем же способом. (Это связано с текущими ограничениями парсера. Мы над этим работаем)


Создать вычисляемое поле в таблице

Шаги Ожидаемый результат

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

  1. В список полей таблицы в секции Create добавить новую строку с названием, типом, null, например:
    "field_name" Int32 NULL

  2. В секции Read добавить строку вида:
    func::text as "field_name" , где
    func - вычисляемое выражение, например "field_name1" + "field_name2",
    ::text - тип данных (всегда текст), 
    as "field_name" - алиaс поля

  3. В список полей данной таблицы в секции Write добавить строку с названием поля:
    "field_name"

  4. Нажать кнопку «Сохранить». Для записи изменений в тексте скрипта

  5. Нажать кнопку «Запустить». Для старта импорта данных согласно сохраненному скрипту загрузки
В таблице появится поле с назначенным типом данных и рассчитанными по заданному выражению значениями 

Создать новую таблицу "Календарь"

Вставить в скрипт загрузки следующий текст (обратите внимание на комментарии), после выполнения скрипта загрузки выполнить JOIN таблицы Calendar к вашей таблице фактов.

Table "calendar"

Create @@@
CREATE TABLE IF NOT EXISTS
  "calendar" (
    "id" Int32 NULL,
    "key_date"   String NULL,
    "date"   Date32 NULL,
    "index_day"   Int32 NULL,
    "day"   String NULL,
    "week"   Int32 NULL,
    "quarter"   Int32 NULL,
    "year"   Int32 NULL,
    "index_month"   Int32 NULL,
    "month"   String NULL
    
  ) ENGINE = MergeTree ()
ORDER BY
  tuple ()
@@@
 
Delete @@@
ALTER TABLE "calendar" DELETE WHERE 1=1
@@@

Source "promo_fb (RomanS)" -- Укажите любой существующий источник, чтобы сохранить в него вашу таблицу

Read @@@
SELECT
  a."id"::text,
  a."key_date"::text,
  a."date"::text,
  a."index_day"::text,
  a."day"::text,
  a."week"::text,
  a."quarter"::text,
  a."year"::text,
  a."index_month"::text,
  a."month"::text
FROM
(
select distinct
    row_number() over() as id,
    date(date)::text as key_date,
    date::date,
    extract('isodow' from date)  as index_day,
       CASE
           WHEN extract('isodow' from date) = 1 then 'ПН' -- Если нужно, укажите названия дней (и месяцев ниже)
           WHEN extract('isodow' from date) = 2 then 'ВТ'
           WHEN extract('isodow' from date) = 3 then 'СР'
           WHEN extract('isodow' from date) = 4 then 'ЧТ'
           WHEN extract('isodow' from date) = 5 then 'ПТ'
           WHEN extract('isodow' from date) = 6 then 'СБ'
           WHEN extract('isodow' from date) = 7 then 'ВС' end as day,
    extract('week' from date)     as week,
    extract('quarter' from date ) as quarter,
    extract('year' from date)     as year,
    extract('month' from date)    as index_month,
       CASE
           WHEN extract('month' from date) = 1 then  'Январь' 
           WHEN extract('month' from date) = 2 then  'Февраль'
           WHEN extract('month' from date) = 3 then  'Март'
           WHEN extract('month' from date) = 4 then  'Апрель'
           WHEN extract('month' from date) = 5 then  'Май'
           WHEN extract('month' from date) = 6 then  'Июнь'
           WHEN extract('month' from date) = 7 then  'Июль'
           WHEN extract('month' from date) = 8 then  'Август'
           WHEN extract('month' from date) = 9 then  'Сентябрь'
           WHEN extract('month' from date) = 10 then 'Октябрь'
           WHEN extract('month' from date) = 11 then 'Ноябрь'
           WHEN extract('month' from date) = 12 then 'Декабрь'end as month
from generate_series(date'2015-01-01',date(now()),interval '1 day')as t(date) -- Выберите дату начала и интервал
order by 
  date desc) a
@@@

Таблица в результате:

image.png

Некоторые особенности работы разными типами источников

MS SQL

1. При импорте данных с типом «Дата» нужно будет поля с датами в секции READ для этой таблицы сконвертировать в строку. КХ сам сконвертирует тип дата при создании таблицы у себя и они снова станут датами

image.png

2. Поля с кодировкой UTF16 (тип varchar) нужно будет обернуть в cast. В той же секции @READ для этой таблицы. Иначе русскоязычные значения не распознаются в этих полях и появятся вопросительные знаки

image.png

Диспетчер данных

Модель данных

После успешной загрузки данных необходимо построить модель для того чтобы система понимала как ей выбирать и коррелировать данные для показа. Вы можете создать произвольное количество независимых друг от друга моделей данных — например, в ситуациях, когда объединение определенных таблиц в одну модель нерационально, или отсутствуют признаки, по которым их можно объединить.

Управление моделями данных

image.pngПример использования нескольких моделей данных

image.png
Переименование модели данных

image.pngВыбор модели данных по умолчанию для проекта

image.png
Выбор модели данных для визуализации

Правила построения модели данных 

  • Для построения первой связи необходимо добавить в модель две таблицы
  • Связь между таблицами в модели строится по ключу — полю в котором у двух таблиц есть одинаковые значения
  • После построения первой связи, таблицы в модель добавляются последовательно по одной
  • Если в модель данных добавлено более одной таблицы, все они обязательно должны быть связаны (иначе кнопка "Сохранить" окажется неактивной)
  • Таблицу можно добавить в модель несколько раз — при последующих добавлениях к названию таблицы будет добавлено слово "copy", например, "Table1 copy" , "Table1 copy copy"
  • Таблицу можно удалить из модели данных, кликнув на кнопку "Корзина"
  • Таблицу можно переименовать, кликнув на кнопку "Карандаш" над названием таблицы, добавленной в рабочую область

Пример построения модели данных

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

image.png

Шаг 1

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

image.png

Шаг 2

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

image.png

В выпадающем списке «Таблица» выберите таблицу с которой будет связана выбранная. Затем выберите вид связи (JOIN). По умолчанию Inner.
Подтвердите свой выбор нажав кнопку «Связать».

Шаг 3

Для создания полноценной модели осталось выбрать только поля которые станут ключами созданной связи. Настройка связи осуществляется с помощью выпадающих списков, в которых перечислены поля связуемых таблиц. В них и требуется выбрать поле-ключ. После выбора обоих полей нажмите "ОК", чтобы подтвердить построение связи. 
Если вам нужно присоединить еще одну таблицу, добавьте ее в рабочую область и повторите шаги 2 и 3.

image.png

После этого в интерфейсе между таблицами появится визуальная связь. Теперь остается сохранить созданную модель данных. Для этого необходимо кликнуть по кнопке «Сохранить» в правом верхнем углу рабочей области.

image.png