Power BI Desktop projekt rapportmapp

Den här artikeln beskriver filerna och undermapparna i ett Microsoft Power BI Desktop-projekts rapportmapp . Filena och undermapperna 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 för PBIR-Legacy format.
3 – Den här filen krävs för PBIR-format.

Det är inte varje projektmapp som inkluderar alla filer och undermappar som beskrivs här.

Rapportfiler

.pbi\localSettings.jspå

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 versionskontroll. Som standard ignorerar Git den här filen.

Mer information finns i schemadokumentet förlocalSettings.json.

CustomVisuals\

En undermapp som innehåller metadata för anpassade grafiska element i rapporten. Power BI stödjer tre typer av anpassade bilder:

  • Organisatoriska butiksvyer - Organisationer kan godkänna och distribuera anpassade visuella element till Power BI för deras organisation. Mer information finns i Organisationsarkiv.
  • AppSource Power BI visuals - Även kända som "Offentliga anpassade visualiseringar". Dessa visualiseringar finns tillgängliga från Microsoft AppSource. Rapportutvecklare kan installera dessa visuella direkt från Power BI Desktop.
  • Anpassade visuella filer - Även kända som "Privata anpassade visuella". Filerna kan laddas in i rapporten genom att ladda upp ett pbiviz-paket.

Endast privata anpassade bilder läses in i mappen CustomVisuals. AppSource och organisationsvisualiseringar laddas automatiskt av Power BI Desktop.

RegisteredResources\

En undermapp som innehåller resursfiler specifika för rapporten och laddade av användaren, som anpassade teman, bilder och anpassade visuella element (pbiviz-filer).

Utvecklare ansvarar för filerna här och ändringar stöds. Till exempel kan du ändra en fil och efter en omstart av Power BI Desktop laddas den nya filen in i rapporten. Den här mappen kan låsa upp några användbara scenarier, såsom:

  • Författande av anpassade teman utanför Power BI Desktop genom att använda den offentliga schemat.
  • Tillämpa batchändringar genom att ändra resursfilen på flera rapporter. Till exempel kan du byta företagsanpassat tema, ändra mellan ljusa och mörka teman, och ändra logobilder.

Varje resursfil måste ha en motsvarande post i report.json-filen. Ä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 datamodell diagram som beskriver strukturen av den semantiska modellen som är kopplad till rapporten. Den här filen stöder inte extern redigering.

definition.pbir

Innehåller den övergripande definitionen av en rapport och grundinställningar. Denna fil 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. När du öppnar en PBIR-fil öppnas den semantiska modellen också samtidigt om det finns en relativ referens som använder byPath.

Exempelddefinition.pbir

{  
  "$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definitionProperties/2.0.0/schema.json",
  "version": "4.0",
  "datasetReference": {
    "byPath": {
      "path": "../Sales.Dataset"
    }    
  }
}

Definitionen inkluderar egenskapen datasetReference, som hänvisar till den semantiska modellen som används i rapporten. Referensen kan vara antingen:

byPath - Anger en relativ sökväg till mappen för den semantiska modellen. Absoluta sökvägar stöds inte. Ett snedstreck (/) används som en mapavskiljare. När det används öppnar Power BI Desktop också den semantiska modellen i fullt redigeringsläge.

byConnection – Specificerar anslutningen till en semantisk modell i en Fabric-arbetsyta med hjälp av en anslutningssträng. När en byConnection-referens används öppnar Power BI Desktop inte den semantiska modellen i redigeringsläge.

Genom att använda en byConnection referens, måste följande egenskaper specificeras:

Egendom Beskrivning
anslutningssträng Anslutningssträngen som hänvisar till den semantiska modellen i en Fabric-arbetsyta.

Exempel med byConnection:

{  
  "$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definitionProperties/2.0.0/schema.json",
  "version": "4.0",
  "datasetReference": {
    "byConnection": {      
      "connectionString": "Data Source=\"powerbi://api.powerbi.com/v1.0/myorg/[WorkpaceName]\";initial catalog=[SemanticModelName];access mode=readonly;integrated security=ClaimsToken;semanticmodelid=[SemanticModelId]"
    }
  }
}

När du distribuerar en rapport via Fabric REST API behöver du bara ange egenskapen semanticmodelid . Till exempel:

{  
  "$schema": "https://developer.microsoft.com/json-schemas/fabric/item/report/definitionProperties/2.0.0/schema.json",
  "version": "4.0",
  "datasetReference": {
    "byConnection": {      
      "connectionString": "semanticmodelid=[SemanticModelId]"
    }
  }
}

