Editar

Partilhar via


Write-back de dados do Power BI com Power Apps e Power Automate

Power BI
Power Apps
Power Automate
Microsoft Power Platform

Esta solução implementa um aplicativo de tela do Power Apps por meio do visual nativo do Power Apps no Power BI. O Power Automate fornece automação em segundo plano para processamento em massa e atualização.

Arquitetura

Diagram that shows an architecture for Power BI data write-back.

Transfira um ficheiro do Visio desta arquitetura.

Fluxo de dados

Os componentes principais desta solução incorporam a capacidade de passar dados pré-filtrados do Power BI para um funil Power Apps e/ou Power Automate para quaisquer atualizações em um back-end de suporte. É importante atualizar o conjunto de dados (ou fluxo de dados) do Power BI para garantir que as atualizações fiquem visíveis para todos os usuários.

Implementação

(Para obter mais informações, consulte Implante esse cenário mais adiante neste artigo.)

A. Implante o Dataverse e um aplicativo orientado por modelo de suporte com tabelas personalizadas relevantes.

B. Importe todas as tabelas e exibições back-end para um conjunto de dados do Power BI (PBIX).

C. Inicie a integração entre o Power BI e o Power Apps através da visualização do Power Apps na aplicação de ambiente de trabalho.

D. Use o Power Apps para criar um aplicativo de tela para fornecer a capacidade de interagir e atualizar todos os dados necessários.

Fluxo do processo

  1. Reúna dados. Filtre uma linha ou um conjunto de dados selecionado selecionando parte de uma visualização em um relatório do Power BI. Essa interação passa os dados subjacentes necessários da interface de relatório do Power BI para o aplicativo de tela incorporado.
  2. Atualize os dados ou insira-os no Dataverse usando a interface do usuário do aplicativo de tela. Você pode fazer isso usando controles acoplados, como formulários e galerias, que são nativos do Power Apps e que estão diretamente vinculados a dados de back-end. Como alternativa, você pode implementar uma funcionalidade mais personalizada usando controles não acoplados. Esses controles exigem código Power Fx adicional. Para cenários de atualização única, você pode codificar o aplicativo para confirmar dados diretamente no back-end por meio das funções SubmitForm, Patch e UpdateIf. Para cenários de atualização em massa, você pode estabelecer uma coleção (uma tabela virtual) usando a função Collect . Em seguida, você pode passar a coleção para processar todas as atualizações de dados de uma só vez. Consulte Interface do usuário do Power App para obter capturas de tela do aplicativo de tela.
  3. Envie atualizações por push para a fonte. Um fluxo Power Automate fornece automação em segundo plano conforme exigido pelo cenário. Para cenários de atualização única em que apenas uma linha da tabela selecionada é atualizada, um fluxo simples é executado para atualizar o conjunto de dados PBIX. Isso garante que os dados atualizados sejam refletidos no back-end do Dataverse e na camada de relatório. Para cenários de atualização em massa, um fluxo mais complexo é executado. Ele consome uma coleção JSON de objetos aninhados que é passada da coleção Power Apps descrita na etapa anterior. Em seguida, o fluxo itera através de cada objeto aninhado, atualizando individualmente os dados no Dataverse conforme necessário. Após a conclusão da etapa de atualização, o fluxo atualiza o PBIX. Se o relatório do Power BI usar DirectQuery, as etapas automatizadas associadas à atualização do PBIX não serão necessárias.
  4. Visualize atualizações. Todos os dados são atualizados e atualizados. O usuário final atualiza a janela do navegador para ver a atualização.

Componentes

  • Dataverse. Uma solução de banco de dados back-end que você pode usar para armazenar dados em um ambiente altamente seguro, personalizável e escalável. Esse ambiente se conecta perfeitamente ao Dynamics 365, Azure, Visual Studio e Power Query. O Dataverse fornece processamento de dados eficiente e um modelo de dados compartilhados de código aberto que fornece consistência semântica.
  • Power BI. Uma coleção de serviços de software, aplicativos e conectores que trabalham juntos para transformar suas fontes de dados não relacionadas em insights coerentes, visualmente imersivos e interativos.
    • Também pode implementar write-back de dados diretamente nos fluxos de dados do Power Query.
  • Power Apps. Um conjunto de aplicativos, serviços e conectores, todos disponíveis em uma plataforma de dados abrangente. Você pode usar esse serviço para criar rapidamente aplicativos para atender às necessidades de negócios personalizadas. Nesta solução, o Power Apps é usado para atualizações de dados e inserções em uma interface do usuário intuitiva. Ele também funciona como um gatilho para a automação.
  • Power Automate. Um serviço que você pode usar para criar fluxos de trabalho automatizados entre uma variedade de aplicativos conectados e serviços externos. Você pode configurá-lo para transferir dados, enviar notificações, coletar artefatos e muito mais. Nesta solução, o Power Automate é usado para processamento em massa de dados atualizados e para atualização de dados na camada PBIX e/ou Dataflow para enviar dados atualizados de volta para um relatório do Power BI.

