Share via


Egenskaber og egenskaber for Power BI-visualiseringer

Alle visualiseringer har en capabilities.json fil, der oprettes automatisk, når du kører kommandoen pbiviz new <visual project name> for at oprette en ny visualisering. I capabilities.json-filen beskrives visualiseringen for værten.

Filen capabilities.json fortæller værten, hvilken type data visualiseringen accepterer, hvilke attributter der kan tilpasses, der skal placeres i ruden egenskaber, og andre oplysninger, der er nødvendige for at oprette visualiseringen. Fra og med API v4.6.0 er alle egenskaber i kapacitetsmodellen valgfrie undtagen privileges, som er påkrævet.

I filen capabilities.json vises rodobjekterne i følgende format:

{
    "privileges": [ ... ],
    "dataRoles": [ ... ],
    "dataViewMappings": [ ... ],
    "objects":  { ... },
    "supportsHighlight": true|false,
    "advancedEditModeSupport": 0|1|2,
    "sorting": { ... }
    ...
}

Når du opretter en ny visualisering, indeholder standardfilen capabilities.json følgende rodobjekter:

Ovenstående objekter er dem, der er nødvendige for databinding. De kan redigeres efter behov for din visualisering.

Følgende yderligere rodobjekter er valgfrie og kan tilføjes efter behov:

Du kan finde alle disse objekter og deres parametre i skemaet for capabilities.json

rettigheder: Definer de særlige tilladelser, som din visualisering kræver

Rettigheder er særlige handlinger, som din visualisering kræver adgang til for at fungere. Rettigheder tager en matrix af privilege objekter, som definerer alle egenskaber for rettigheder. I følgende afsnit beskrives de rettigheder, der er tilgængelige i Power BI.

Bemærk

Fra API v4.6.0 skal der angives rettigheder i filen capabilities.json. I tidligere versioner tildeles der automatisk fjernadgang, og det er ikke muligt at downloade til filer. Hvis du vil finde ud af, hvilken version du bruger, skal du se apiVersion i filen pbiviz.json .

Definer rettigheder

En definition af JSON-rettigheder indeholder disse komponenter:

  • name - (streng) Navnet på rettigheden.
  • essential - (Boolesk) Angiver, om visualiseringens funktionalitet kræver denne rettighed. En værdi betyder true , at rettigheden er påkrævet. false Det betyder, at rettigheden ikke er obligatorisk.
  • parameters - (strengmatrix)(valgfrit) Argumenter. Hvis parameters mangler, anses den for at være en tom matrix.

Følgende er typer af rettigheder, der skal defineres:

Bemærk

Selvom disse rettigheder er tildelt i visualiseringen, skal administratoren aktivere skiftet i administratorindstillingerne for at give personer i deres organisation mulighed for at drage fordel af disse indstillinger.

Tillad webadgang

Hvis du vil give en visualisering adgang til en ekstern ressource eller et websted, skal du tilføje disse oplysninger som en rettighed i afsnittet egenskaber. Rettighedsdefinitionen indeholder en valgfri liste over URL-adresser, som visualiseringen har adgang til i formatet http://xyz.com eller https://xyz.com. Hver URL-adresse kan også indeholde et jokertegn for at angive underdomæner.

Følgende er et eksempel på indstilling af rettigheder, der giver adgang til eksterne ressourcer:

{
    "name": "WebAccess",
    "essential": true,
    "parameters": [ "https://*.microsoft.com", "http://example.com" ]
}

Den foregående WebAccess rettighed betyder, at visualiseringen kun skal have adgang til et hvilket som helst underdomæne af microsoft.com domænet via HTTPS-protokollen og example.com uden underdomæner via HTTP, og at denne adgangsrettighed er vigtig, for at visualiseringen kan fungere.

Download til fil

Hvis du vil tillade brugeren at eksportere data fra en visualisering til en fil, skal du angive ExportContent til true.

Denne ExportContent indstilling gør det muligt for visualiseringen at eksportere data til filer i følgende formater:

  • .txt
  • .Csv
  • .Json
  • .tmplt
  • .xml
  • .pdf
  • .xlsx

Denne indstilling er adskilt fra og påvirkes ikke af downloadbegrænsninger, der er anvendt i organisationens indstillinger for eksport og deling af lejere.

Følgende er et eksempel på en indstilling for rettigheder, der gør det muligt at downloade til en fil:

"privileges": [
    {
        "name": "ExportContent",
        "essential": true
    }
]

