Blog JSystems - uwalniamy wiedzę!

Szukaj

Power BI - Potoki wdrażania, Fabric, Copilot i telefon

Potok wdrażania w Power BI - Test czyta dane z Produkcji przez parametr

W skrócie

  • Po pierwszym wdrożeniu w potoku wdrażania model na etapie Test czyta to samo źródło co etap, z którego go wdrożono. Gdy autor w Power BI Desktop pracował na danych produkcyjnych, Test liczy na danych Produkcji.
  • Wdrożenie kopiuje definicję modelu razem z bieżącą wartością parametru, a nie kopiuje danych, poświadczeń ani harmonogramu odświeżania. Regułę ustawiasz dopiero na etapie, na którym model już jest, i działa ona od następnego wdrożenia.
  • Ścieżkę albo serwer zamieniasz w Desktopie na parametr, na karcie etapu w Reguły wdrażania dodajesz regułę parametru z wartością dla Testu, wdrażasz model ponownie, ustawiasz poświadczenia i odświeżasz model.

Przy pierwszym wdrożeniu potok wdrażania przenosi model z Programowania do Testu i dalej na Produkcję razem z wartościami parametrów z etapu źródłowego. Raport w obszarze testowym działa, ale czyta plik albo bazę z innego etapu, często produkcyjną, bo na takich danych powstawał w Power BI Desktop. Pokazujemy, jak reguła parametru daje każdemu etapowi własne dane i jak to sprawdzić na potoku Nordvella ALM z kursu.

Jak to wygląda w praktyce

Po pierwszym wdrożeniu model na etapie docelowym ma status Takie samo jak źródło, a karta etapu pokazuje Pomyślne wdrożenie. Kłopot widać dopiero w ustawieniach modelu w obszarze docelowym, w sekcji Parametry: wartość parametru jest taka sama jak na etapie źródłowym. W kursie po pierwszym wdrożeniu Test czytał plik Programowania C:\Kurs_PBI\Nordvella_dane.xlsx, a Produkcja plik testowy C:\Kurs_PBI\test\Nordvella_dane.xlsx. Gdy w Desktopie parametr wskazuje serwer produkcyjny, ten sam mechanizm sprawia, że Test liczy na danych Produkcji.

Liczby tego nie zdradzą, gdy źródła mają podobną zawartość. U nas trzy pliki były kopiami tego samego arkusza, więc model na każdym etapie zwracał Łączną sprzedaż 467 775 009,17 zł. Nad sekcją Parametry ustawienia modelu pokazują ostrzeżenie „Nie można przetestować połączenia ze źródłem danych. Ponów próbę poświadczeń.”, bo poświadczenia nie przechodzą z wdrożeniem. Po zapisaniu reguły model dostaje status Różni się od źródła, choć w Programowaniu nic się nie zmieniło.

Ustawienia modelu nordvella_26_pipeline w obszarze Nordvella Prod: parametr SciezkaPliku z wartością z folderu test
Produkcja po pierwszym wdrożeniu czyta plik z folderu test. Ramka: wartość parametru.

Dlaczego tak się dzieje

Według dokumentacji Microsoft wdrożenie kopiuje metadane elementów, a nie dane. Z modelem semantycznym nie przechodzą też poświadczenia źródła danych, harmonogram odświeżania ani przypisania do ról. Definicja modelu obejmuje natomiast parametry z ich bieżącą wartością, więc bez reguły etap docelowy dostaje wartość z etapu źródłowego. Dokumentacja pokazuje to na przykładzie bazy: reguła zdefiniowana na etapie produkcyjnym kieruje model na bazę produkcyjną zamiast testowej.

Reguła należy do etapu docelowego i do konkretnego elementu, który już na tym etapie jest. Przy pierwszym wdrożeniu reguły więc jeszcze nie ma i parametr przechodzi bez zmian. Panel reguł mówi o tym wprost: „Reguły zostaną zastosowane po wdrożeniu w tym etapie”. Według dokumentacji Microsoft reguł nie tworzy się na etapie programowania, a regułę może dodać tylko właściciel elementu. Pozostali widzą komunikat „Brak dostępnych reguł, ponieważ nie jesteś właścicielem tego elementu”. Reguła parametru działa tylko wtedy, gdy ścieżka albo serwer są w zapytaniach parametrem, a nie tekstem wpisanym na sztywno w kod M. Parametry omawiamy w lekcji o języku M i parametrach Power Query.

