Jak zasilać raport Power BI danymi ze swojego dysku (bez użycia Power BI Data Gateway)
Transkrypt:
Czy zdarzyła się kiedyś Wam sytuacja, że po przygotowaniu raportu w Power BI (załadowaniu danych, opublikowaniu) i odświeżeniu go w usłudze okazywało się, że był on pusty? Aby zapobiec takiej sytuacji można wykorzystać Power BI Desktop: ponownie załadować dane i opublikować raport. Teraz powinien zawierać informacje.
Sytuację można jednak także rozwiązać w inny sposób – bez wykorzystania Power BI Data Gateway, odświeżając raport z danych, które posiadamy na dysku. Potrzebny będzie nam w tym celu Office 365. Zacznijmy od przyjrzenia się mechanizmowi odświeżania. Znajduje on się w zestawach danych (datasets). Kiedy aktualnie spróbowalibyśmy go wykorzystać w celu odświeżenia raportu na podstawie danych, które posiadamy na dysku, bez Gateway’a oczywiście się to nie powiedzie.
Zróbmy zatem tak, aby operacja zakończyła się powodzeniem. Tak więc, posiadam raport, zawierający 2 źródła danych: plik Excelowy (znajdujący się na lokalnym dysku) oraz plik o rozszerzeniu CSV. Plik Excelowy powinien zostać potraktowany przez Power BI jako lokalizacja na OneDrive, z której będziemy mogli wczytywać dane. Aby dokonać zmiany wybieramy zakładkę Power Query, wskazującą źródła danych. Widzimy, że aktualnie wskazany jest lokalny plik. Przejdźmy teraz do pliku (przy pomocy Excela) i spróbujmy odczytać jego lokalizację na dysku OneDrive. W sekcji info znajduje się przycisk „copy path”. Aby otrzymać czysty adres, wskazujący na plik: kopiujemy ścieżkę dostępu (path) i usuwamy część z parametrem.
Teraz spróbujmy wstawić otrzymany adres do Power BI. Kiedy pierwszy raz łączymy się z naszym OneDrive zostaniemy poproszeni o poświadczenia. Za kolejnymi razami nie będziemy już o nie proszeni (wyjątkiem jest sytuacja, w której wyczyścimy cache przeglądarki – w sensie: PBI Desktop). Wybieramy konto organizacyjne oraz logujemy się. Pamiętajmy, korzystamy z tego samego konta, którym logujemy się do OneDrive. Następnie wybieramy opcję Połącz. Te same kroki zreplikujmy dla drugiego pliku. Z tym wyjątkiem, że w jego przypadku zostawiamy nazwę sprzedaż.csv.
Dane zostaną oczywiście przeładowane, ponieważ nastąpiła zmiana ich źródła. Kiedy raport zostanie załadowany, możemy go opublikować. Nowy, opublikowany raport będzie oczywiście zawierał podmienione źródło danych. Odświeżmy raport celem sprawdzenia, czy wszystko działa. Oczywiście nie powinno działać. Power Bi informuje nas czerwonym wykrzykiem o błędzie. Wynika on z faktu, że brakuje nam poświadczeń. Power BI nie wie przy pomocy którego użytkownika będziemy chcieli dostać się do danych. Proszę zobaczyć, że po wprowadzeniu zmiany w naszym raporcie mamy 2 źródła danych. Tak jak to było poprzednio jedno to plik excelowy, a drugie plik CSV. Teraz, podobnie jak w przypadku Power BI, po raz kolejny wprowadzamy poświadczenia. Wybieram poświadczenia typu OAUTH2, następnie te same ustawienia co przy pierwszym wprowadzaniu poświadczeń. Wybieramy opcję sign-in odpowiedniego użytkownika. Power BI nie poprosi mnie po raz drugi o hasło, ponieważ jestem aktualnie zalogowany do usługi.
Teraz sprawdźmy, czy możemy odświeżyć dane. W tym celu po raz kolejny przejdźmy do obszaru data set, wybierzmy odśwież. Tym razem nie wyświetlił nam się komunikat błędu. Kiedy sprawdzilibyśmy historię odświeżenia zobaczylibyśmy tam komunikat „completed”.
Sprawdźmy jeszcze, czy poza faktem, że nie dostaliśmy błędu raport działa poprawnie. Wszystko jest okej – pokazuje dane, które powinniśmy zobaczyć. „Wytestujemy” teraz może jeszcze jedną rzecz. Dodajmy dane na naszym lokalnym dysku, poczekajmy aż OneDrive się zsynchronizuje. Następnie odświeżamy model raportowy, aby sprawdzić, czy zobaczymy zmodyfikowane w tym kroku dane. Powinniśmy zobaczyć nowe, kwietniowe dane. Aktualnie nie zobaczymy ich tylko dlatego, ponieważ przez 15 minut Power BI czyta dane z pamięci cache. Możemy ją jednak ręcznie „usunąć” i natychmiastowo zobaczymy nowe dane.
Otrzymaliśmy zatem raport czytający dane z naszego lokalnego dysku, bez wykorzystania Gateway’a, tylko i wyłącznie OneDrive.