Rettigheder til lokalt lager

Denne rettighed gør det muligt for en brugerdefineret visualisering at gemme oplysninger i brugerens lokale browser.

Følgende er et eksempel på en indstilling for rettigheder, der tillader brug af det lokale lager:

"privileges": [
    {
        "name": "LocalStorage",
        "essential": true
    }
]

Der kræves ingen rettigheder

Hvis visualiseringen ikke kræver særlige tilladelser, skal matrixen privileges være tom:

  "privileges": []

Flere rettigheder

I følgende eksempel kan du se, hvordan du angiver flere rettigheder for en brugerdefineret visualisering.

"privileges": [
    {
        "name": "WebAccess",
        "essential": true,
        "parameters": [ "https://*.virtualearth.net" ]
    },
    {
        "name": "ExportContent",
        "essential": false
    }
]

dataroles: Definer de datafelter, som din visualisering forventer

Hvis du vil definere felter, der kan bindes til data, skal du bruge dataRoles. dataRoles er en matrix af DataViewRole objekter, som definerer alle de påkrævede egenskaber. Objekterne dataRoles er de felter , der vises i ruden Egenskaber.

Brugeren trækker datafelter til dem for at binde datafelterne til objekterne.

Egenskaber for DataRole

DataRoles er defineret af følgende egenskaber:

  • name: Det interne navn på dette datafelt (skal være entydigt).
  • displayName: Det navn, der vises for brugeren i ruden Egenskaber .
  • kind: Feltets type:
    • Grouping: Sæt af diskrete værdier, der bruges til at gruppere målingsfelter.
    • Measure: Enkelte numeriske værdier.
    • GroupingOrMeasure: Værdier, der kan bruges som enten en gruppering eller en måling.
  • description: En kort tekstbeskrivelse af feltet (valgfrit).
  • requiredTypes: Den påkrævede datatype for denne datarolle. Værdier, der ikke stemmer overens, er angivet til null (valgfrit).
  • preferredTypes: Den foretrukne datatype for denne datarolle (valgfri).

Gyldige datatyper for requiredTypes og preferredTypes

  • bool: En boolesk værdi
  • integer: En heltalsværdi
  • numerisk: En numerisk værdi
  • text: En tekstværdi
  • geography: En geografisk data

eksempel på dataRoles

"dataRoles": [
    {
        "displayName": "My Category Data",
        "name": "myCategory",
        "kind": "Grouping",
        "requiredTypes": [
            {
                "text": true
            },
            {
                "numeric": true
            },
            {
                "integer": true
            }
        ],
        "preferredTypes": [
            {
                "text": true
            }
        ]
    },
    {
        "displayName": "My Measure Data",
        "name": "myMeasure",
        "kind": "Measure",
        "requiredTypes": [
            {
                "integer": true
            },
            {
                "numeric": true
            }
        ],
        "preferredTypes": [
            {
                "integer": true
            }
        ]
    }
]
...
}

De foregående dataroller opretter de felter, der vises på følgende billede:

Data role fields

dataViewMappings: hvordan dataene skal tilknyttes

Objekterne dataViewMappings beskriver, hvordan datarollerne er relateret til hinanden, og giver dig mulighed for at angive betingede krav til visning af datavisninger.

De fleste visualiseringer indeholder en enkelt tilknytning, men du kan angive flere dataViewMappings. Hver gyldig tilknytning opretter en datavisning.

"dataViewMappings": [
    {
        "conditions": [ ... ],
        "categorical": { ... },
        "table": { ... },
        "single": { ... },
        "matrix": { ... }
    }
]

Du kan få flere oplysninger under Forstå tilknytning af datavisning i Power BI-visualiseringer.

objekter: definer indstillinger for egenskabsruden

Objekter beskriver egenskaber, der kan tilpasses, og som er knyttet til visualiseringen. De objekter, der er defineret i dette afsnit, er de objekter, der vises i ruden Format. Hvert objekt kan have flere egenskaber, og hver egenskab har en type, der er knyttet til det.

"objects": {
    "myCustomObject": {
        "properties": { ... }
    }
}

Hvis du f.eks. vil understøtte dynamiske formatstrenge i din brugerdefinerede visualisering, skal du definere følgende objekt:

"objects": {
        "general": {
            "properties": {
                "formatString": {
                    "type": {
                        "formatting": {
                            "formatString": true
                        }
                    }
                }
            }
        },

Du kan få flere oplysninger under Objekter og egenskaber for Power BI-visualiseringer.