Możliwości integracji Power BI z systemami z rodziny Dynamics

Integracja Power BI z systemami z rodziny Dynamics

W jednym z artykułów, który ukazał się pod koniec stycznia na blogu erpnav.pl, znalazła się krótka informacja o możliwości wykorzystania Power BI w najnowszej wersji systemu Microsoft Dynamics NAV 2018. Faktycznie, wraz tą wersją systemu NAV, Power BI stał się jeszcze bardziej integralną jego funkcją. Warto jednak zauważyć, że nie jest to pierwsza, a na pewno nie jedyna opcja wykorzystania Power BI w ramach ekosystemu Dynamics (Microsoft Dynamics NAV, AX i 365). W dalszej części artykułu postaram się przybliżyć dostępne opcje, jak również wskazać, do realizacji jakich scenariuszy nadają się one najlepiej.

Ta znajomość trwa już kilka lat

Rozwiązania z rodziny Dynamics to przykład bardzo ścisłej integracji systemów transakcyjnych z platformą raportową. Pierwotnie elementy obszaru raportowania i analizy danych gromadzonych w systemach Dynamics bazowały na dobrze znanym i sprawdzonym mechanizmie raportowania, którego sercem był (i nadal jest) Report Server. Zgadza się, to właśnie SQL Server Reporting Services służyło pierwotnie za mechanizm umożliwiający tworzenie predefiniowanych, a także mniej standardowych raportów. Wykorzystanie Report Buildera do budowy raportów stało się dość powszechne, powstały nawet "paczki" raportów, które można dodać do swojego środowiska (niestety w momencie publikacji tego artykułu linki do tych paczek na stronach Microsoft nie są już dostępne). Nie ma jednak sensu ukrywać, że podejście to było dalekie od doskonałości w zakresie raportowania dla tak potężnego rozwiązania, jakim jest rodzina Dynamics. Warto też pamiętać, że wraz z rozwojem tych systemów pojawiały się również nowe możliwości integracji, także w obszarze raportowym.

Open Data Protocol i następstwa jego użycia

Microsoft Dynamics żył (i nadal żyje) w głębokiej symbiozie ze światem Web Service'ów w oparciu o SOAP (przyp. Simple Object Access Protocol). Dość dużą zmianą, a jednocześnie ułatwieniem w obszarze raportowania, było wprowadzenie OData począwszy od Microsoft Dynamics 2013. OData czyli Open Data Protocol to protokół sieciowy, który służy do pobierania i aktualizowania danych. Jego budowę dość dobrze opisuje równanie (zaczerpnięte z historycznych, ale wciąż wartościowych zasobów MSDN):

OData = HTTP/ATOM + Query + JSON + Metadane

W odniesieniu do rozwiązań Dynamics olbrzymią zaletą wykorzystania OData jest również to, że protokół ten jest niezależny od źródła danych oraz dane publikowane z jego wykorzystaniem mogą w pełni respektować logikę biznesową narzuconą przez aplikację oraz kontekst uwierzytelnionego użytkownika. Oczywiście, aby korzystać ze wszystkich zalet OData należy dokonać odpowiedniej konfiguracji. Pierwszy krok – to działania po stronie NAV, dzięki, którym publikowane dane będą dostępne poprzez OData.

Jakie dane są dostępne przez OData

W zasadzie nie jesteśmy tutaj specjalnie ograniczani. Chcąc dostać się do określonych danych wystarczy opublikować je poprzez OData. Może to być strona (Page), czy też zapytanie (Query), a dostęp realizowany jest poprzez określony URL. Do budowy zapytań korzystamy z Query Designer'a (Tools->Object Designer->Query->Design / New) lub też wskazujemy wybraną stronę (Page):

post_erpnav_Możliwości-integracji-Power-BI_12.03.18_1

W kolejnym kroku należy zapewnić, że efekt zapytania widoczny jest jako OData URL:

post_erpnav_Możliwości-integracji-Power-BI_12.03.18_2

post_erpnav_Możliwości-integracji-Power-BI_12.03.18_3

