Automatyzacja Power BI: Jak połączyć Excela z SharePointem i dlaczego "mieszanie" źródeł to pułapka?
Większość użytkowników Power BI zaczyna od pobierania danych z plików zapisanych lokalnie na dysku komputera. Problem pojawia się po publikacji raportu do chmury (Power BI Service) – dane przestają się odświeżać, a system domaga się instalacji bramy danych (Gateway).
Rozwiązaniem jest przeniesienie plików na SharePoint lub OneDrive i skonfigurowanie połączenia typu Web. W tym artykule wyjaśnię, jak to zrobić, dlaczego modyfikujemy linki i przed jakim błędem „mieszania źródeł” musisz się chronić.
1. Złota zasada: "Wszystko albo nic" (Unikaj błędu Gatewaya)
To najważniejszy punkt całej operacji. Power BI Service przy próbie odświeżania sprawdza wszystkie źródła w modelu.
Jeśli w Twoim raporcie masz:
10 plików z SharePointa (połączonych przez Web),
ALE tylko 1 plik pomocniczy z dysku C: lub dysku sieciowego Z:,
…to cały model zostanie zablokowany dla automatycznego odświeżania w chmurze. System uzna, że skoro jedno źródło jest „lokalne”, to musi użyć bramy danych (Gateway), aby się do niego dostać. Nawet jeśli te dane z SharePointa są w chmurze, obecność jednego pliku lokalnego „infekuje” cały raport wymaganiem posiadania włączonego komputera z zainstalowaną bramą.
Wniosek: Aby cieszyć się pełną automatyzacją bez Gatewaya, musisz przenieść wszystkie pliki zasilające dany raport do SharePointa.
2. Dlaczego wybieramy połączenie „Web” i dlaczego „oszukujemy” system?
Wybierając źródło typu „Web” zamiast „Plik Excel”, zmieniamy sposób komunikacji chmury z danymi. Wskazując link internetowy, „oszukujemy” interfejs, mówiąc mu: „To nie jest statyczny plik na dysku, to żywy zasób sieciowy”.
Dzięki temu:
Chmura rozmawia z chmurą: Power BI Service łączy się bezpośrednio z SharePointem przez protokół HTTPS.
Brak pośredników: Nie potrzebujesz włączonego laptopa ani skomplikowanego oprogramowania Gateway.
3. Anatomia linku: Po co czyścimy znaki?
Standardowy link „udostępnij” z SharePointa jest stworzony dla ludzi, nie dla maszyn. Wygląda on tak: https://firma.sharepoint.com/:x:/r/sites/Finanse/Dokumenty/Dane.xlsx?d=w32d8...
Aby Power BI mógł go użyć, musisz wykonać „chirurgiczne” cięcie:
Usuń fragment
/:x:/r/: To instrukcja dla przeglądarki, by otworzyła plik w aplikacji Excel Online. Power BI musi dostać się bezpośrednio do surowych danych binarnych, więc to „opakowanie” musi zniknąć.Usuń parametry po znaku zapytania (
?d=...): To tymczasowe dane sesji i śledzenia. Jeśli zostawisz je w linku, Twoje odświeżanie może wygasnąć po kilku dniach, gdy SharePoint uzna sesję za nieaktywną.
Czysty link kończy się na rozszerzeniu pliku (np. .xlsx) i jest stałym adresem Twoich danych.
4. Wyzwanie z formatem .xlsb: Czy warto przy nim zostać?
Pliki binarne (.xlsb) są świetne w Excelu (mały rozmiar, szybkość), ale w chmurze bywają kapryśne. Połączenie typu „Web” często zwraca błędy przy próbie odczytu .xlsb.
Moja rekomendacja:
Przejdź na .xlsx: Jeśli plik nie jest gigantyczny, format
.xlsxjest znacznie stabilniejszy w Power BI Service.Podziel dane: Zamiast jednego ciężkiego pliku
.xlsb, stwórz 2-3 mniejsze pliki.xlsx. Wyrzuć arkusze, których Power BI nie potrzebuje.Użyj „SharePoint Folder”: Jeśli musisz zostać przy
.xlsb, zamiast źródła „Internet (Web)”, wybierz łącznik Folder programu SharePoint. Jest on bardziej odporny na specyfikę plików binarnych.
5. Finał: Ustawienia po publikacji
To ostatnia prosta. Po publikacji raportu:
Wejdź w Ustawienia modelu semantycznego w usłudze Power BI Service.
W sekcji Poświadczenia źródła danych ustaw metodę na OAuth2.
Ustaw poziom prywatności na Organizacyjny. Bez tego Power BI może zablokować odświeżanie z powodów bezpieczeństwa (tzw. Formula Firewall).
Podsumowanie
Pełna automatyzacja w Power BI to wygoda i brak błędów wynikających z ludzkiego przeoczenia. Pamiętaj: wyczyść linki, ujednolic źródła (wszystko do chmury!) i rozważ format .xlsx dla maksymalnej stabilności. Twoje raporty będą odświeżać się same, a Ty zyskasz czas na faktyczną analizę danych.
