Inserir um relatório paginado
Dica
Tente inserir um relatório paginado ou experimentar nossas APIs de cliente na seção Explorar nossas APIs do playground do Power BI Embedded Analytics.
Este artigo aborda as etapas para inserir um relatório paginado em seu aplicativo. Saiba mais sobre relatórios paginados em O que são relatórios paginados no Power BI Premium?.
Como inserir um relatório paginado
Ao inserir conteúdo do Power BI em um aplicativo, você define o conteúdo e especifica suas configurações em um objeto de configuração. Em seguida, você passa esse objeto para a API.
Ao inserir um relatório paginado, use um objeto de configuração do tipo IPaginatedReportLoadConfiguration
:
export interface IPaginatedReportLoadConfiguration {
accessToken: string;
id: string;
embedUrl?: string;
settings?: IPaginatedReportSettings;
tokenType?: TokenType;
type?: string;
parameterValues?: IPaginatedReportParameter[];
}
Essa interface contém as seguintes propriedades:
accessToken – o token que fornece acesso aos dados do Power BI que você está inserindo. Confira Entender as diferentes soluções de inserção para saber mais sobre tokens de acesso.
embedUrl – a URL do relatório que você está inserindo. Essa URL se torna a origem do elemento iframe HTML que contém o relatório inserido. Especificamente, a API atribui a URL ao
src
atributo do iframe. Você pode usar uma API de Relatório para obter essa URL. Dois exemplos são:É recomendável passar parâmetros de relatório para o relatório usando a
parameterValues
propriedade descrita abaixo. No entanto, você também pode passar parâmetros para o relatório adicionando a cadeia de caracteres de consulta ao final da URL de inserção. Leia mais sobre como passar parâmetros de URL em relatórios paginados. Veja exemplos de como passar parâmetros para uma URL.id – a ID do relatório do Power BI que você está inserindo.
hostname – o valor padrão
hostname
é app.powerbi.com. Se você estiver usando uma nuvem soberana, forneça a URL aqui. Se você forneceu um valor paraembedURL
, ohostname
será ignorado.settings – um objeto de configuração do tipo IPaginatedReportSettings. Esse objeto especifica informações sobre a aparência do painel de parâmetros do relatório. O painel de parâmetros é a barra abaixo da barra de ação que pode ser expandida ou ocultada.
Você pode mostrar ou ocultar o painel de parâmetros clicando no botão Parâmetros na barra de ações. Esse botão está disponível por padrão. Mas se você configurar a propriedade do
enabled
painel para serfalse
, o botão Parâmetros não estará disponível.Por padrão, a API recolhe o painel de parâmetros. Se você definir a propriedade do
expanded
painel comotrue
, a API carregará o relatório com esse painel expandido.Esse código mostra uma maneira de configurar a
settings
propriedade :settings: { commands: { parameterPanel: { enabled: true, expanded: true } } }
tokenType – o tipo de token que fornece acesso aos dados do Power BI que você está inserindo.
- Use
models.TokenType.Aad
se você estiver inserindo para sua organização (o usuário possui dados). - Use
models.TokenType.Embed
se você estiver inserindo para seus clientes (o aplicativo possui dados).
Confira Entender as diferentes soluções de inserção para obter mais informações.
- Use
parameterValues – um objeto de configuração do tipo
IPaginatedReportParameter
. Defina os parâmetros de relatório usando essa propriedade. Esse método usa o SDK do JavaScript e é o método preferencial de passar parâmetros de relatório. Por exemplo:parameterValues: [ {name: "State", value: "WA"}, {name: "City", value: "Seattle"}, {name: "City", value: "Bellevue"}, {name: "City", value: "Redmond"} ]
Esse método só pode ser usado para passar parâmetros de relatório (aqueles parâmetros que têm um prefixo
rp:
de URL ) e não parâmetros rdl (com o prefixordl:
de URL ).
Exemplo
O exemplo a seguir mostra como inserir um relatório paginado:
// Set up the configuration object that determines what to embed and how to embed it.
let embedConfiguration = {
accessToken: anAccessToken,
embedUrl: anEmbedUrl,
uniqueId: aReportId,
tokenType: aTokenType,
type: 'report',
datasetBindings: [{
sourceDatasetId: "originalDatasetId",
targetDatasetId: "notOriginalDatasetId"
}]
};
// Get a reference to the HTML element that contains the embedded report.
let embedContainer = $('#embedContainer')[0];
// Embed the report.
let report = powerbi.embed(embedContainer, embedConfiguration);
Inclua todas as DatasetIds usadas para associação no token de inserção de vários recursos.
Considerações e limitações
- Para usar a associação dinâmica, consulte Associar conjuntos de dados dinamicamente a um relatório paginado.
- Não há suporte para o método inicializado em relatórios paginados.
- Não há suporte para parâmetros de vários valores ao inserir um relatório paginado.
- A
parameterValues
propriedade só pode ser usada para parâmetros de relatório. Ele não pode ser usado para parâmetros rdl. - Não há suporte para a inserção de um relatório paginado com um conjunto de dados em tempo real (conjunto de dados push).