Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
| product:api:integration_examples:power-bi [21.07.2025 09:17] – ekaterina.menkhuzina | product:api:integration_examples:power-bi [21.07.2025 10:12] (текущий) – [Добавление нового источника данных] ekaterina.menkhuzina | ||
|---|---|---|---|
| Строка 29: | Строка 29: | ||
| Для того чтобы при импорте в PowerBI обращаться к API ADVANTA, надо использовать скрипт на [[https:// | Для того чтобы при импорте в PowerBI обращаться к API ADVANTA, надо использовать скрипт на [[https:// | ||
| \\ | \\ | ||
| - | <image shape=" | + | <image shape=" |
| \\ | \\ | ||
| В используемой инсталляции Python для работы скрипта нужно также установить менеджер пакетов - '' | В используемой инсталляции Python для работы скрипта нужно также установить менеджер пакетов - '' | ||
| Строка 38: | Строка 38: | ||
| * matplotlib и pandas - библиотеки для работы с данными, | * matplotlib и pandas - библиотеки для работы с данными, | ||
| \\ | \\ | ||
| - | <image shape=" | + | <image shape=" |
| \\ | \\ | ||
| ===== Создание проекта в PowerBI ===== | ===== Создание проекта в PowerBI ===== | ||
| Строка 45: | Строка 45: | ||
| <image shape=" | <image shape=" | ||
| \\ | \\ | ||
| - | ==== Добавление нового источника данных | + | ==== Добавление нового источника данных ==== |
| + | <callout type=" | ||
| + | - Зайти во вкладку " | ||
| + | - В открывшемся окне зайти на вкладку " | ||
| + | <image shape=" | ||
| + | </ | ||
| + | В отчете создаем новый источник данных: | ||
| + | \\ | ||
| + | <image shape=" | ||
| + | <image shape=" | ||
| + | \\ | ||
| + | В поле " | ||
| + | <code python> | ||
| + | # не забудьте установить требуемые библиотеки Python: | ||
| + | # python -m pip install requests matplotlib pandas | ||
| + | |||
| + | import requests | ||
| + | from pandas import json_normalize | ||
| + | |||
| + | # данные пользователя для подключения к инсталляции ADVANTA | ||
| + | # LOGIN = '' | ||
| + | # PASSWORD = '' | ||
| + | |||
| + | # лучше использовать токен - см. Вики | ||
| + | # https:// | ||
| + | # https:// | ||
| + | |||
| + | TOKEN = ' | ||
| + | |||
| + | # адрес сервера с системой ADVANTA (при необходимости можно указать справа от домена каталог установки, | ||
| + | DOMAIN = ' | ||
| + | |||
| + | # переменная для хранения параметров сессии | ||
| + | session = requests.Session() | ||
| + | |||
| + | # авторизация в ADVANTA | ||
| + | response = session.post( | ||
| + | url=DOMAIN+'/ | ||
| + | ### если используем подключение с помощью логина и пароля | ||
| + | # json={ | ||
| + | # ' | ||
| + | # ' | ||
| + | # }, | ||
| + | |||
| + | ### если подключаемся, | ||
| + | json={ | ||
| + | ' | ||
| + | }, | ||
| + | ) | ||
| + | |||
| + | # сохранение полученных авторизационных cookies для дальнейшего использования | ||
| + | cookies = session.cookies.get_dict() | ||
| + | |||
| + | # получение данных из LINQ-запроса | ||
| + | response = session.post( | ||
| + | url=DOMAIN+'/ | ||
| + | cookies=cookies, | ||
| + | json={ | ||
| + | # указать ваш код LINQ-запроса и его параметры | ||
| + | ' | ||
| + | ' | ||
| + | }, | ||
| + | ) | ||
| + | |||
| + | # возвращаем данные в Power BI в нужном для дальнейшей обработки формате | ||
| + | projects = json_normalize(response.json()) | ||
| + | </ | ||
| + | - Заполнить данные для авторизации, | ||
| + | - В строке DOMAIN указать адрес сервера, | ||
| + | - Подключить использование сессии - выбрав авторизацию в Системе ADVANTA через логин и пароль, | ||
| + | - Указать ключ LINQ-запроса из ADVANTA, который был сохранен ранее. Также можно ограничить количество данных, | ||
| + | \\ | ||
| + | <callout type=" | ||
| + | |||
| + | После заполнения всех параметров нажимаем " | ||
| + | \\ | ||
| + | <image shape=" | ||
| + | \\ | ||
| + | Для формирования дашборда необходимо сделать столько источников в PowerBI, сколько их нужно импортировать из ADVANTA, т.е. один LINQ-источник = один источник данных в PowerBI. В последующем, | ||
| + | |||
| + | ==== Формирование дашборда в PowerBI ==== | ||
| + | После добавления всех необходимых источников в модели данных PowerBI можно связать поля источников между собой для автоматической фильтрации данных в дашбордах. В примере свяжем ProjectId из таблицы " | ||
| + | \\ | ||
| + | <image shape=" | ||
| + | <image shape=" | ||
| + | \\ | ||
| + | На основе загруженных данных можно создать необходимые визуализации в PowerBI, подключая их к нужным источникам данных. | ||
| + | |||
| + | Например, | ||
| + | \\ | ||
| + | <image shape=" | ||
| + | \\ | ||
| + | Также можно сделать таблицу с перечнем контрольных точек и базовой датой их окончания. | ||
| + | \\ | ||
| + | <image shape=" | ||
| + | \\ | ||
| + | Так как данные двух таблиц связаны, | ||
| + | \\ | ||
| + | <image shape=" | ||
| + | \\ | ||
| + | После настроек визуализации готовый файл PowerBI необходимо сохранить. Дальнейшая настройка дашбордов в PowerBI осуществляется стандартными средствами данного приложения. | ||