Como Fazer

Como juntar duas tabelas do Dataverse no Power Automate

Luiz Antonio Sgargeta
- Sócio fundador e CEO da Trinapse, IA aplicada, Microsoft 365 e Power Platform
· 2 min de leitura
Como juntar duas tabelas do Dataverse no Power Automate

O Dataverse permite que você armazene, de forma segura, dados usados por aplicativos empresariais. Os dados dentro do Dataverse são armazenados dentro de um conjunto de tabelas. Uma tabela é um conjunto de linhas (antes conhecido como registros) e colunas (antes conhecido como campos/atributos). Cada coluna da tabela se destina a armazenar um certo tipo de dados; por exemplo, nome, idade, salário e assim por diante. O Dataverse inclui um conjunto base de tabelas padrão que cobrem cenários típicos, mas você também pode criar tabelas personalizadas específicas de sua organização e preenchê-las com dados usando o Power Query. Os criadores de aplicativos podem usar o Power Apps para criar aplicativos avançados que usam esses dados.

Cenário

Se você já trabalhou com bancos de dados SQL, provavelmente sabe como é simples unir duas tabelas. Mas e o Dataverse? Existe alguma maneira fácil de conectar duas tabelas não relacionadas no fluxo do Power Automate? Sem muitos loops e um fluxo muito lento?

Power Automate conector Dataverse — Cenário (imagem 1 de 3)

Mesclando as tabelas

Juntar duas tabelas não é diferente de mesclar dois arrays – afinal, as tabelas são apenas dois arrays com linhas. Você precisa de um valor compartilhado em ambas as tabelas, para este exemplo vamos usar uma coluna de pesquisa (e esquecer por um momento que as tabelas estão realmente conectadas). Uma tabela tem o valor de pesquisa = id da linha, a outra tabela tem a linha real com esse id. Sabendo disso, há um bom artigo de Paul Murana sobre como mesclar matrizes com eficiência.

Para aplicar essa abordagem em tabelas do Dataverse:

Em primeiro lugar, liste as linhas em ambas as tabelas.

Power Automate conector Dataverse — Mesclando as tabelas (imagem 2 de 3)

Em segundo lugar, use ‘Selecionar’ para selecionar as colunas relevantes na segunda tabela. Esta etapa é necessária para a eficiência do fluxo.

Power AutomatePower Automate conector Dataverse

Em terceiro lugar, inclua a matriz de saída em elementos adicionais e transforme-a em XML.

Power Automate conector Dataverse — Mesclando as tabelas (imagem 3 de 3)

E uma vez que você tenha um XML, você pode usar a expressão xpath(…) , nesta situação em outra ação ‘Select’. Prefiro usar ‘Selecionar’, pois a ação padrão ‘Listar linhas’ fornece muitas colunas quando você geralmente precisa apenas de algumas delas.

Selecione os valores da primeira tabela e, para os valores da segunda tabela, use uma expressão xpath(…) conforme abaixo.

xpath (outputs('XML'),  concat('//Array&#91;<UniqueIDFromSelect>/text()="', <LookupColumn Value>, '"]/<ColumnNameFromSelect>/text()'))?&#91;0]

Observação: < … > são espaços reservados, substitua-os incluindo < e >!

Para minhas tabelas, ficará como abaixo:

xpath (outputs('XML'), concat('//Array&#91;GUID/text()="', item()?&#91;'_cr09b_lookupcolumn_value'], '"]/AnotherLookupColumn/text()'))?&#91;0]

Como juntar duas tabelas do Dataverse no Power Automate — Mesclando as tabelas (imagem 4 de 4)

E pronto, você acabou de selecionar os dados de duas tabelas do Dataverse e transformá-los em um único array de objetos.

Resumo

Ao mesclar duas tabelas do Dataverse, o Power Automate oferece várias opções de como uni-las. Você pode fazê-lo linha por linha, usando um ‘Aplicar a cada’, e esperar para sempre que o fluxo termine, ou você pode usar um pouco de código. Com algumas ações para preparar os dados, você pode usar um ‘Select’ com a expressão xpath(…) que juntará tudo.

Para mais artigos como este continue acessando o blog da Trinapse.

Luiz Antonio Sgargeta
Sócio fundador e CEO da Trinapse, IA aplicada, Microsoft 365 e Power Platform

Luiz Antonio Sgargeta é sócio fundador e CEO da Trinapse, consultoria brasileira de Microsoft 365 com quase duas décadas de operação, acumula mais de 20 anos em desenvolvimento de software e em ambientes corporativos de alta complexidade.

Ver maisVer menos

Trabalha com SharePoint desde o SharePoint Portal Server 2003 e com .NET desde a versão 1.0. Acompanhou a plataforma em todas as suas reinvenções, do portal de documentos on-premises ao SharePoint Online dentro do Microsoft 365, o que dá a ele uma leitura rara sobre o que muda de verdade e o que é apenas nome novo para o mesmo problema.

No início da carreira atuou em uma das maiores operações de e-commerce do país, em sistemas que não toleram degradação de performance nem indisponibilidade, essa origem definiu o critério que ele aplica até hoje: solução boa é a que sustenta volume real, integra com o legado que já existe e não quebra no pico.

Depois disso, passou por praticamente todo tipo de projeto corporativo, de portais e intranets de milhares de usuários a integrações críticas e automação de processos de ponta a ponta, sempre em grandes empresas e em desafios de alta exigência.

A marca do trabalho dele é a tradução entre tecnologia e negócio, levanta a necessidade real por trás do pedido do cliente, questiona o processo antes de automatizá-lo e desenha a solução pelo resultado esperado, não pela ferramenta disponível, é o que permite conversar com a diretoria sobre retorno e com o time técnico sobre arquitetura na mesma reunião.

Hoje lidera a frente comercial e estratégica da Trinapse e conduz a empresa no novo ciclo da inteligência artificial, com foco em agentes de IA e operação de processos assistida por IA para cooperativas de crédito, agronegócio e indústria. Escreve no blog da Trinapse desde 2019, com mais de 450 artigos sobre IA, SharePoint, Power Platform, Modern Workplace e transformação de processos, sempre a partir de projeto entregue e não de teoria.

LinkedIn
Compartilhar:

Precisa aplicar isso na sua empresa? Fale com nossos especialistas.

Falar com um especialista