Co zrobić krok po kroku

  1. W Power BI Desktop kliknij Przekształć dane, w edytorze Power Query Zarządzaj parametrami, potem Nowy. Wpisz nazwę, u nas SciezkaPliku, zostaw typ Tekst i w polu Wartość bieżąca wpisz ścieżkę etapu Programowanie, u nas C:\Kurs_PBI\Nordvella_dane.xlsx. Kliknij OK.
  2. Na karcie Narzędzia główne edytora kliknij Ustawienia źródła danych, zaznacz źródło i kliknij Zmień źródło. Przy polu ścieżki przełącz ikonę z wartości tekstowej na parametr i wybierz SciezkaPliku. Krok Źródło każdego zapytania, które czyta ten plik, wygląda wtedy jak niżej. Przy bazie SQL Server tak samo zamieniasz na parametr nazwę serwera, opisujemy to w poście o zmianie serwera albo bazy SQL Server w gotowym raporcie.
    Źródło = Excel.Workbook(File.Contents(SciezkaPliku), null, true)
  3. Kliknij Zamknij i zastosuj, zapisz plik i opublikuj go do obszaru etapu Programowanie, u nas Nordvella Dev. W potoku kliknij kartę Test, zaznacz model i raport ze statusem Tylko w źródle i kliknij Wdróż. To pierwsze wdrożenie jest potrzebne, bo regułę ustawisz tylko dla modelu, który już jest na etapie.
  4. Na karcie Test kliknij ikonę Reguły wdrażania i wybierz model. Rozwiń Reguły parametrów, kliknij Dodaj regułę, w polu Od wybierz parametr, a w polu Do wybierz Inne i wpisz wartość dla Testu, u nas C:\Kurs_PBI\test\Nordvella_dane.xlsx. Kliknij Zapisz. Sekcja Reguły źródła danych podmienia całe połączenie na źródło tego samego typu, ale gdy nazwę serwera kontroluje parametr, wdrożenie kończy się komunikatem „Nie można zastosować reguły zestawu danych, ponieważ nazwa serwera przywoływana w regule jest kontrolowana przez parametr. Aby zmienić nazwę serwera, użyj reguły parametru lub usuń parametr kontrolujący nazwę z zestawu danych.”
  5. Wdróż model jeszcze raz, z notatką o regule. Model nie musi się zmienić w Programowaniu: po zapisaniu reguły ma status Różni się od źródła, a przycisk Wdróż jest aktywny. Od tej chwili reguła działa przy każdym kolejnym wdrożeniu na ten etap, nie ustawiasz jej od nowa.
  6. Otwórz ustawienia modelu w obszarze etapu Test (Więcej opcji, Ustawienia) i rozwiń Parametry: ma tam być wartość z reguły. Przy źródle z ostrzeżeniem kliknij Edytuj poświadczenia, wybierz metodę uwierzytelniania i kliknij Zaloguj, szczegóły w poście o nieprawidłowych poświadczeniach źródła danych w usłudze. Potem kliknij Odśwież teraz. Dopiero odświeżenie wczytuje dane z nowego źródła, bo wdrożenie danych nie kopiuje.
  7. Na Produkcji powtórz kroki 4-6 z wartością produkcyjną, u nas C:\Kurs_PBI\prod\Nordvella_dane.xlsx. Reguły nie dodasz przed pierwszym wdrożeniem na Produkcję, więc to wdrożenie przeniesie wartość z Testu. Zrób je, zanim zaktualizujesz aplikację dla odbiorców, a regułę, ponowne wdrożenie i odświeżenie od razu po nim.

Jak sprawdzić, że problem zniknął