Viktigt

När du distribuerar en rapport via Fabric REST API måste du använda byConnection referenser. Detta bör inte förväxlas med lagringsläget för en semantisk modell, till exempel DirectQuery. I datasetReference rapporten anger endast vilken semantisk modell rapporten ansluter till, den definierar inte hur modellen lagrar eller kommer åt sina data.

Flera *.pbir-filer

När den semantiska modellen och rapporten delar samma arbetsyta exporterar Fabric Git Integration alltid definitioner med en byPath referens till semantikmodellen. Om du vill tvinga rapporten att öppnas i live connect (till exempel för att arbeta med mått på rapportnivå) kan du ha flera *.pbir filer, till exempel en med en byPath-anslutning och en annan med en byConnection-anslutning. Fabric Git-integrering bearbetar endast filen definition.pbir och ignorerar alla andra *.pbir-filer. Dessa filer kan dock samexistera på samma lagringsplats.

  ├── definition\
  ├── StaticResources\
  ├── .platform
  ├── definition-liveConnect.pbir
  └── definition.pbir

Filen definition.pbir anger också de rapportdefinitionsformat som stöds via egenskapen "version".

Utgåva Stödda format
1.0 Rapportdefinitionen måste lagras som PBIR-Legacy i filen report.json.
4,0 eller högre 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 rapportens utseende och beteende när den visas på en mobil enhet. Den här filen stöder inte extern redigering.

report.json

