Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Vložené analytické powerbi.load Power BI a rozhraní API pro report.render můžou zlepšit uživatelské prostředí tím, že vývojářům poskytne větší flexibilitu při vkládání sestav fází.
Za normálních okolností načtete vloženou sestavu pomocí powerbi.embed:
let report = powerbi.embed(embedContainer, embedConfig);
Vložená sestava se načte a vykreslí v uživatelském rozhraní. Koncový uživatel pak uvidí všechny interakce s vykreslovanou sestavou. Pokud například použijete stav průřezu, koncový uživatel uvidí, že se průřez projeví po vykreslení sestavy.
Pokud chcete tyto interakce před koncovými uživateli skrýt, powerbi.load a report.render rozhraní API rozdělí proces vkládání do fází. Funkce powerbi.load načte sestavu, abyste mohli pracovat s položkami, než koncoví uživatelé uvidí výsledky. Funkce report.render pak zobrazí sestavu.
Náklad
Funkce powerbi.load načte sestavu, ale nevykreslí ji, takže interakce můžou nastat předtím, než koncový uživatel uvidí výsledky. Můžete například použít powerbi.load s report.getPagesa určit, která stránka se má koncovému uživateli zobrazit. Nebo můžete použít page.getVisualsa pak rozhodnout, které vizuály se mají zobrazit nebo skrýt.
Podobně jako powerbi.embedvyžaduje funkce powerbi.load element HTML a objekt IEmbedConfiguration.
Po dokončení zatížení se aktivuje událost loaded.
let config = {
...
};
// Get a reference to the embedded report HTML element.
let embedContainer = $('#embedContainer')[0];
// Load the report in the container.
let report = powerbi.load(embedContainer, config);
report.on('loaded', function() {
...
});
Poskytnout
Pokud používáte powerbi.load, musíte po spuštění kódu zavolat funkci report.render na funkci obslužné rutiny události loaded. Pomocí report.render můžete pokračovat v vykreslování sestavy a zobrazit vloženou sestavu.
Událost rendered se aktivuje, když se sestava dokončí vykreslování.
report.on('loaded', function() {
report.render();
});
report.on('rendered', () => {
...
});
Další informace o zpracování událostí naleznete v tématu Zpracování událostí.
Příklad
Následující příklad kódu načte sestavu, nastaví filtry a pak vykreslí filtrovanou sestavu.
// Build the config object.
let config = {
type: 'report',
tokenType: TokenType.Embed,
accessToken: ...,
embedUrl: ...,
id: ...,
...
};
// Get a reference to the embedded report HTML element.
let embedContainer = $('#embedContainer')[0];
// Load the report in the container.
let report = powerbi.load(embedContainer, config);
...
report.on('loaded', async () => {
await report.setFilters(filters);
report.render();
});
Důležité informace a omezení
Postupné vkládání může zpomalit vykreslování sestav, proto ho nezapomeňte použít správně a jenom v případě, že ho potřebujete.
Po načtení sestavy a před voláním report.rendermůžete volat následující rozhraní API:
| Metoda | Akce |
|---|---|
| BookmarksManager.getBookmarks, BookmarksManager.apply | Získejte a použijte záložky. Zachytávání záložek se nepodporuje. |
| Report.updateSettings | Aktualizujte nastavení sestavy. |
| Report.applyTheme | Použijte motiv sestavy. |
| Report.getFilters, Report.setFilters, Report.removeFilters | Získejte, nastavte a odeberte filtry sestav. |
| Report.getPages | Získejte stránky sestavy. |
| Page.setActive | Nastavte aktivní stránku sestavy. |
| Page.getFilters, Page.setFilters, Page.removeFilters | Získejte, nastavte a odeberte filtry stránek. |
| Page.getVisuals | Získejte vizuály stránky. |
| Visual.getFilters, Visual.setFilters, Visual.removeFilters | Získejte, nastavte a odeberte filtry vizuálů. |
| Visual.getSlicerState, Visual.setSlicerState | Získejte a nastavte stav průřezu vizuálu. |