Naprawione, gdy sekcja Parametry w ustawieniach modelu na każdym etapie pokazuje właściwą dla niego wartość, a historia odświeżania ma po wdrożeniu z regułą wpis ze stanem Zakończono. W kursie model w Teście po odświeżeniu zwrócił 467 775 009,17 zł, tyle samo co Programowanie, bo pliki były kopiami. O źródle przesądziły wartość parametru i udane odświeżenie z folderu test. Na danych firmy porównaj między etapami także liczbę wierszy albo ostatnią datę sprzedaży.

Według dokumentacji Microsoft reguła przestaje działać w dwóch sytuacjach. Gdy parametr wskazany w regule zmienisz, na przykład zmienisz jego nazwę, albo usuniesz go z modelu na etapie źródłowym, reguła traci ważność i wdrożenie się nie udaje. Usługa pisze wtedy „Nie można zastosować reguły zestawu danych, ponieważ nie ma ona już znaczenia. Usuń regułę i spróbuj ponownie.” Gdy odłączysz obszar od etapu i przypiszesz go ponownie, reguły tego obszaru znikają i trzeba je ustawić od nowa. Wartość parametru na Teście i Produkcji sprawdzaj więc przed każdym wdrożeniem na Produkcję, razem z poświadczeniami i bramą.

Źródła i sposób sprawdzenia

  • Microsoft Learn: Create deployment rules (reguły źródła danych i parametrów, ograniczenia) (źródło)
  • Microsoft Learn: The Microsoft Fabric deployment pipelines process (co wdrożenie kopiuje, a czego nie) (źródło)
  • Kurs Power BI, lekcja 26: parametr SciezkaPliku, reguły wdrażania dla Testu i Produkcji w potoku Nordvella ALM

Zachowanie programu sprawdziliśmy w Power BI Desktop 2.157 (wydanie z sierpnia 2026 r.) z polskim interfejsem, a przykłady na modelu sieci Nordvella z bezpłatnego kursu Power BI. Microsoft wydaje nową wersję Power BI Desktop co miesiąc, więc nazwy przycisków i limity usługi mogą się zmieniać. Aktualne wartości podaje dokumentacja Microsoft Learn.

Wróć do listy: 131 najczęstszych pytań i problemów związanych z Power BI

Najczęściej zadawane pytania

Dlaczego po wdrożeniu w potoku Test czyta dane z Produkcji?
Wdrożenie kopiuje definicję modelu razem z bieżącą wartością parametru z etapu źródłowego. Gdy w Power BI Desktop parametr wskazywał serwer albo plik produkcyjny, Test po pierwszym wdrożeniu czyta to samo źródło. Pomaga reguła parametru zapisana na etapie Test i ponowne wdrożenie modelu.
Kiedy zaczyna działać reguła wdrażania w Power BI?
Reguła działa od następnego wdrożenia na etap, na którym ją zapisano. Ustawisz ją tylko dla modelu, który już jest na tym etapie, więc pierwsze wdrożenie zawsze przenosi wartość z etapu źródłowego. Po zapisaniu reguły model ma status Różni się od źródła i można go wdrożyć ponownie bez zmian w Programowaniu.
Czy potok wdrażania kopiuje poświadczenia i harmonogram odświeżania?
Nie. Według dokumentacji Microsoft wdrożenie nie kopiuje danych, poświadczeń źródła danych, harmonogramu odświeżania ani przypisań do ról. Po wdrożeniu na każdym etapie ustawiasz poświadczenia w ustawieniach modelu i odświeżasz model, bo dopiero odświeżenie wczytuje dane z nowego źródła.
Reguła źródła danych czy reguła parametru w potoku wdrażania?
Reguła źródła danych podmienia połączenie na źródło tego samego typu, na przykład inny serwer SQL Server. Gdy nazwę serwera kontroluje parametr, wdrożenie z regułą źródła danych kończy się błędem i trzeba użyć reguły parametru. Reguła parametru wymaga, żeby ścieżka albo serwer były w zapytaniach parametrem, a nie tekstem wpisanym w kod M.

Komentarze (0)

Musisz być zalogowany by móc dodać komentarz. Zaloguj się przez Google

Brak komentarzy...