Rapportmapp för Power BI Desktop-projekt

Viktigt!

Power BI Desktop-projekt är för närvarande i förhandsversion.

Den här artikeln beskriver filerna och undermapparna i ett Microsoft Power BI Desktop-projekts rapportmapp . Filerna och undermapparna här representerar en Power BI-rapport. Beroende på ditt projekt kan rapportmappen innehålla:

1 – Den här filen krävs.
2 – Den här filen krävs när du sparar till PBIR-Legacy-format.
3 – Den här filen krävs när du sparar till PBIR-format.

Alla projektrapportmappar innehåller inte alla filer och undermappar som beskrivs här.

Rapportfiler

.pbi\localSettings.json

Innehåller rapportinställningar som endast gäller för den aktuella användaren och den lokala datorn. Det bör ingå i gitIgnore eller andra undantag för källkontroll. Som standard ignorerar Git den här filen.

Mer information finns i schemadokumentet för localSettings.json.

CustomVisuals\

En undermapp som innehåller metadata för anpassade visuella objekt i rapporten. Power BI stöder tre typer av anpassade visuella objekt:

  • Visuella objekt för organisationsarkiv – Organisationer kan godkänna och distribuera anpassade visuella objekt till Power BI för sin organisation. Mer information finns i Organisationsarkiv.
  • Visuella Power BI-objekt i AppSource – kallas även "Offentliga anpassade visuella objekt". Dessa visuella objekt är tillgängliga från Microsoft AppSource. Rapportutvecklare kan installera dessa visuella objekt direkt från Power BI Desktop.
  • Anpassade visuella filer – kallas även "Privata anpassade visuella objekt". Filerna kan läsas in i rapporten genom att ladda upp ett pbiviz-paket.

Endast privata anpassade visuella objekt läses in i mappen CustomVisuals. Visuella appkällor och organisationsobjekt läses in automatiskt av Power BI Desktop.

RegisteredResources\

En undermapp som innehåller resursfiler som är specifika för rapporten och som läses in av användaren, till exempel anpassade teman, bilder och anpassade visuella objekt (pbiviz-filer).

Utvecklare ansvarar för filerna här och ändringar stöds. Du kan till exempel ändra en fil och efter en omstart av Power BI Desktop läses den nya filen in i rapporten. Den här mappen kan avblockera några användbara scenarier, till exempel:

  • Redigera anpassade teman utanför Power BI Desktop med hjälp av det offentliga schemat.
  • Tillämpa batchändringar genom att ändra resursfilen i flera rapporter. Du kan till exempel växla företagets anpassade tema, ändra mellan ljusa och mörka teman och ändra logotypbilder.

Varje resursfil måste ha en motsvarande post i report.json-filen, som under förhandsversionen inte stöder redigering. Ändringar i RegisteredResources-filer stöds endast för redan inlästa resurser som gör att Power BI Desktop registrerar resursen i report.json.

semanticModelDiagramLayout.json

Innehåller datamodelldiagram som beskriver strukturen för den semantiska modell som är associerad med rapporten. Under förhandsversionen stöder den här filen inte extern redigering.

definition.pbir

Innehåller den övergripande definitionen av en rapport och grundläggande inställningar. Den här filen innehåller också referensen till den semantiska modell som används av rapporten. Power BI Desktop kan öppna en pbir-fil direkt, precis som om rapporten öppnades från en pbip-fil. Om du öppnar en pbir öppnas även semantikmodellen tillsammans med om det finns en relativ referens med .byPath

Exempeldefinition.pbir:

{
  "version": "1.0",
  "datasetReference": {
    "byPath": {
      "path": "../Sales.Dataset"
    },
    "byConnection": null
  }
}

Definitionen innehåller egenskapen datasetReference som refererar till den semantiska modell som används i rapporten. Referensen kan vara antingen:

byPath – Anger en relativ sökväg till målsemantikmodellmappen. Absoluta sökvägar stöds inte. Ett snedstreck (/) används som mappavgränsare. När den används öppnar Power BI Desktop även den semantiska modellen i fullständigt redigeringsläge.

byConnection– Anger en fjärrsemantisk modell i Power BI-tjänst med hjälp av en anslutningssträng. När en byConnection referens används öppnar Inte Power BI Desktop semantikmodellen i redigeringsläge.

Med hjälp av en byConnection referens måste följande egenskaper anges:

Property Beskrivning
connectionString Den anslutningssträng som refererar till fjärrsemantikmodellen.
pbiModelDatabaseName Fjärr-semantisk modell-ID.
connectionType Typ av anslutning. För tjänstens fjärrsemantiska modell ska det här värdet vara pbiServiceXmlaStyleLive.
pbiModelVirtualServerName En intern egenskap som ska ha värdet , sobe_wowvirtualserver.

Exempel med :byConnection

{
  "version": "1.0",
  "datasetReference": {
    "byPath": null,
    "byConnection": {
      "connectionString": "Data Source=powerbi://api.powerbi.com/v1.0/myorg/WorkpaceName;Initial Catalog=SemanticModelName;Integrated Security=ClaimsToken",
      "pbiServiceModelId": null,
      "pbiModelVirtualServerName": "sobe_wowvirtualserver",
      "pbiModelDatabaseName": "e244efd3-e253-4390-be28-6be45d9da47e",
      "connectionType": "pbiServiceXmlaStyleLive",
      "name": null
    }
  }
}

När den semantiska modellen och rapporten delar samma arbetsyta använder Fabric Git Integration alltid en byPath referens till den semantiska modellen.

Den här filen anger även de rapportdefinitionsformat som stöds via egenskapen "version".

Version Format som stöds
1.0 Rapportdefinitionen måste lagras som PBIR-Legacy i report.json-filen.
4.0 eller senare Rapportdefinitionen kan lagras som PBIR-Legacy (report.json fil) eller PBIR (\definitionsmapp).

Mer information finns i schemadokumentet definition.pbir.

mobileState.json

Innehåller inställningar för rapportutseende och beteende vid återgivning på en mobil enhet. Den här filen stöder inte extern redigering.

report.json

Den här filen innehåller rapportdefinitionen i power BI-rapportens äldre format (PBIR-Legacy) och stöder inte extern redigering.

definition\ mapp

Den här mappen är endast tillgänglig om Power BI-projektet sparas med hjälp av Power BI:s förbättrade rapportformat (PBIR). Den ersätter filen report.json .

.plattform

Infrastrukturplattformsfil som innehåller egenskaper som är viktiga för att upprätta och underhålla anslutningen mellan Fabric-objekt och Git.

Mer information finns i Git-integrering automatiskt genererade systemfiler.

PBIR-format

Viktigt!

Överväg alla PBIR-begränsningar under förhandsversionsfasen .

Om du sparar dina Power BI Pro ject-filer (PBIP) med hjälp av PBIR (Power BI Enhanced Report Format) förbättras ändringsspårningen och sammanslagningskonflikten avsevärt med hjälp av korrekt formaterade JSON-filer.

Skärmbild av vänliga PBIR-diffs.

Varje sida, visuellt objekt, bokmärke osv. ordnas i en separat, enskild fil i en mappstruktur. Det här formatet är idealiskt för konfliktlösning med samutveckling.

Skärmbild av den egna PBIR-mappen.

Till skillnad från PBIR-Legacy (report.json) är PBIR ett offentligt dokumenterat format som stöder ändringar från icke-Power BI-program. Varje fil har ett offentligt JSON-schema, som inte bara dokumenterar filen utan även låter kodredigerare som Visual Studio Code utföra syntaxverifiering vid redigering.

Några av de möjliga scenarier som nu är tillgängliga med PBIR är:

  • Kopiera sidor/visuella objekt/bokmärken mellan rapporter.
  • Se till att en uppsättning visuella objekt är konsekventa på alla sidor genom att kopiera och klistra in de visuella filerna.
  • Hitta och ersätt enkelt i flera rapportfiler.
  • Tillämpa en batchredigering på alla visuella objekt med hjälp av ett skript (till exempel dölja filter på visuell nivå)

Aktivera funktionen förhandsversion av PBIR-format

Att spara som ett Power BI Pro ject med PBIR är för närvarande i förhandsversion. Innan du använder det aktiverar du det i förhandsversionsfunktionerna i Power BI Desktop:

Gå till Filalternativ > och inställningar > Alternativ > Förhandsversionsfunktioner och markera kryssrutan bredvid Lagra rapporter med hjälp av förbättrat metadataformat (PBIR).

Spara som ett projekt med PBIR

Med funktionen PBIR Preview aktiverad sparas rapporten i en mapp med namnet \definition i rapportmappen när du sparar ett projekt:

Skärmbild av definitionsmappen i en rapport-pbip-mapp.

Läs mer om PBIR-mappstrukturen.

Konvertera befintlig PBIP till PBIR

Om du redan har en PBIP med PBIR-Legacy-format kan du konvertera den till PBIR på följande sätt:

  1. Öppna PBIP i Power BI Desktop.

  2. Kontrollera att förhandsgranskningsfunktionen är aktiverad.

  3. Spara projektet. En uppmaning visas där du uppmanas att uppgradera till PBIR.

  4. Välj Uppgradera.

    Skärmbild av uppmaningen att uppgradera till PBIR.

    Viktigt!

    När du har uppgraderat till PBIR kan du inte återgå till PBIR-Legacy. Om du tror att du vill återgå till PBIR-Legacy sparar du en kopia av PBIP-filerna först.

Den befintliga PBIR-Legacy-filen (report.json) ersätts med en \definitionsmapp som innehåller PBIR-representationen av rapporten.

Om du väljer behåll aktuellt format uppmanar inte Desktop igen att uppgradera.

Publicera en PBIR-rapport till tjänsten

I förhandsgranskningsfasen är det enda sättet att publicera en rapport med PBIR-formatet via Fabric Git-integrering. Det innebär att du ansluter arbetsytan till en Git-lagringsplats och push-överför PBIR-rapporten till den, som sedan kan synkroniseras med tjänstarbetsytan i ett senare skede.

Följ dessa steg om du vill konvertera en befintlig rapport till PBIR i tjänsten:

  1. Anslut din arbetsyta till Git.
  2. Klona Git-lagringsplatsen till ditt lokala filsystem.
  3. Öppna rapporten i Power BI Desktop genom att definition.pbir öppna filen.
  4. Spara rapporten och välj att uppgradera till PBIR.
  5. Checka in och synkronisera ändringarna till Git.
  6. Uppdatera arbetsytan med de senaste ändringarna från Git.

PBIR-mapp och filer

Rapportdefinitionen definition\ lagras i mappen med följande struktur:

├── bookmarks\
│   ├── [bookmarkName].bookmark.json
|   └── bookmarks.json
├── pages\
│   ├── [pageName]\
│   |   ├── \visuals
|   │   |   ├── [visualName]\
|   |   │   │   |── mobile.json
|   |   |   └   └── visual.json
|   |   └── page.json
|   └── pages.json
├── version.json
├── reportExtensions.json
└── report.json
Fil/mapp Obligatoriskt Beskrivning
bokmärken\ Nej Mapp som innehåller alla bokmärkesfiler i rapporten.
-- [bookmarkName].bookmark.json Nej Bokmärkesmetadata, till exempel visuella målobjekt och filter.
Mer information finns i schemat.
-- bookmarks.json Nej Metadata för bokmärken, till exempel bokmärkesordning och grupper.
Mer information finns i schemat.
Sidor\ Ja Mapp som innehåller alla sidor i rapporten.
-- [pageName]\ Ja En mapp per sida.
Nej Mapp som innehåller alla visuella objekt på sidan.
────── [visualName]\ Nej En mapp per visuellt objekt.
──────── mobile.json Nej Metadata för visuell mobil layout, till exempel mobil position och formatering.
Mer information finns i schemat.
──────── visual.json Ja Visuella metadata, till exempel position och formatering, fråga.
Mer information finns i schemat.
Page.json Ja Sidmetadata, till exempel filter på sidnivå och formatering.
Mer information finns i schemat.
-- pages.json Nej Sidmetadata, till exempel sidordning och aktiv sida.
Mer information finns i schemat.
version.json Ja PBIR-filversionen avgör bland annat vilka filer som krävs för att läsas in.
Mer information finns i schemat
reportExtensions.json Nej Rapporttillägg, till exempel mått på rapportnivå.
Mer information finns i schemat
report.json Ja Rapportmetadata, till exempel filter och formatering på rapportnivå.
Mer information finns i schemat