Alternativas

  • As alternativas ao Dataverse incluem as seguintes soluções:
  • Pode utilizar os fluxos de dados do Power Query separadamente ou em conjunto com conjuntos de dados do Power BI para esta solução, dependendo da escala e da eficiência dos dados no seu ambiente. Se você usar fluxos de dados em sua solução, precisará gerenciar sua extensão Power Automate para atualizar cada fluxo de dados ou conjunto de dados de acordo.
  • Você pode criar aplicativos personalizados usando JavaScript, HTML, C# ou outras linguagens que podem ser incorporadas em um relatório do Power BI para atualizar os dados selecionados. Esses aplicativos, no entanto, precisam ser implementados de forma diferente na camada de relatório do Power BI porque não há visualização nativa como existe para o Power Apps. Se você implementar escalabilidade para esses aplicativos, precisará monitorá-la. Para obter informações sobre como implementar melhor os componentes personalizados no Power BI, consulte o Centro de Desenvolvedores do Power BI.
  • Você também pode usar o visual Power Automate para Power BI para cenários de write-back. Esse visual é otimizado para lidar com grandes conjuntos de dados e o Power Apps lida com a delegação. Você pode usar os visuais Power Automate e Power Apps juntos para fornecer eficiência escalável. Se você usar o visual Power Automatic, a atualização de dados ocorrerá em segundo plano sem a presença de uma interface do usuário exibida.

Detalhes do cenário

Esta solução para a funcionalidade de write-back de dados no Power BI fornece uma maneira interativa e eficiente de alterar dados diretamente do Power BI. Atualmente, o Power BI não tem uma solução nativa que você possa usar para atualizações em linha ou em massa de dados enquanto interage com um relatório ou painel. Para enviar alterações aos dados, você precisa fazer atualizações diretamente em seus armazenamentos de dados e, se não estiver usando o DirectQuery, atualizar um conjunto de dados para concluir o fluxo do processo. Esse processo pode ser ineficiente e pode representar problemas para os usuários que não têm acesso a um back-end específico ou aos dados subjacentes.

Potenciais casos de utilização

Esta arquitetura é altamente iterativa. Você pode usá-lo com vários armazenamentos de dados back-end diferentes e adaptá-lo a vários casos de uso. Os usos práticos para esta arquitetura incluem:

  • Edição em linha. A solução pode ser usada para dados que precisam ser atualizados instantaneamente sem acesso provisionado a um banco de dados back-end.
  • Fluxos de trabalho de aprovação. Estender os recursos do Power BI com o Power Apps e o Power Automate permite que os usuários finais coletem dados que exigem revisão diretamente de um painel e os enviem para aprovadores subsequentes.
  • Alertas orientados por dados. A solução pode fornecer personalização para notificações automatizadas sobre insights específicos por meio do envio de registros ou da passagem de pacotes de dados para um fluxo do Power Automatic.

Interface do usuário do Power App

As capturas de tela a seguir ilustram o processo de passagem de dados do Power BI para o banco de dados subjacente.

Esta é a tela inicial do aplicativo de tela:

Screenshot that shows the home screen for the canvas app.

Esta captura de tela mostra o processo para uma única atualização:

Screenshot that shows the process for a single update.

Esta captura de tela mostra o processo para uma atualização em massa:

Screenshot that shows the process for a bulk update.

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, um conjunto de princípios orientadores que você pode usar para melhorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Microsoft Azure Well-Architected Framework.

Escalabilidade

Para estabelecer corretamente a integração entre o Power BI e o aplicativo de tela para suporte de write-back, você precisa configurá-lo criando o aplicativo de tela diretamente da visualização do Power Apps no relatório do Power BI. Se essa integração não estiver configurada corretamente, não haverá como passar dados filtrados cruzados da camada de relatório do Power BI para a interface do usuário do Power Apps.

