Power BI Datenmodell zurück in eine PBIX-Datei kopieren

Kennen Sie diese Meldung? “Diese Datei kann nicht heruntergeladen werden. Sie können diese Datei im Moment nicht herunterladen, weil sie mithilfe eines XMLA-Endpunkts geändert wurde.” Wie Sie das Power BI Datenmodell trotzdem wieder in eine PBIX-Datei zurück kopieren, beschreibe ich in diesen Beitrag.

Diese Datei kann nicht heruntergeladen werden. Sie können diese Datei im Moment nicht herunterladen, weil sie mithilfe eines XMLA-Endpunkts geändert wurde

HINWEIS: Der hier beschriebene Workaround wird nicht offiziell von Microsoft unterstützt. Wenn Sie diesen Workaround anwenden, geschieht dieses auf eigene Gefahr.

Benötigte Werkzeuge:

  • pbi-tools (extrahieren und kompilieren der PBIX-Datei)
  • XMLA-Endpunkt (lesen des Datenmodells – Power BI Premium Funktionalität)
  • Tabular Editor (extrahieren und speichern des Datenmodells)

Zu Anfang erstellen wir eine leere PBIX-Datei, indem wir den Power BI Desktop öffnen und direkt über “Datei > Speicher untern” die Datei speichern. In diesem Beispiel nenne ich die Datei “Container.pbix”

Power BI Desktop leere PBIX-Datei speichern

Nun extrahieren wir die PBIX-Datei mithilfe von pbi-tools und den Parameter “-modelSerialization Raw”. Der Parameter sorgt dafür, dass die Modellinformationen nicht auf Verzeichnisse und Dateien aufgeteilt werden, sondern in einer database.json Datei (BIM-Datei) gespeichert werden.

pbi-tools extract '.\Container.pbix' -modelSerialization Raw
pbi-tools extract

Mit dem Tabular Editor verbinden wir uns gegen den XMLA-Endpunkt unseres Arbeitsbereiches.

Tabular Editor XMLA-Endpunkt

Wählen dann die entsprechende Datenmodell (Datenbank) aus.

Tabular Editor Datenbankauswahl

Über “File > Save as” überschreiben wir nun mit dem geladenen Modell die database.json Datei im Verzeichnis “Model” unserer extrahierten “Container.pbix” Datei

Datenmodell als dabase.json speichern

Jetzt kompilieren wir den Container mit dem integrierten Datenmodell mithilfe von pbi-tools.

pbi-tools compile '.\Container' '.\' PBIT -overwrite
pbi-tools compile

Wenn wir nun die kompiliert PBIT-Datei mit dem Power BI Desktop öffnen und die Dateiaktualisierung durchführen, haben wir das Datenmodell wieder in einer PBIX-Datei.

Das war es auch schon. ?

BONUS:

Diese Datei kann noch nicht heruntergeladen werden.  Sie können diese Datei im Moment nicht herunterladen, da sie eine inkrementelle Aktualisierung verwendet.

Wenn Ihr Datenmodell eine inkrementelle Aktualisierung verwendet, müssen Sie vor der Kompilierung die database.json noch etwas bearbeiten.

Sie müssen die Partitionen vom Typ “policyRange” durch eine Partition vom Typ “m” mit der entsprechenden “expression” ersetzten.

Visual Studio Code Partitionen in database.json

Die benötigte “expression” finden Sie als “sourceExpression” in der entsprechenden “refreshPloicy” der Abfrage in der database.json Datei.

Du willst mehr coole Power BI Inhalte?
Dann folge mir auf LinkedIn und füttere deinen Newsfeed mit meinen Inhalten:

Marcus Wegener | ​ https://www.linkedin.com/in/marcuswegener/

Veröffentlicht von

Marcus Wegener

Marcus Wegener

Marcus Wegener ist Anwendungsentwickler für Business Intelligence und erstellt Lösungen, mit denen sich große Datenmengen schnell analysieren lassen. Kunden nutzen seine Lösungen, um die Vergangenheit zu analysieren, die Gegenwart zu steuern und die Zukunft zu planen, um damit mehr Erfolg zu generieren. Dabei ist seine einzigartige Kombination aus Wissen und Auffassungsgabe ein Garant für ihren Erfolg.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

I accept that my given data and my IP address is sent to a server in the USA only for the purpose of spam prevention through the Akismet program.More information on Akismet and GDPR.