PBIR-namngivningskonvention

Alla namn inom hakparenteserna ([]) i föregående tabell följer en standardnamnkonvention men kan byta namn till mer användarvänliga namn. Som standard använder sidor, visuella objekt och bokmärken rapportobjektnamnet som fil- eller mappnamn. Dessa objektnamn är ursprungligen en unik identifierare med 20 tecken, till exempel "90c2e07d8e84e7d5c026".

Skärmbild av egenskapen PBIR-namn.

Det finns stöd för att byta namn på egenskapen "namn" i varje JSON-fil, men kan bryta externa referenser både i och utanför rapporten. Objektnamnet och/eller fil-/mappnamnet måste bestå av ett eller flera ordtecken (bokstäver, siffror, understreck) eller bindestreck.

När du har bytt namn på PBIR-filer eller mappar måste du starta om Power BI Desktop. Vid omstart bevarar Power BI Desktop de ursprungliga fil- eller mappnamnen när du sparar.

PBIR Json-scheman

Varje PBIR JSON-fil innehåller en JSON-schemadeklaration överst i dokumentet. Den här schema-URL:en är offentligt tillgänglig och kan användas för att lära dig mer om tillgängliga egenskaper och objekt för varje fil. Dessutom ger den inbyggd IntelliSense och validering när du redigerar med kodredigerare som Visual Studio Code.

Skärmbild av knappbeskrivning för PBIR JSON-schema.

Schema-URL:en definierar också versionen av dokumentet, som förväntas ändras när rapportdefinitionen utvecklas.

Alla JSON-scheman publiceras här.

PBIR-anteckningar

Du kan inkludera anteckningar som namn/värde-par i rapportdefinitionen för varje visual, page och report. Även om Power BI Desktop ignorerar dessa anteckningar kan de vara värdefulla för externa program som skript.

Du kan till exempel ange defaultPage för rapporten i report.json filen, som sedan kan användas av ett distributionsskript.

{
  "$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definition/report/1.0.0/schema.json",
  "themeCollection": {
    "baseTheme": {
      "name": "CY24SU06",
      "reportVersionAtImport": "5.55",
      "type": "SharedResources"
    }
  },
  ...
  "annotations": [
    {
      "name": "defaultPage",
      "value": "c2d9b4b1487b2eb30e98"
    }
  ]
}

Externa ändringar av PBIR-filer

Du kan redigera PBIR JSON-filerna med hjälp av en kodredigerare som Visual Studio Code eller ett externt verktyg, så länge filen följer JSON-schemat. Du kan enkelt identifiera fel egenskapsnamn eller typ direkt i Visual Studio Code:

Skärmbild av PBIR JSON-schemavalidering.

Externa ändringar av PBIR-innehåll kan leda till fel när filerna i Power BI Desktop öppnas igen. Dessa fel kan vara av två typer:

Blockera fel hindrar Power BI Desktop från att öppna rapporten. De här felen hjälper dig att identifiera problemet och den felande filen som måste åtgärdas innan du öppnar igen:

Skärmbild av PBIR-blockeringsfel.

Fel som ett ogiltigt schema eller saknade obligatoriska egenskaper anses blockera fel. Dessa fel kan enkelt identifieras genom att öppna filen i Visual Studio Code och inspektera schemafelen.

Icke-blockerande fel hindrar inte Power BI Desktop från att öppna rapporten och löses automatiskt.