Você precisa abordar a delegação quando considerar a escalabilidade. A delegação é um conceito exclusivo do Power Apps (aplicativos de tela) que limita o escopo do processamento de dados na nuvem enquanto a lógica de um aplicativo está em execução. Os aplicativos de tela implementados nesta solução precisam ser provisionados corretamente para lidar com grandes conjuntos de dados que usam loops ou instruções de filtro complexas para garantir que todos os dados sejam cobertos quando você executa uma atualização no banco de dados back-end e, em seguida, no conjunto de dados do Power BI. Você pode usar o Power Automate neste cenário para aumentar a eficiência ao lidar com atualizações em massa em grande escala de mais de 2.000 linhas.

Disponibilidade

Todos os componentes descritos nessa arquitetura são serviços gerenciados que são dimensionados automaticamente dependendo da disponibilidade regional. Atualmente, o Power Apps está disponível em seis regiões principais e 42 idiomas. Para obter mais informações, consulte Disponibilidade de serviços.

O Dataverse foi projetado para atender às necessidades de escalabilidade em nível empresarial usando limites de proteção de serviço para mitigar comportamentos mal-intencionados que podem interromper o serviço.

Para obter informações sobre SLAs, consulte Contratos de nível de serviço.

Segurança

A segurança em nível de linha (RLS) é a melhor maneira de restringir o acesso a dados para usuários individuais ou grupos no Power BI. Os modelos RLS persistem nesta solução. Se as permissões de um usuário no Power BI estiverem definidas para exibir apenas um subconjunto do modelo de dados geral, somente esse subconjunto poderá ser passado para a camada do Power Apps. No entanto, você precisa configurar a camada do Power Apps para que os usuários finais possam acessar apenas determinados dados.

Você configura a segurança de dados para o Power Apps usando a segurança baseada em função no back-end do Dataverse. Você pode aplicar funções a equipes, grupos ou usuários individuais para especificar quais registros estão disponíveis para manipulação nesta solução. Essa funcionalidade permite que você use um único aplicativo de tela para usuários que têm diferentes níveis de acesso ao back-end. Para garantir a consistência em toda a solução, certifique-se de que as configurações de segurança baseadas em função correspondam às permissões descritas no modelo de segurança em nível de linha do Power BI para cada equipe, grupo ou usuário.

Para obter mais informações sobre como implementar uma estrutura bem arquitetada, consulte o pilar de segurança da Microsoft.

Otimização de custos

A otimização de custos consiste em procurar formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Visão geral do pilar de otimização de custos.

Power Apps e Power Automate são aplicativos de software como serviço (SaaS) que têm modelos de preços flexíveis. Pode licenciar Power Apps com planos por aplicação ou por utilizador que se adaptem às suas necessidades empresariais. Da mesma forma, você pode licenciar o Power Automate com planos por usuário ou por fluxo (automação única).

Várias versões do Power BI estão disponíveis. A sua escolha depende do volume de dados ingeridos. Para o Power BI Pro, apenas um plano por usuário está disponível. O Power BI Premium fornece planos por usuário e por capacidade.

Implementar este cenário

Você precisa ter as licenças relevantes da Power Platform para executar essa solução em produção. Os administradores ou personalizadores da solução também precisam das funções de segurança adequadas para habilitar o acesso ao Power Apps e ao Power Automate. Se ainda não tiver acesso a estas licenças ou funções, pode utilizar o Plano de Programador do Power Apps para iniciar o desenvolvimento entretanto.

Para implantar esta solução:

  1. Crie um arquivo PBIX no Power BI Desktop como o componente base da sua camada de relatórios. Importe todos os dados necessários do Dataverse ou de qualquer back-end que você esteja usando.
  2. Adicione o visual do Power Apps para Power BI diretamente do painel Visualização . Criar um aplicativo diretamente do visual do Power Apps para Power BI é a única maneira de implementar a integração entre o Power BI e o Power Apps.
  3. Depois de implementar a integração, você precisa desenvolver, projetar e codificar o aplicativo de tela para executar os processos de negócios que deseja simplificar.
  4. Se o processamento em massa for necessário, um desenvolvedor precisará criar um fluxo Power Automate para lidar com o consumo de dados do Power Apps e sua propagação para o Dataverse. Você pode configurar esse fluxo para fornecer quaisquer notificações ou fluxos de trabalho de aprovação que deseja incorporar na automação.
  5. Quando o aplicativo estiver concluído, você precisará incorporá-lo ao relatório do Power BI. Você pode fazer isso diretamente na tela de relatório do Power BI ou configurando uma página de detalhamento.

Contribuidores

Este artigo é mantido pela Microsoft. Foi originalmente escrito pelos seguintes contribuidores.

Principais autores:

Outros contribuidores:

Para ver perfis não públicos do LinkedIn, inicie sessão no LinkedIn.

Próximos passos

Documentação do produto:

Módulos de treinamento do Microsoft Learn: