Automatyczne zapisywanie ‘paginated reports’ na OneDrive

Power BI Service umożliwia swoim użytkownikom osadzenie w przestrzeniach tzw. paginated reports. Są to raporty w formacie rdl, które można otworzyć i wyeksportować bezpośrednio z przestrzeni. Co jeśli jednak chcielibyśmy, aby raport eksportował się automatycznie i zapisywał na OneDrive? Przeanalizujmy taki przypadek.
Pierwszym krokiem będzie opublikowanie raportu w formacie rdl w przeznaczonej do tego przestrzeni. Aby to zrobić musimy mieć zainstalowane Power BI Report Builder. Jeśli to narzędzie nie jest zainstalowane to PBI Service automatycznie nas o to poprosi przy wyborze opcji dodania Paginated Report.

Rys. 1 Wybór Paginated Report w przestrzeni
Następnie w Power BI Report Builder publikujemy nasz raport. Publikowanie Raportu następuje w ten sam sposób jak w narzędziu Power BI Desktop. Istotny jest fakt, że paginated reports możemy opublikować tylko w przestrzeni Premium.

Rys. 2 Publikacja raportu do przestrzeni
Po opublikowaniu raportu możemy przejść do tworzenia procesu automatycznego zapisu raportów. Jeśli chcemy, aby raport korzystał z parametrów wcześniej przez nas deklarowanych, możemy to zrobić poprzez wyznaczenie parametrów w pliku excel. Parametry muszą być zapisane w tabeli, nie wystarczy tu samo wpisanie wartości w komórkach. Stworzony plik excel możemy zapisać w dowolnym miejscu na OneDrive.
Następnie, już w Power Automate, wybieramy kafelek Recurrence, w którym zadeklarujemy jak często i o jakiej porze chcielibyśmy, aby raport się generował.

Rys. 3 Deklarowanie częstotliwości generowania raportu
Następnym krokiem jest stworzenie kafelka, który zaczytuje parametry ze stworzonego wcześniej i zapisanego na OneDrivie pliku excel:

Rys. 4 Wczytywanie parametrów z pliku excel
Po przekazaniu ścieżki do pliku, Power Automate sam wykryje nam tabele z parametrami.
Aby paginated report generował się wielokrotnie, a nie tylko dla jednego parametru należy stworzyć pętle Apply to each. W naszym przypadku raport będzie otwierany tyle razy ile mamy zadeklarowanych parametrów, a następnie zapisywany każdorazowo do folderu na OneDrive.

Rys. 5 Zadeklarowanie pętli z odczytywaniem i zapisywaniem raportów
W kafelku Export To File deklarujemy przestrzeń z jakiej chcemy pobrać raport oraz jego ID. Wybieramy również w jakim formacie chcielibyśmy go zapisać. Dostępnymi formatami są PDF, PPTX i PNG. Podajemy również nazwy parametrów, które są wykorzystywane w raporcie i deklarujemy ich wartości na podstawie wcześniej stworzonego pliku excel.

Rys. 6 Parametryzowanie kafelka Export To File
Ostatnim krokiem jest deklaracja miejsca na OneDrivie, w którym chcielibyśmy zapisać wygenerowane raporty oraz jak chcemy nazwać nasz plik. W nazwie pliku możemy wykorzystać parametry z pliku excel, tak aby każdy z plików miał dla nas rozpoznawalną nazwę. Ważną rzeczą, o której należy tutaj pamiętać jest fakt, że mimo wcześniej deklarowanego przez nas formatu generowanego pliku musimy go jeszcze raz powtórzyć w nazwie (po znaku kropki).

Rys. 7 Ustawienie miejsca zapisu oraz nazwy wygenerowanych plików
Mając tak stworzony proces możemy go uruchomić. Po wygenerowaniu raportów dla wszystkich parametrów będziemy mieli je zapisane w odpowiedniej ścieżce.
Dzięki Power Automate możemy tworzyć także inne procesy, np. takie, które będą wysyłały raporty mailowo do użytkowników. Narzędzie to pozwala na wiele różnych kombinacji. Tworząc nowy projekt w Power Automate możemy korzystać z szablonów, które są umieszczone w narzędziu, aby łatwiej było nam zaprojektować nasze procesy.

Rys. 8 Przykładowe szablony w Power Automate wykorzystujące Power BI
Zapraszamy na naszego bloga po więcej artykułów związanych z Power BI.
Monika Wróblewska
Business Intelligence Developer