Skärmbild av PBIR-fel som inte blockerar problemet.

Fel som en ogiltig activePageName-konfiguration är exempel på icke-blockeringsfel som korrigeras automatiskt. Varningen är nödvändig för att ge dig chansen att undvika att spara rapporten med autofixet genom att förhindra eventuell förlust av arbete.

Vanliga PBIR-fel

Scenario: När du har bytt namn på namn på visuella objekt eller sidmappar visas inte längre mitt visuella objekt eller min sida när rapporten öppnas.

Lösning: Kontrollera om namnet uppfyller namngivningskonventionen. Om den inte gör det ignorerar Power BI Desktop filen eller mappen och behandlar den som privata användarfiler.

Scenario: Nya rapportobjekt namnges på ett annat sätt än andra. De flesta sidmappar heter till exempel "ReportSection0e71dafbc949c0853608", medan några få heter "1b3c2ab12b603618070b".

Lösning: PBIR antog en ny namngivningskonvention för varje objekt, men den gäller bara för nya objekt. När du sparar en befintlig rapport som PBIP måste de aktuella namnen bevaras för att förhindra icke-bakåtkompatibla referenser. Om du vill ha konsekvens tillåts ett skript som ett batchbyte.

Scenario: Jag kopierade en bokmärkesfil och när jag sparade den togs merparten av bokmärkeskonfigurationen bort.

Lösning: Det här beteendet är avsiktligt, rapportbokmärken samlar in tillståndet för en rapportsida tillsammans med alla dess visuella objekt. Eftersom det insamlade tillståndet kommer från en annan rapportsida med olika visuella objekt tas eventuella ogiltiga visuella objekt bort från bokmärkeskonfigurationen. Om du även kopierar de beroende visuella objekten och sidan behåller bokmärket sin konfiguration.

Scenario: Jag kopierade en sidmapp från en annan rapport och påträffade ett fel med texten "Värden för egenskapen "pageBinding.name" måste vara unika.

Lösning: PageBinding-objektet är nödvändigt för att stödja knappbeskrivningar för visning av detaljerad information och sidor. Eftersom de kan refereras till av andra sidor måste namnet vara unikt i rapporten. På den nyligen kopierade sidan tilldelar du ett unikt värde för att lösa felet. Efter juni 2024 är den här situationen inte längre ett problem eftersom pageBinding-namnet är ett GUID som standard.

PBIR-överväganden och begränsningar

PBIR är för närvarande i förhandsversion. Tänk på följande:

  • Tjänstbegränsningar
    • Mobila vyer visas inte i Power BI Apps.
    • Det går inte att distribuera med distributionspipelines.
    • Det går inte att spara som en kopia.
  • Stora rapporter med mer än 500 filer har problem med att redigera prestanda (rapportvisning påverkas inte), inklusive:
    • Spara i Power BI Desktop
    • Synkronisering i Fabric Git-integrering
  • När en rapport har konverterats från PBIR-Legacy till PBIR går det inte att återställa den.
  • Om du konverterar en PBIP-fil till en PBIX-fil med funktionen "Spara som" bäddas PBIR-rapporten in i PBIX-filen och alla PBIR-begränsningar överförs till PBIX.

PBIR-storleksbegränsningar som tillämpas av tjänsten:

  • 1 000 maxsidor per rapport.
  • 300 maximala visuella objekt per sida.
  • Max 5 MB för varje bokmärkesfil.
  • Max 1 MB för varje fil.
  • 1 000 maximala resurspaketfiler per rapport.
  • Maxstorlek på 300 mb för alla resurspaketfiler.
  • Maximal storlek på 20 mb för alla rapportfiler.

Under den offentliga förhandsversionen fortsätter Fabric Git Integration och Fabric REST API:er att använda PBIR-Legacy (report.json) när du exporterar rapportdefinitionerna. Men om rapporten importeras till Infrastrukturresurser med PBIR-format börjar båda funktionerna exportera rapportdefinitionen med PBIR-format.