Denna fil innehåller rapportdefinitionen i Power BI Report Legacy-formatet (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 filenreport.json .

.plattform

Fil för Fabric-plattformen som innehåller egenskaper som är avgörande för att etablera och upprätthålla anslutningen mellan Fabric-objekt och Git.

Mer information finns i Git-integrering automatiskt genererade systemfiler.

PBIR-format

Att spara dina Power BI-projektfiler (PBIP) med hjälp av Power BI Enhanced Report Format (PBIR) förbättrar avsevärt spårningen av ändringar och lösningen av konfliktvid hopslagning genom att använda korrekt formaterade JSON-filer.

Skärmbild av vänliga PBIR-diffs.

Varje sida, visuell, bokmärke, etc., är organiserad i en separat, individuell fil inom en mappstruktur. Det här formatet är idealiskt för konfliktlösning i samutveckling.

Skärmbild av den vänliga PBIR-mappen.

Till skillnad från PBIR-Legacy (report.json) är PBIR ett offentligt dokumenterat format som stöder ändringar från applikationer som inte är Power BI. Varje fil har ett offentligt JSON-schema som inte bara dokumenterar filen utan också låter kodredigerare som Visual Studio Code utföra syntaxvalidering under redigeringen.

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

  • Kopiera sidor/visualiseringar/bokmärken mellan rapporter.
  • Säkerställ att en uppsättning visuella element är konsekventa över alla sidor genom att kopiera och klistra in de visuella filerna.
  • Enkel sökning och ersättning över flera rapportfiler.
  • Använd en batchredigering för alla visualiseringar med hjälp av ett skript (till exempel, dölj visuella nivåfilter)

Spara som ett projekt med PBIR

När du sparar ett projekt med PBIR sparas rapporten i en mapp med namnet \definition i rapportmappen:

Skärmbild av definitionsmappen i en PBIP-rapportmapp.

Läs mer om PBIR-mappstrukturen.

PBIR-mapp och filer

Rapportdefinitionen är lagrad i definition\-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 Obligatorisk Beskrivning
bokmärken Nej Mapp som innehåller alla bokmärkesfiler för rapporten.
-- [bookmarkName].bookmark.json Nej Bokmärkets metadata, såsom målbilder och filter.
Mer information finns i schemat.
-- bookmarks.json Nej Bokmärkesmetadata, såsom bokmärkesordning och grupper.
Mer information finns i schemat.
sidor\ Ja Mappen som innehåller alla sidor av rapporten.
-- [pageName]\ Ja En mapp per sida.
──── visuella element\ Nej Mapp som innehåller alla visuella element på sidan.
────── [visualName]\ Nej En mapp per bild.
─────── mobile.json Nej Visuell mobil layoutmetadata, såsom mobil position och formatering.
Mer information finns i schemat.
─────── visual.json Ja Visuell metadata, såsom position och formatering, fråga.
Mer information finns i schemat.
page.json Ja Sidmetadata, såsom sidnivåfilter och formatering.
Mer information finns i schemat.
-- pages.json Nej Sidors metadata, såsom sidordning och aktiv sida.
Mer information finns i schemat.
version.json Ja PBIR-filversionen, bland andra faktorer, avgör vilka nödvändiga filer som ska laddas.
Mer information finns i schemat
reportExtensions.json Nej Rapportförlängningar, såsom mått på rapportnivå.
Mer information finns i schemat
report.json Ja Rapportmetadata, såsom rapportnivåfilter och formatering.
Mer information finns i schemat

Viktigt

Vissa rapportmetadatafiler, till exempel visual.json eller bookmarks.json, kan sparas med datavärden från din semantiska modell. Om du till exempel använder ett filter för ett visuellt objekt för fältet "Företag" = "Contoso" sparas värdet "Contoso" som en del av metadata. Detta gäller även för andra konfigurationer som utsnittsval, matrisanpassad kolumnbredd och formatering för specifika serier.

PBIR-namngivningskonvention

Alla namn inom hakparenteserna ([]) i den föregående tabellen följer en standardnamngivningskonvention men kan bytas ut till mer användarvänliga namn. Som standard använder sidor, bilder och bokmärken sina rapportobjektsnamn som sina fil- eller mappnamn. Dessa objektnamn är ursprungligen en 20-tecken unik identifierare, såsom '90c2e07d8e84e7d5c026'.

Skärmbild av egenskapen PBIR-namn.

Att byta namn på egenskapen 'name' i varje JSON-fil stöds, men det kan bryta externa referenser både inom och utanför rapporten. Objektets namn och/eller fil-/mappnamn måste bestå av ett eller flera ordtecken (bokstäver, siffror, understreck) eller bindestreck.

Efter att ha bytt namn på några PBIR-filer eller mappar måste du starta om Power BI Desktop. Vid omstart kommer Power BI Desktop att bevara de ursprungliga fil- eller mappnamnen vid sparning.

Kopiera rapportobjektnamnet

Varje objekt i rapporten sparas i en separat mapp eller fil, men namnet på mappen är inte alltid uppenbart. För att göra detta enklare kan du kopiera namnet på rapportobjektets namn (inklusive sidor, visuella objekt, bokmärken och filter) direkt från Power BI till Urklipp.

Skärmbild av en rapport med en pil som pekar från ett av de visuella objekten till namnet på motsvarande fil.

  1. Gå till Filalternativ > och inställningar > Rapportinställningar > Rapportobjekt och aktivera inställningen Kopiera objektnamn när du högerklickar på inställningen Rapportobjekt . Detta behöver bara göras en gång.

    Skärmbild av rapportinställningarna för rapportobjekt.

  2. Högerklicka på ett rapportobjekt och välj Kopiera objektnamn.

    Skärmbild av en skrivbordsrapport med namnet på kopieringsobjektet markerat.

När objektnamnet har kopierats till Urklipp kan du enkelt ange det i sökfältet i Utforskaren eller Visual Studio Code för att hitta eller identifiera objektnamnet i PBIR-mappen.

Skärmbild av sökfältet med objektets namn.

PBIR Json-scheman

Varje PBIR JSON-fil innehåller en JSON-schemadeklaration överst i dokumentet. Denna schemalänk är offentligt tillgänglig och kan användas för att lära sig mer om de tillgängliga egenskaperna och objekten 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.

Schemat URL definierar också dokumentets version, som förväntas ändras när rapportdefinitionen utvecklas.

Alla JSON-scheman publiceras här.

PBIR-anteckningar

Du kan inkludera annoteringar som namn-värdepar inom 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.

Till exempel kan du ange defaultPage för rapporten i report.json-filen, vilket 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-filer som stöds i en kodredigerare som Visual Studio Code eller ett annat externt verktyg medan projektet förblir öppet i Power BI Desktop. När du sparar filerna identifierar Power BI Desktop ändringarna och visar banderollen Tillämpa externa ändringar. Välj Använd externa ändringar för att läsa in rapportdefinitionen igen utan att stänga och öppna projektet igen.

Innan du redigerar PBIR-filer externt sparar du eventuella ändringar i Power BI Desktop. Om Power BI Desktop har ändringar som inte har sparats när du tillämpar de externa ändringarna varnar det dig om att de osparade ändringarna kommer att skrivas över. Fullständiga arbetsflöden och begränsningar finns i Redigera PBIP-filer utanför Power BI Desktop.

PBIR-filer måste överensstämma med deras JSON-scheman. VS Code identifierar problem som ett egenskapsnamn som inte stöds eller en felaktig egenskapstyp:

Skärmbild av PBIR JSON-schemavalidering.

Externa ändringar av PBIR-innehåll kan leda till fel när du tillämpar ändringarna eller öppnar filerna i Power BI Desktop. Dessa fel kan vara av två typer:

Blockerande fel hindrar Power BI Desktop från att läsa in rapportändringarna. Dessa fel identifierar problemet och den fil som du måste åtgärda innan du tillämpar ändringarna igen:

Skärmbild av ett fel vid blockering av PBIR.

Fel som ett ogiltigt schema eller saknade obligatoriska egenskaper blockerar fel. Om du vill identifiera dessa fel öppnar du filen i VS Code och inspekterar schemaverifieringsmeddelandena.

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

Skärmbild av prompt för PBIR-icke-blockerande fel.

En ogiltig activePageName konfiguration är ett exempel på ett icke-blockerande fel som Power BI Desktop korrigerar automatiskt. Varningen ger dig möjlighet att granska korrigeringen innan du sparar rapporten och skriver över den externa definitionen.

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 det 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 nuvarande namnen bevaras för att förhindra att referenser bryts. Om du vill ha konsekvens är ett skript för batch-omdöpning tillåtet.

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 fångade tillståndet härstammar från en annan rapportsida med olika visuella element, tas alla ogiltiga visuella element bort från bokmärkeskonfigurationen. Om du också kopierar de beroende bilderna 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 drillthrough och sidverktygstips. Eftersom de kan hänvisas till av andra sidor måste namnet vara unikt inom rapporten. På den nytillkopierade sidan, tilldela ett unikt värde för att lösa felet. Efter juni 2024 är detta inte längre ett problem eftersom pageBinding-namnet är ett GUID som standard.

Konvertera befintlig rapport till PBIR

PBIR är allmänt tillgängligt och är standardformatet för rapporter. Du kan fortfarande öppna rapporter som använder PBIR-Legacy i Power BI Desktop och služba Power BI. När du redigerar och sparar en PBIR-Legacy-rapport konverterar Power BI den automatiskt i bakgrunden till PBIR.

Innan konverteringen skapar Power BI en säkerhetskopia av rapporten:

  • Power BI Desktop behåller säkerhetskopian i 30 dagar på någon av följande platser:
    • Microsoft Store-version: %USERPROFILE%\Microsoft\Power BI Desktop Store App\TempSaves\Backups
    • Körbar installationsprogramversion: %USERPROFILE%\AppData\Local\Microsoft\Power BI Desktop\TempSaves\Backups
  • služba Power BI behåller PBIR-Legacy säkerhetskopia i 28 dagar. Om du vill återställa den öppnar du Rapportinställningar från arbetsytan och väljer Återställ som PBIR-Legacy. Den här säkerhetskopieringen skapas endast för rapporter som konverteras direkt i služba Power BI.

Återställning av en PBIR-Legacy säkerhetskopia förhindrar inte någon annan konvertering. Om du vill behålla en rapport i PBIR-Legacy format ska du inte redigera den i služba Power BI eller använda en version av Power BI Desktop som släpptes före september 2026.

PBIR överväganden och begränsningar

Tänk på följande överväganden och begränsningar:

  • Automatiska visuella filter sparas endast i PBIR-filen visual.json när filterfönstret har expanderats minst en gång när rapporten redigeras.
  • Om Power BI inte konverterar en PBIR-Legacy rapport till PBIR när du redigerar och sparar den har konverteringen stött på ett produktproblem. Skapa en supportbegäran för att rapportera problemet.

Begränsningar av PBIR-storlek som verkställs av tjänsten:

  • 1,000 maximalt antal sidor per rapport.
  • 1 000 maximalt antal visuella objekt per sida.
  • Maximalt 1 000 resurs paketfiler per rapport.
  • Maxstorlek på 300 mb för alla resurspaketfiler.
  • Maximal storlek på 300 mb för alla rapportfiler.

Viktigt

Om du når gränserna ovan bör du överväga att optimera rapporten. Se dokumentet Power BI-optimering.

Fabric Git-integrering och Fabric REST API:er exporterar rapportdefinitioner med hjälp av PBIR.