Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Todos os visuais começam com uma classe que implementa a interface IVisual. Você pode dar qualquer nome à classe, desde que haja uma classe que implemente com exatidão a interface IVisual.
Observação
O nome da classe do visual deve ser o mesmo que visualClassName no arquivo pbiviz.json.
A classe visual deve implementar os seguintes métodos, conforme mostrado no exemplo abaixo:
-
constructor: um construtor padrão que inicializa o estado do visual -
update: atualiza os dados do visual -
getFormattingModel, retorna um modelo de formatação que populam o painel de propriedades (opções de formatação), em que você pode modificar propriedades, conforme necessário -
destroy: um destrutor padrão para a limpeza
class MyVisual implements IVisual {
constructor(options: VisualConstructorOptions) {
//one time setup code goes here (called once)
}
public update(options: VisualUpdateOptions): void {
//code to update your visual goes here (called on all view or data changes)
}
public getFormattingModel(): FormattingModel {
// returns modern format pane formatting model that contain all format pane components and properties (called on opening format and analytics pane or on editing format properties)
}
public destroy(): void {
//one time cleanup code goes here (called once)
}
}
construtor
O constructor da classe do visual é chamado quando é criada uma instância do visual. Ele pode ser usado para qualquer operação de configuração necessária para o visual.
constructor(options: VisualConstructorOptions)
VisualConstructorOptions
Essas interfaces são atualizadas a cada nova versão da API. Para obter o formato de interface mais atualizado, acesse nosso repositório do GitHub.
A lista a seguir descreve algumas das propriedades da interface VisualConstructorOptions:
element: HTMLElement: uma referência ao elemento DOM que conterá o visualhost: IVisualHost: uma coleção de propriedades e serviços que podem ser usados para interagir com o host do visual (Power BI)IVisualHostcontém os seguintes serviços:-
createSelectionIdBuilder: gera e armazena metadados para itens selecionáveis em seu visual -
createSelectionManager: cria a ponte de comunicação usada para notificar o host do visual sobre alterações no estado de seleção; confira API de Seleção. hostCapabilitiesrefreshHostData-
downloadService: retorna informações de resultado expandidas do download. -
eventService: retorna informações sobre eventos de renderização. hostEnv-
displayWarningIcon: retorna mensagem de aviso ou erro. -
licenseManager: retorna informações sobre a licença. -
createLocalizationManager: gera um gerente para ajudar com a Localização -
applyJsonFilter: aplica tipos de filtros específicos. Consulte API de filtro -
applyCustomSort: permite opções de classificação personalizadas. -
acquireAADTokenService: retorna informações de autenticação do Microsoft Entra ID. -
webAccessService: retorna o status de permissão para acessar recursos remotos. -
openModalDialog: retorna uma caixa de diálogo. -
persistProperties: permite que os usuários criem configurações persistentes e as salvem junto com a definição do visual, para que fiquem disponíveis na próxima recarga -
eventService: retorna um serviço de evento para dar suporte a eventos de Renderização -
storageService: retorna um serviço para ajudar a usar o armazenamento local no visual -
storageV2Service: retorna um serviço para ajudar a usar a versão 2 do armazenamento local no visual -
tooltipService: retorna um serviço de dica de ferramenta para ajudar a usar dicas de ferramentas no visual telemetrydrill-
launchUrl: ajuda a iniciar o URL na próxima guia -
authenticationService: retorna um token do Microsoft Entra ID. -
locale: retorna uma cadeia de caracteres de localidade; confira Localização -
instanceId: retorna uma cadeia de caracteres para identificar a atual instância do visual -
colorPalette: retorna a colorPalette necessária para aplicar cores aos seus dados -
fetchMoreData: dá suporte ao uso de mais dados do que o limite padrão (1.000 linhas). Consulte Buscar mais dados -
switchFocusModeState: ajuda a alterar o estado do modo de foco
-
update
Todos os visuais devem implementar um método de atualização pública, chamado sempre que há uma alteração no ambiente de dados ou de host.
public update(options: VisualUpdateOptions): void
VisualUpdateOptions
-
viewport: IViewport: dimensões do visor no qual o visual deve ser renderizado -
dataViews: DataView[]: o objeto de visualização de dados que contém todos os dados necessários para renderizar seu visual (um visual normalmente usa a propriedade categórica em DataView) -
type: VisualUpdateType: sinalizadores que indicam o tipo de dado sendo atualizado (Data | Resize | ViewMode | Style | ResizeEnd) -
viewMode: ViewMode: sinalizadores que indicam o modo de exibição do visual (View | Edit | InFocusEdit) -
editMode: EditMode: sinalizador que indica o modo de edição do visual (Default | Advanced) (se o visual der suporte a AdvancedEditMode, ele deverá renderizar seus controles de interface do usuário avançados somente quando editMode for definido como Advanced; confira AdvancedEditMode) -
operationKind?: VisualDataChangeOperationKind: sinalizador que indica o tipo de alteração de dados (Create | Append) -
jsonFilters?: IFilter[]: coleção de filtros JSON aplicados -
isInFocus?: boolean: sinalizador para indicar se o visual está no modo de foco ou não -
pendingChanges?: PendingChanges- sinalizador para indicar que alterações de filtro local são feitas, mas ainda aplicadas ao relatório, geralmente disparadas quando aplicar todas as segmentações botão existependingChanges[Filter]: boolean
getFormattingModel (opcional)
Esse método é chamado uma vez sempre que abrimos o painel de propriedades ou o usuário edita qualquer uma das propriedades no painel. Ele retorna FormattingModel com todas as informações sobre o design, hierarquia, propriedades e valores de formatação mais recentes do painel de propriedades.
getFormattingModel(): visuals.FormattingModel;
destroy (opcional)
A função destroy é chamada quando o visual é descarregado e pode ser usada para tarefas de limpeza, como remover ouvintes de evento.
public destroy(): void
Dica
Geralmente, o Power BI não chama destroy, pois é mais rápido remover o IFrame inteiro que contém o visual.