Možnosti a vlastnosti vizuálů Power BI

Každý vizuál má capabilities.json soubor, který se vytvoří automaticky při spuštění pbiviz new <visual project name> příkazu pro vytvoření nového vizuálu. Soubor capabilities.json popisuje vizuál hostiteli.

Soubor capabilities.json říká hostiteli, jaký druh dat vizuál přijímá, jaké přizpůsobitelné atributy se mají umístit do podokna vlastností a další informace potřebné k vytvoření vizuálu. Počínaje rozhraním API verze 4.6.0 jsou všechny vlastnosti modelu schopností volitelné s výjimkou privilegespovinných vlastností.

Soubor capabilities.json obsahuje seznam kořenových objektů v následujícím formátu:

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

Při vytváření nového vizuálu obsahuje výchozí soubor capabilities.json následující kořenové objekty:

Výše uvedené objekty jsou ty, které jsou potřeba pro datovou vazbu. Je možné je upravit podle potřeby pro váš vizuál.

Následující další kořenové objekty jsou volitelné a je možné je podle potřeby přidat:

Všechny tyto objekty a jejich parametry najdete ve schématu capabilities.json .

oprávnění: definujte speciální oprávnění, která vizuál vyžaduje.

Oprávnění jsou speciální operace, ke které vizuál potřebuje přístup, aby mohl pracovat. Oprávnění mají pole privilege objektů, které definují všechny vlastnosti oprávnění. Následující části popisují oprávnění, která jsou k dispozici v Power BI.

Poznámka:

Z rozhraní API verze 4.6.0 musí být v souboru capabilities.json zadána oprávnění. Ve starších verzích se vzdálený přístup automaticky uděluje a stahování souborů není možné. Pokud chcete zjistit, kterou verzi používáte, podívejte se do apiVersionsouboru pbiviz.json .

Definování oprávnění

Definice oprávnění JSON obsahuje tyto komponenty:

  • name - (řetězec) Název oprávnění.
  • essential – (Logická hodnota) Označuje, jestli vizuální funkce vyžadují toto oprávnění. Hodnota true znamená, že se oprávnění vyžaduje. false Znamená to, že oprávnění není povinné.
  • parameters - (řetězcové pole)(volitelné) Argumenty. Pokud parameters chybí, považuje se za prázdné pole.

Následující typy oprávnění musí být definovány:

Poznámka:

I s těmito oprávněními udělenými ve vizuálu musí správce povolit přepnutí v nastavení správce, aby uživatelé ve své organizaci mohli tato nastavení využívat.

Povolit webový přístup

Pokud chcete vizuálu povolit přístup k externímu prostředku nebo webu, přidejte tyto informace jako oprávnění do oddílu schopností. Definice oprávnění obsahuje volitelný seznam adres URL, ke které má vizuál povolený přístup ve formátu http://xyz.com nebo https://xyz.com. Každá adresa URL může také obsahovat zástupný znak pro zadání subdomén.

Následuje příklad nastavení oprávnění umožňující přístup k externím prostředkům:

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

Předchozí WebAccess oprávnění znamená, že vizuál musí přistupovat k jakékoli subdoméně microsoft.com domény pouze přes protokol HTTPS a example.com bez subdomén prostřednictvím protokolu HTTP a že toto oprávnění přístupu je nezbytné pro fungování vizuálu.

Stáhnout do souboru

Pokud chcete uživateli povolit export dat z vizuálu do souboru, nastavte ExportContent na truehodnotu .

Toto ExportContent nastavení umožňuje vizuálu exportovat data do souborů v následujících formátech:

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

Toto nastavení je oddělené a není ovlivněno omezeními stahování použitými v nastavení exportu a sdílení tenanta organizace.

Následuje příklad nastavení oprávnění, které umožňuje stahování do souboru:

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

Oprávnění místního úložiště

Toto oprávnění umožňuje vlastnímu vizuálu ukládat informace v místním prohlížeči uživatele.

Následuje příklad nastavení oprávnění, které umožňuje použití místního úložiště:

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

Nejsou nutná žádná oprávnění.

Pokud vizuál nevyžaduje žádná zvláštní oprávnění, privileges pole by mělo být prázdné:

  "privileges": []

Více oprávnění

Následující příklad ukazuje, jak nastavit několik oprávnění pro vlastní vizuál.

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

dataroles: definujte datová pole, která vizuál očekává.

Chcete-li definovat pole, která mohou být svázána s daty, použijte dataRoles. dataRoles je pole DataViewRole objektů, které definuje všechny požadované vlastnosti. Objekty dataRoles jsou pole , která se zobrazují v podokně Vlastnosti.

Uživatel do nich přetáhne datová pole, aby svázal data s datovými poli s objekty.

Vlastnosti DataRole

Objekty DataRoles jsou definovány následujícími vlastnostmi:

  • name: Interní název tohoto datového pole (musí být jedinečný).
  • displayName: Jméno zobrazené uživateli v podokně Vlastnosti .
  • kind: Druh pole:
    • Grouping: Sada diskrétních hodnot, které se používají k seskupení polí měr.
    • Measure: Jednoduché číselné hodnoty.
    • GroupingOrMeasure: Hodnoty, které lze použít jako seskupení nebo míru.
  • description: Krátký textový popis pole (volitelné).
  • requiredTypes: Požadovaný typ dat pro tuto roli dat. Hodnoty, které se neshodují, jsou nastavené na hodnotu null (volitelné).
  • preferredTypes: Upřednostňovaný typ dat pro tuto roli dat (volitelné).

Platné datové typy pro requiredTypes a preferredTypes

  • bool: Logická hodnota
  • celé číslo: Celočíselná hodnota
  • numeric: Číselná hodnota
  • text: Textová hodnota
  • zeměpisná oblast: Geografická data

Příklad datovýchrolí

"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
            }
        ]
    }
]
...
}

Předchozí role dat vytvoří pole zobrazená na následujícím obrázku:

Data role fields

dataViewMappings: jak chcete mapovat data

Objekty dataViewMappings popisují, jak spolu role dat souvisejí, a umožňují určit podmíněné požadavky pro zobrazení dat.

Většina vizuálů poskytuje jedno mapování, ale můžete zadat více mapování dataViewMappings. Každé platné mapování vytvoří zobrazení dat.

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

Další informace najdete v tématu Principy mapování zobrazení dat ve vizuálech Power BI.

objekty: definování možností podokna vlastností

Objekty popisují přizpůsobitelné vlastnosti přidružené k vizuálu. Objekty definované v této části jsou objekty, které se zobrazují v podokně Formát. Každý objekt může mít více vlastností a každá vlastnost má přidružený typ.

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

Pokud chcete například podporovat dynamické formátovací řetězce ve vlastním vizuálu, definujte následující objekt:

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

Další informace najdete v tématu Objekty a vlastnosti vizuálů Power BI.