﻿# Подключение BI к ELMA365 On-Premises на примере Power BI 

> [HTML Version](bi-elma365.html)

Вы можете подключать BI-системы построения отчётов, визуализации данных и аналитики к ELMA365 On-Premises. В статье приводится пошаговая инструкция на примере Power BI.

````
начало внимание

````
При внесении изменений в данные напрямую может нарушиться работа всего приложения. Используйте подключение только для чтения данных.

````
конец внимание

## ````
Установка ELMA365

Установите сервер ELMA365 на Ubuntu. Подробнее читайте в статье [«Установка ELMA365 Enterprise в Kubernetes»](installing-elma365-enterprise.md).

## Подготовка к установке Power BI

После успешной установки сервера ELMA365 нужно получить логин и пароль от БД PostgreSQL, а затем пробросить порт доступа к базе данных. Этот этап выполняется для редакций ELMA365 Standard и ELMA365 Enterprise том случае, если база данных PostgreSQL располагается внутри Kubernetes. Для установки с БД вне Kubernetes такая подготовка не требуется.

1. Получите логин и пароль от базы данных PostgreSQL, выполнив команду:

````
echo postgres:\$(sudo kubectl get secrets postgres -o jsonpath='\{.data.postgresql-password\}' | base64 -d)

2. ````
Создайте файл со следующим содержимым. Каждый пробел и отступ важен\!

````
apiVersion: v1  
kind: Service  
metadata:  
  name: postgres-external  
  namespace: default  
spec:  
  type: NodePort  
  ports:  
  - port: 5432  
    nodePort: 30432  
  selector:  
    statefulset.kubernetes.io/pod-name: postgres-0

````
Чтобы создать файл для терминала Ubuntu Server:

	- запустите консольный текстовый редактор Nano. Для этого напишите **nano**;

	- скопируйте и вставьте код в редактор. Закройте редактор, нажав **ctrl+x**;** **

	- сохраните изменения, нажав **Y**;

	- введите имя файла, например \[OBJECT\]

3. Выполните команду, передав туда файл:

````
sudo kubectl apply -f pgportforward.yaml

4. ````
Теперь можно подключаться к базе данных с другой машины в сети по IP-адресу и порту 30432.

## Установка Power BI

1. Загрузите Power BI и разверните его на машине-клиенте согласно инструкции.

2. Установите подключение к серверу ELMA365, используя БД PostgreSQL.

**(bi1.png)**

3. Задайте адрес сервера, порт 30432, имя БД, логин PostgreSQL и пароль, полученные на первом этапе [подготовки](#password).

**(bi-1.png)**

4. После успешного подключения получите список таблиц БД ELMA365.

**(BI-2.png)**

5. Выберите таблицы для получения отчёта.

**(bi-7.png)**

6. Загрузите таблицы в Power BI.  При некорректном отображении данных в столбцах таблицы используйте опцию **Выполнить анализ > JSON** на вкладке **Преобразование**.

**(bi-8.png)**

7. Настройте отображение нужных полей в столбце при помощи кнопки **(bi-3.png).**

**(bi-9.png)**

8. Установите связи между таблицами (при необходимости выборки из двух и более таблиц).

**(bi-4.png)**

9. На вкладке **Отчет** веберите представление данных: таблица, диаграмма или карта.

**(bi-5.png)**

10. Сформируйте и выведите данные в виде отчёта в формате **.pdf** или опубликуйте, используя функции Power BI.

**(bi-6.png)**

В случае прекращения использования Power BI закройте порт подключения к базе данных PostgreSQL. Это можно сделать одной из следующих команд:

- удаление сервиса **postgres-external**:

````
sudo kubectl delete service postgres-external

- ````
удаление сервиса **postgres-external** через файл \[OBJECT\]:

````
sudo kubectl delete -f pgportforward.yaml
````