Czy to wszystko? W zasadzie tak, pozostaje teraz wykorzystać stworzone źródła w ramach Power BI. W tym miejscu istotna jest jedna uwaga. Powyższe przykłady opisują przygotowanie Microsoft Dynamics NAV do pracy z Power BI. W przypadku Dynamics AX proces konfiguracji wygląda nieco inaczej, jednak w efekcie również uzyskujemy dostęp do danych poprzez OData. Kroki konfiguracji realizowane są z poziomu ustawień administracyjnych organizacji: Organisational Administration \ Setup \ Document Management \ Document Data Sources

post_erpnav_Możliwości-integracji-Power-BI_12.03.18_4

Analiza danych z poziomu Power BI

Biorąc pod uwagę, że proces udostępnienia danych został zaadresowany z poziomu Dynamics, korzystając z OData, tego samego rodzaju źródła musimy szukać po stronie Power BI. Otwieramy PowerBI, a tam... mamy kilka możliwości.

1. Źródło OData

Źródło OData to najbardziej generyczny konektor, jaki można wykorzystać, aby zapewnić sobie dostęp do opublikowanych danych. Co ważne w zależności od systemu źródłowego, adres wykorzystywany do połączenia wygląda nieco inaczej.

W Dynamics AX:

http://<Server Name>:8101/DynamicsAx/Services/ODataQueryService/

W Dynamics NAV:

https://instance.navserver.com:7048/DynamicsNAV90_Instance1/OData/Company('CRONUS%20International%20Ltd.'), gdzie:

  • "instance.navserver.com" – nazwa serwera NAV,
  • "DynamicsNAV90_Instance1" – nazwa instancji NAV,
  • "Company('CRONUS%20International%20Ltd.')" – nazwa firmy.

W Dynamics 365:

Dla wdrożeń wewnętrznych (non-IFD) https://server/crmorganization/api/data/vn.0, gdzie:

  • server/crmorganization to ścieżka aplikacji sieci Web dla organizacji Microsoft Dynamics 365,
  • vn.0 to wersja Microsoft Dynamics 365, taka jak v8.0 dla Microsoft Dynamics 365.

Na przykład https://contoso1/contosocrm/api/data/v8.0.

W przypadku wdrożeń IFD https://[organization_URI]/api/data/vn.0, gdzie:

  • organization_URI to pełna nazwa domeny dostępnej przez Internet,
  • vn.0 to wersja Microsoft Dynamics 365, taka jak v8.0 dla Microsoft Dynamics 365.

Na przykład, organizacja Contoso ma następujący adres URL: https://crmweb.contoso.com/api/data/v8.0.

Jako, że do tworzenia raportu wykorzystywany jest generyczny konektor OData, niestety ta opcja tworzenia raportów wymaga od użytkownika końcowego samodzielnego budowania raportów krok po kroku. Oczywiście samo umieszczenie w raporcie odpowiednich atrybutów nie należy do najtrudniejszych, jednak w wielu przypadkach niezbędne będą także znacznie bardziej skomplikowane modyfikacje w obrębie raportu. Właśnie z myślą o takich potrzebach powstają dodatkowe konektory oraz szablony rozwiązań dostępne w Power BI Desktop, jak również w usłudze powerbi.com

2. Konektor Dynamics NAV

Konektor Dynamics NAV w momencie publikacji tego artykułu jest w wersji Beta. Konektor ten umożliwia w zasadzie natychmiastowy dostęp do pulpitu nawigacyjnego, zawierającego najbardziej istotne dane systemu NAV, zaprezentowane w dość przystępnej formie:

post_erpnav_Możliwości-integracji-Power-BI_12.03.18_5

Dane prezentowane w ramach pulpitu pochodzą z następujących encji NAV:

  • ItemSalesAndProfit
  • ItemSalesByCustomer
  • powerbifinance
  • SalesDashboard
  • SalesOpportunities
  • SalesOrdersBySalesPerson
  • TopCustomerOverview

Czy to wszystko?

