Konfigurace nastavení sestavy
Pomocí rozhraní API klienta Power BI můžete do své aplikace vkládat analýzy Power BI. Když tuto knihovnu na straně klienta použijete k vložení sestavy Power BI, poskytnete rozhraní API s informacemi o této sestavě.
Konfigurační objekt můžete použít k ukládání informací o sestavě Power BI. Když sestavu vložíte, předáte ho do rozhraní API.
Kromě udělení přístupu rozhraní API k sestavě můžete také použít objekt konfigurace k přizpůsobení vzhledu a chování sestavy. Můžete například upravit viditelnost filtru, navigační přístup a nastavení umístění v objektu konfigurace.
Následující části vysvětlují, jak vložit a nakonfigurovat obsah Power BI.
Zadání informací o konfiguraci
Rozhraní IReportLoadConfiguration zobrazuje vlastnosti, které objekt konfigurace může poskytnout rozhraní API klienta Power BI o sestavě:
interface IReportLoadConfiguration {
embedUrl: string;
accessToken: string;
id: string;
groupId?: string;
settings?: ISettings;
bookmark?: IApplyBookmarkRequest;
pageName?: string;
filters?: ReportLevelFilters[];
slicers?: ISlicer[];
theme?: IReportTheme;
contrastMode?: ContrastMode;
datasetBinding?: IDatasetBinding;
permissions?: Permissions;
viewMode?: ViewMode;
tokenType?: TokenType;
}
Vysvětlení požadovaných parametrů tohoto rozhraní a ukázek kódu ukazující, jak vložit sestavu, najdete v tématu Vložení sestavy.
Přizpůsobení nastavení
Následující části popisují, jak můžete pomocí vlastnosti settings
upravit vzhled a chování vložené sestavy Power BI.
Chcete-li aktualizovat nastavení sestavy při již načtené sestavě, použijte metodu report.updateSettings
. Další informace najdete v tématu Aktualizace nastavení sestavy za běhu.
Okenní tabulky
Pomocí jedné vlastnosti panes
můžete řídit vzhled všech podoken v sestavě Power BI, jak je znázorněno v následujícím kódu:
let embedConfig = {
...
settings: {
panes: {
bookmarks: {
visible: true
},
fields: {
expanded: false
},
filters: {
expanded: false,
visible: true
},
pageNavigation: {
visible: false
},
selection: {
visible: true
},
syncSlicers: {
visible: true
},
visualizations: {
expanded: false
}
}
}
};
V následující tabulce vidíte, které hodnoty každá vlastnost panes
podporuje:
Vlastnost | Viditelný | Rozšířený |
---|---|---|
bookmarks |
✔ | ❌ |
fields |
✔ | ✔ |
filters |
✔ | ✔ |
pageNavigation |
✔ | ❌ |
selection |
✔ | ❌ |
syncSlicers |
✔ | ❌ |
visualizations |
✔ | ✔ |
Podokno filtru
Ve výchozím nastavení je podokno filtru viditelné. Pokud chcete toto podokno skrýt, použijte vlastnost filterPaneEnabled
, jak je znázorněno v následujícím kódu:
let embedConfig = {
...
settings: {
filterPaneEnabled: false
}
};
Poznámka
Vlastnost podokna nahradí vlastnost filterPaneEnabled
. Chcete-li zachovat zpětnou kompatibilitu, vlastnost filterPaneEnabled
stále existuje. Měli byste se však vyhnout společnému použití těchto dvou vlastností.
Navigační podokno stránky
Ve výchozím nastavení jsou šipky navigace na stránce viditelné ve vložených sestavách. Pokud chcete tyto šipky skrýt, použijte vlastnost navContentPaneEnabled
, jak je znázorněno v následujícím kódu:
let embedConfig = {
...
settings: {
navContentPaneEnabled: false
}
};
Poznámka
Vlastnost podokna nahradí vlastnost navContentPaneEnabled
. Chcete-li zachovat zpětnou kompatibilitu, vlastnost navContentPaneEnabled
stále existuje. Měli byste se však vyhnout společnému použití těchto dvou vlastností.
Navigační podokno stránky se zobrazí v dolní části sestavy, abyste mohli použít nové podokno svislých stránek, můžete nastavit vlastnost position
:
let embedConfig = {
...
settings: {
panes:{
pageNavigation: {
visible: true,
position: PagesPosition.Left
}
}
}
};
Poznámka
Umístění navigačního podokna stránky nelze změnit pomocí updateSettings
.
Tyče
Pomocí vlastnosti bars
nastavte viditelnost panelu akcí a stavového řádku.
Panel akcí
Následující kód zviditelní panel akcí:
let embedConfig = {
...
settings: {
bars: {
actionBar: {
visible: true
}
}
}
};
V režimu zobrazení je také možné použít parametr adresy URL actionBarEnabled
:
let embedConfig = {
...
embedUrl: embedUrl + "&actionBarEnabled=true"
};
Poznámka
V režimu zobrazení je panel akcí podporován pouze pro vložení pro vaši organizaci scénář.
Pro panel akcí v režimu zobrazení se doporučuje povolit UserState.ReadWrite.All
oprávnění pro aplikaci Azure AD.
Toto oprávnění je vyžadováno, aby koncoví uživatelé mohli sestavu přidat do oblíbených položek a povolit osobní záložky a trvalých filtrů.
Stavový řádek
Stavový řádek obsahuje ovladač lupy plátna, který umožňuje přiblížit plátno.
Následující kód zviditelní stavový řádek:
let embedConfig = {
...
settings: {
bars: {
statusBar: {
visible: true
}
}
}
};
Nastavení národního prostředí
Pomocí vlastnosti localeSettings
určete jazyk a formátování vložené sestavy:
Vlastnost language
v localeSettings
se skládá ze dvou částí dvou písmen, které jsou oddělené pomlčkou:
- jazyk definuje jazyk, který Power BI používá k lokalizaci. Mezi příklady jazyků patří en (angličtina), es (španělština) a tr (turečtina).
- národní prostředí definuje formátování textu, které Power BI používá pro kalendářní data, měnu a další související obsah. Mezi příklady národních prostředí patří US (angličtina), ES (Španělsko) a TR (Türkiye).
Seznam dostupných jazyků a oblastí najdete v podporovaných jazycích.
Následující kód přiřadí těmto localeSettings
konkrétní hodnoty:
let embedConfig = {
...
settings: {
localeSettings: {
language: "en-us"
}
}
};
Poznámka
Nastavení národního prostředí nelze po načtení sestavy změnit. Pokud chcete změnit nastavení národního prostředí sestavy, obnovte element iframe zavoláním powerbi.reset(element)
a opětovným vložením sestavy.
Průhledné pozadí
Ve výchozím nastavení je pozadí vloženého obsahu bílé s šedými okraji. Pokud chcete, můžete vložený obsah dát průhledné pozadí. Pak můžete použít styl, který chcete použít u elementu HTML div
, který obsahuje vložený obsah. Styl div
prvku se pak zobrazí.
Pomocí tohoto kódu zprůhlední pozadí vloženého obsahu:
let embedConfig = {
...
settings: {
background: models.BackgroundType.Transparent
}
};
Chování kliknutí na hypertextový odkaz
Můžete řídit chování hypertextového odkazu v tabulce nebo matici předem zadaných vizuálů. Ve výchozím nastavení hypertextový odkaz otevře nové okno.
Dostupné režimy chování:
enum HyperlinkClickBehavior {
Navigate,
NavigateAndRaiseEvent,
RaiseEvent
}
-
Navigate
– adresa URL se načte do nového kontextu procházení. -
NavigateAndRaiseEvent
– Adresa URL se načte do nového kontextu procházení a vyvoládataHyperlinkClicked
událost. -
RaiseEvent
– Zabraňuje výchozímu chování kliknutí na adresu URL a vyvolání událostidataHyperlinkClicked
.
Pomocí tohoto kódu můžete změnit chování odkazů pro vyvolání události:
let embedConfig = {
...
settings: {
hyperlinkClickBehavior: HyperlinkClickBehavior.RaiseEvent
}
};
Událost dataHyperlinkClicked
se aktivuje, když se hypertextový odkaz klikne na předefinované tabulky nebo maticové vizuály a chování je buď NavigateAndRaiseEvent
, nebo RaiseEvent
.
report.on('dataHyperlinkClicked', () => {
...
});
Další informace o zpracování událostí naleznete v tématu Zpracování událostí.
Vizuální vykreslené události
Pro každý vykreslený vizuál můžete naslouchat události. Ve výchozím nastavení jsou vykreslené události vizuálu zakázané.
Tento kód použijte k aktivaci visualRendered
událostí:
let embedConfig = {
...
settings: {
visualRenderedEvents: true
}
};
Událost visualRendered
se aktivuje při vykreslení vizuálu a visualRenderedEvents
se povolí v nastavení sestavy.
report.on('visualRendered', () => {
...
});
Další informace o zpracování událostí naleznete v tématu Zpracování událostí.
Poznámka
Protože se vizuály můžou vykreslit z důvodu interakcí uživatelů, doporučujeme tuto událost zapnout jenom v případě potřeby.
Chybové zprávy
Pokud chcete ve vložených sestavách zobrazit přizpůsobené chybové zprávy, použijte vlastnost hideErrors
a skryjte výchozí chybové zprávy Power BI Embedded. Kód pak může zpracovávat chybové události způsobem, který odpovídá návrhu vaší aplikace. Další informace o přepsání výchozích chybových zpráv najdete v tématu Přepsání výchozích chyb.
Tento kód slouží ke skrytí výchozích chybových zpráv:
let embedConfig = {
...
settings: {
hideErrors: true
}
};
Přizpůsobení možností
Následující části popisují, jak můžete pomocí dalších vlastností dále přizpůsobit vzhled a chování vložené sestavy Power BI.
Výchozí stránka
Můžete určit, která stránka vložené sestavy se zpočátku zobrazí. Ve výchozím nastavení je počáteční stránkou stránka, kterou jste naposledy upravili, což byla aktivní stránka při posledním uložení sestavy. Toto chování můžete přepsat pomocí vlastnosti pageName
a zadáním názvu stránky, kterou chcete zobrazit. Pokud ale v Power BI neexistuje žádná stránka s tímto názvem, žádost o otevření se nezdaří.
Následující kód ukazuje, jak nakonfigurovat aplikaci tak, aby zobrazovala konkrétní stránku:
let embedConfig = {
...
pageName: 'ReportSection3'
};
Při načítání filtrů
Můžete řídit filtry, které aplikace použije pro vloženou sestavu. Ve výchozím nastavení sestava zpočátku používá filtry, které jste uložili do sestavy. Pokud ale chcete filtry upravit, máte dvě možnosti:
Nakonfigurujte další filtry tak, aby se používaly společně s uloženými filtry. Následující kód ukazuje, jak pomocí vlastnosti
filters
připojit další filtry:let embedConfig = { ... filters: [...] };
Nahraďte uložené filtry novou sadou. Metoda
setFilters
poskytuje způsob, jak dynamicky měnit filtry sestavy. Pokud tuto metodu použijete během postupného vkládání, můžete přepsat filtry, které sestava původně použije. Další informace o vytváření filtrů a použití metodysetFilters
naleznete v tématu Control report filters.
Při načítání průřezů
Můžete řídit stav průřezů, které vaše aplikace použije pro vloženou sestavu. Ve výchozím nastavení rozhraní API používá průřezy, které jste uložili do sestavy. Pomocí vlastnosti slicers
však můžete změnit stav existujících průřezů, jak ukazuje následující kód:
embedConfig = {
...
slicers: slicerArray,
};
Další informace o změně stavu průřezu průřezu najdete v tématu Ovládací prvky sestavy.
Při načtení záložky
Pomocí vlastnosti bookmark
můžete použít záložku na vloženou sestavu. Další informace o použití záložek k zachycení aktuálně nakonfigurovaného zobrazení stránek sestavy najdete v Záložky.
Záložku, kterou chcete použít, můžete zadat zadáním názvu záložky nebo stavu. Pokud zadáte název záložky, musí sestava Power BI obsahovat uloženou záložku s tímto názvem.
Vlastnost bookmark
je typu IApplyBookmarkRequest.
Následující kód ukazuje definici tohoto typu:
type IApplyBookmarkRequest = IApplyBookmarkStateRequest | IApplyBookmarkByNameRequest;
interface IApplyBookmarkStateRequest {
state: string;
}
interface IApplyBookmarkByNameRequest {
name: string;
}
Tento kód ukazuje, jak zadat záložku podle názvu:
let embedConfig = {
...
bookmark: {
name: "Bookmark4f76333c3ea205286501"
}
};
Tento kód ukazuje, jak zadat záložku podle stavu:
let embedConfig = {
...
bookmark: {
state: bookmarkState
}
};
Motivy a režim vysokého kontrastu
Můžete řídit úroveň motivu a kontrastu, kterou vložený obsah používá. Ve výchozím nastavení se veškerý obsah, který vložíte, zobrazí s výchozím motivem a s nulovým kontrastem. Toto chování můžete přepsat konfigurací konkrétního motivu nebo úrovně kontrastu. Další informace o motivech najdete v tématu Použití motivů sestav.
Dostupné režimy kontrastu:
enum ContrastMode {
None = 0,
HighContrast1 = 1,
HighContrast2 = 2,
HighContrastBlack = 3,
HighContrastWhite = 4
}
Ke konfiguraci konkrétního motivu použijte kód podobný následujícím řádkům:
let embedConfig = {
...
theme: {themeJson: ...}
};
Následující kód ukazuje, jak přepsat výchozí úroveň kontrastu None
:
let embedConfig = {
...
contrastMode: models.contrastMode.HighContrast1
};
Poznámka
Rozhraní API nemůže použít motiv a úroveň kontrastu současně. Pokud nakonfigurujete obě vlastnosti, rozhraní API použije zadanou úroveň kontrastu, ale ignoruje nastavení theme
.
Úroveň přiblížení
Další informace o úpravě úrovně přiblížení sestavy najdete v dokumentu přístupnosti.
Otevřít v režimu úprav
Ve výchozím nastavení se sestava, kterou vložíte, zobrazí v režimu zobrazení. Toto chování však můžete přepsat a otevřít sestavu v režimu úprav. Můžete také přepínat mezi režimy.
Konfigurace režimu úprav
Pokud chcete otevřít vloženou sestavu v režimu úprav, použijte vlastnost viewMode
společně s vlastností permissions
.
Vlastnost viewMode
můžete přiřadit následujícími hodnotami:
-
View
– otevře sestavu v režimu zobrazení. -
Edit
– otevře sestavu v režimu úprav.
Vlastnost permissions
můžete přiřadit těmito hodnotami:
-
Read
– Uživatelé můžou sestavu zobrazit. -
ReadWrite
– Uživatelé můžou sestavu zobrazit, upravit a uložit. -
Copy
– Uživatelé mohou uložit kopii sestavy pomocí Uložit jako. -
Create
– Uživatelé můžou vytvořit novou sestavu. -
All
– uživatelé můžou vytvořit, zobrazit, upravit, uložit a uložit kopii sestavy.
Při konfiguraci obsahu pro otevření v režimu úprav přiřaďte vlastnost permissions
hodnotu, která je vhodná pro úpravy, jak ukazuje následující kód:
let embedConfig = {
...
permissions: models.Permissions.All
viewMode: models.ViewMode.Edit
};
Poznámka
Hodnota permissions
, kterou nakonfigurujete, funguje pouze v případě, že získaný token pro vložení má dostatečná oprávnění. Další informace o tokenech pro vložení najdete v tématu Vytvoření tokenu pro vložení.
Přepínání mezi režimy úprav a zobrazení
Kromě určení režimu, ve kterém se má vložený obsah spustit, můžete také dynamicky přepínat mezi režimy úprav a zobrazení.
Pokud je obsah v režimu úprav a chcete přepnout do režimu zobrazení, použijte tento javascriptový kód:
// Embed the content.
let embeddedContent = powerbi.embed(container, embedConfiguration);
...
// Switch to view mode.
embeddedContent.switchMode("view");
Pokud je obsah v režimu zobrazení a chcete přepnout do režimu úprav, použijte tento javascriptový kód:
// Embed the content.
let embeddedContent = powerbi.embed(container, embedConfiguration);
...
// Switch to edit mode.
embeddedContent.switchMode("edit");
Důležité informace a omezení
Při konfiguraci vloženého obsahu zvažte následující body:
Navigační stránky umístění nejde změnit, když je panel akcí viditelný. Přečtěte si další informace o panelu akcí.
Pokud použijete vlastnost
bars
ve vlastnostisetting
, jak je popsáno v pruhy, rozhraní API použije konfiguraci pouze v případě, že vložený obsah je v režimu úprav. Pokud je váš obsah v režimu zobrazení, rozhraní API ignoruje nastaveníbars
.Pokud k zobrazení obsahu v režimu úprav použijete vlastnost
viewMode
, musíte provést dva další kroky:- Nakonfigurujte úroveň oprávnění pomocí vlastnosti
permissions
. Tato úroveň oprávnění musí uživateli udělit odpovídající přístup pro úpravy obsahu. Pokud například přiřadítepermissions
hodnotuRead,
uživatel nebude moct upravovat obsah. - Ujistěte se, že token pro vložení , který vygenerujete, má oprávnění, která podporují úpravy. Pokud například získáte token s
accessLevel
hodnotouview,
rozhraní API nezobrazí obsah v režimu úprav.
- Nakonfigurujte úroveň oprávnění pomocí vlastnosti
Vlastnost podokna nahrazuje následující vlastnosti
settings
:filterPaneEnabled
navContentPaneEnabled
Pokud ke konfiguraci viditelnosti filtru nebo navigace na stránce použijete vlastnost
panes
, nepoužívejte v aplikacifilterPaneEnabled
aninavContentPaneEnabled
vlastnost.Rozhraní API nemůže použít motiv a úroveň kontrastu pro vložený obsah současně. Pokud nakonfigurujete obě možnosti pomocí vlastností
theme
acontrastMode
, rozhraní API použije hodnotucontrastMode
s vloženým obsahem. Rozhraní API ale ignoruje nastavenítheme
.Pokud chcete na vloženou sestavu použít záložku, můžete použít vlastnost
bookmark
. Pokud zadáte název záložky s danou vlastností, rozhraní API může záložku použít pouze v případě, že existuje s tímto názvem. Podobně pokud použijete vlastnostpageName
k určení úvodní stránky, rozhraní API může tuto stránku zobrazit pouze v případě, že existuje s daným názvem. Před konfigurací názvu zvažte použití metody příslušenství, jako je například metoda Report getPages, a zkontrolujte, zda součást existuje s tímto názvem.