Com um layout de relatório personalizado, você pode inserir um relatório do Power BI com um layout diferente do que foi salvo no relatório original. Ao definir um layout de relatório personalizado, você pode variar o tamanho de uma página de relatório e controlar o tamanho, a posição e a visibilidade dos visuais na página.
Visão geral do layout personalizado
Para criar um layout de relatório personalizado, defina um objeto de layout personalizado e passe-o para o objeto de configurações em uma configuração de inserção.
No objeto de configurações, defina layoutType como models.LayoutType.Custom e defina customLayout para seu objeto de layout personalizado:
Cada layout de relatório personalizado é representado por um objeto de layout personalizado que você define para especificar o tamanho da página, a escala de tela e o layout das páginas. No layout de páginas, você pode especificar um layout visual para cada visual e um layout visual padrão para o relatório.
Definição de interface de layout personalizado
Use a interface ICustomLayout para definir um objeto de layout personalizado:
pagesLayout – um objeto PagesLayout que controla o layout de cada visual em uma página. Essa propriedade mapeia um nome de página para um objeto PageLayout. Para obter mais informações, consulte Definir um layout de páginas.
type PagesLayout = { [key: string]: IPageLayout; }
Definir um layout de páginas
Use a interface IPageLayout para definir um objeto de layout de páginas. A interface permite definir um mapa de layout visual, que mapeia cada nome visual para um novo objeto de layout e um layout visual padrão. Definir um layout de páginas é opcional. Se você não fornecer um layout para um relatório, o Power BI aplicará o layout padrão ao relatório. Ou seja, o layout padrão é o que se aplica a todos os visuais que você não especifica no objeto de layout de visuais. Por exemplo, inicialmente você pode ocultar todos os visuais em um relatório e, em seguida, mostrar visuais selecionados no layout de sua escolha.
A interface IPageLayout tem as seguintes propriedades:
defaultLayout – um objeto IVisualLayout que define o layout visual padrão. O layout padrão é aplicado automaticamente a todos os visuais na página do relatório.
defaultLayout?: IVisualLayout
visualsLayout - Um objeto VisualsLayout que define um mapa entre os nomes visuais e layouts visuais na página do relatório.
visualsLayout: VisualsLayout
VisualsLayout = { [key: string]: IVisualLayout; }
Definir um layout visual
Para definir um layout visual, use a interface IVisualLayout para criar um objeto de layout visual e definir sua posição, tamanho e visibilidade.
Para atualizar o layout do relatório quando o relatório já estiver carregado, use o método report.updateSettings. Para obter mais informações, consulte Atualizar configurações de relatório no runtime.
Exemplo
Este exemplo de código completo mostra como inserir um relatório com um layout de relatório personalizado. Todos os visuais estão ocultos, exceto para dois visuais: VisualContainer1 e VisualContainer2.
visualContainer1 tem um novo layout, posição e tamanho, enquanto VisualContainer2 fica visível com o layout padrão do relatório.
// Get models. Models contains enums that can be used.
let models = window['powerbi-client'].models;
let embedConfig = {
type: 'report',
id: reportId,
embedUrl: 'https://app.powerbi.com/reportEmbed',
tokenType: models.TokenType.Embed,
accessToken: 'H4...rf',
settings: {
layoutType: models.LayoutType.Custom
customLayout: {
pageSize: {
type: models.PageSizeType.Custom,
width: 1600,
height: 1200
},
displayOption: models.DisplayOption.ActualSize,
pagesLayout: {
"ReportSection1" : {
defaultLayout: {
displayState: {
mode: models.VisualContainerDisplayMode.Hidden
}
},
visualsLayout: {
"VisualContainer1": {
x: 1,
y: 1,
z: 1,
width: 400,
height: 300,
displayState: {
mode: models.VisualContainerDisplayMode.Visible
}
},
"VisualContainer2": {
displayState: {
mode: models.VisualContainerDisplayMode.Visible
}
},
}
}
}
}
}
};
...
// Embed the report and display it within the div container.
let report = powerbi.embed(embedContainer, embedConfig);
Deseja aprender a adicionar um layout a um relatório no Microsoft Dynamics 365 Business Central? Neste módulo, você aprenderá mais sobre o layout RDLC (definição de relatório do cliente) e os formatos de layout do Word, além de como criá-los.
Demonstre métodos e boas práticas que se alinhem aos requisitos técnicos e comerciais para modelagem, visualização e análise de dados com o Microsoft Power BI.