Patrząc przez pryzmat możliwości Power BI Desktop – TAK. Jednak w tym miejscu dostrzec można prawdziwie możliwości usługi Power BI. Jeszcze do niedawna możliwości raportowe ograniczały się do szablonów rozwiązań (solution templates), które można było uruchomić i skonfigurować do działania. Obecnie szablony rozwiązań zastąpione zostały przez aplikacje dostępne w repozytorium aplikacji (App Source) pod hasłem Power BI Apps. Wśród wspomniany aplikacji znaleźć można zarówno gotowe pulpity nawigacyjne, jak i proste źródła/listy typu Lista zamówień/Lista dostawców. Co bardzo istotne, wspomniane aplikacje dotyczą wszystkich systemów z rodziny Dynamics.

post_erpnav_Możliwości-integracji-Power-BI_12.03.18_6

post_erpnav_Możliwości-integracji-Power-BI_12.03.18_7

post_erpnav_Możliwości-integracji-Power-BI_12.03.18_8

post_erpnav_Możliwości-integracji-Power-BI_12.03.18_9

post_erpnav_Możliwości-integracji-Power-BI_12.03.18_10

Dzięki wykorzystaniu aplikacji uzyskujemy szybki dostęp do podsumowań, takich jak np.:

  • Pulpit danych finansowych:

post_erpnav_Możliwości-integracji-Power-BI_12.03.18_11

  • Podsumowanie aktywności prowadzonych z klientami:

post_erpnav_Możliwości-integracji-Power-BI_12.03.18_12

  • Czy też aktywności marketingowych:

post_erpnav_Możliwości-integracji-Power-BI_12.03.18_13

Dodatkowo w przypadku Dynamics 365 Online dostępne są również do pobrania szablony plików Power BI (pbix), wśród nich:

Kilka słów na koniec

Jako podsumowanie warto wskazać kilka elementów:

Najnowsze wersje produktów ekosystemu Dynamics umożliwiają ścisłą integrację z Power BI – dzięki czemu efekty w postaci tworzonych raportów mogą być osadzane bezpośrednio w Dynamics (artykuł opisujący, jak to zrobić dostępny na erpnav.pl).

Opisane podejście można stosować w najnowszych wersjach produktów Dynamics. Biorąc jednak pod uwagę, że pierwszy z opisanych sposobów bazuje na natywnym konektorze OData, można go stosować dla wszystkich wersji systemów, w których możliwy jest dostęp do danych w oparciu właśnie o ten protokół. W przypadku szablonów i aplikacji Power BI zastosowanych w starszych wersjach, mogą jednak występować różnice w dostępnych i publikowanych domyślnie obiektach oraz ich atrybutach, co uniemożliwi wykorzystanie predefiniowanych pulpitów.

Należy zwrócić również uwagę na zapisy licencyjne produktów Dynamics 365 czy też NAV, gdyż w przypadku najnowszych wersji określonych produktów, są one dostarczane z licencjami umożliwiającymi korzystanie z Power BI w formie osadzania raportów w ramach Dynamics. W przypadku pozostałych produktów należy zadbać o odpowiednie licencje dla użytkowników korzystających z raportów przygotowanych oparciu o Power BI. Dla przykładu Dynamics 365 Unified Operations Plan dostarczany jest wraz z licencją na osadzanie raportów Power BI w ramach interfejsu użytkownika – jednak bez prawa do użycia Power BI do celów innych niż związanych z Dynamics 365. Pozostałe Plany wymagają już licencji Power BI, niezależnie od formy jego użycia.

Podobnie w przypadku Dynamics NAV 2017/2018 – w ramach Starter Pack dostępna jest licencja Embedded Power BI, umożliwiająca wykorzystanie Power BI w ramach NAV.

Źródło zdjęć: https://msdn.microsoft.com/pl-pl/

Autor:

Bartłomiej Graczyk, Microsoft

Cloud Data Architect & CEE Technical Evangelist


Blog autora


Opublikowano
arrow_back Poprzednia
apps Zobacz pozostałe
arrow_forward Następna