Transformar o formulário do InfoPath para o Power Apps
Você cria coisas incríveis no InfoPath e deseja saber como oferecer essas ótimas criações em uma plataforma mais robusta?
Principais vantagens do Power Apps em relação ao InfoPath
Como a maioria dos usuários do InfoPath Power, você tem usado seu conjunto de habilidades exclusivas para criar formulários incríveis há algum tempo. Você está muito satisfeito com os formulários, mas também conhece suas limitações: a aparência "clássica", uma experiência que não é a ideal para dispositivos móveis, a incerteza sobre a viabilidade futura e a restrição de sempre precisar escrever código para se conectar com outros serviços.
A equipe do Power Apps ouviu esses e muitos outros desafios. Eles trabalharam duro para incorporar uma experiência melhor e permitir que você crie aplicativos de tela, aproveitando suas habilidades existentes de tecnologia e negócios. Usando o Power Apps, você pode criar e implantar rapidamente as soluções de negócios certas sem escrever código.
O Power Apps possibilita um futuro poderoso
O Power Apps é uma plataforma SaaS (software como serviço) projetada para permitir a criação rápida de aplicativos de altamente funcionais que podem ser implantados na Web, no SharePoint, no Dynamics 365, no Teams, no Power BI ou em um dispositivo móvel sem nenhum trabalho adicional. Como você pode implantá-los apenas concedendo a alguém a URL do aplicativo publicado, eles também são muito fáceis de atualizar.
Compartilhar seus aplicativos
Você já tentou criar um aplicativo e, em seguida, publicá-lo em dispositivos iOS ou Android? Isso é complicado. Se você quiser implantar um segundo aplicativo ou atualizar um existente, os usuários precisarão executar várias etapas adicionais. Não com o Power Apps. Os usuários instalam o Power Apps Mobile em seus dispositivos e entram. Pronto, agora eles têm todos os aplicativos altamente funcionais que você compartilhou com eles. No futuro, quando você atualizar esses aplicativos ou enviar por push novos aplicativos a eles, os aplicativos aparecerão nos dispositivos dos usuários. Os aplicativos móveis sem a dificuldade de gerenciar dispositivos são um grande ganho para você e sua empresa.
Falando em dispositivos móveis
Com o Power Apps, é possível tirar proveito da potência do dispositivo móvel do usuário. Você tem acesso à aceleração, à câmera, à bússola, a informações de conexão e a sinais de localização: tudo em seu aplicativo. Assim, abre-se um mundo inteiro de possibilidades para a criação de aplicativos para fazer o trabalho. Obviamente, a funcionalidade de toque é automática no Power Apps: não há mais nenhuma necessidade de escrever código ao criar o aplicativo.
Saia da zona de conforto
Com o InfoPath, normalmente você trabalha usando dados de uma única fonte. No entanto, as coisas ficariam complicadas se você quisesse atualizar outra fonte (como uma lista em outro conjunto de sites) ou se conectar a serviços externos. Conceitos como code-behind não deixavam você dormir à noite. O Power Apps foi projetado para permitir o trabalho em várias fontes de dados e conexões de serviço em um aplicativo. No momento, mais de 200 conectores dão suporte a uma combinação de dados locais e em nuvem, incluindo os serviços do Microsoft Office 365 e do Azure, como o Power Automate e o Dynamics 365. Você também pode se conectar a uma variedade de serviços de terceiros, como Dropbox, Google, Salesforce, Slack e outros destinos populares.
Agora, é possível criar soluções para dimensionar onde seus usuários precisarem, e não apenas no local em que os dados originais estavam.
Power Apps e SharePoint: ainda melhores juntos
O Power Apps é uma ferramenta excelente para tornar sua experiência no SharePoint melhor de duas maneiras. Existe a opção de personalizar os formulários para uma lista ou criar um aplicativo autônomo para trabalhar com os dados do SharePoint.
A personalização de um formulário do SharePoint é ótima se você deseja personalizar como os usuários adicionam, exibem ou editam itens em uma lista que usam para seu trabalho diário. Clicar em Personalizar Formulários criará um "aplicativo de formulários" de tela única que alterará os modos (novo/editar/exibir) com base no contexto. O SharePoint gerencia esses aplicativos. Suas permissões são iguais às permissões de lista para edição/exibição.
Criar um aplicativo de tela do Power Apps no SharePoint permite executar o aplicativo por si só em um dispositivo móvel. Você também pode inserir o aplicativo em uma página do SharePoint. Ao clicar nessa opção, você criará um aplicativo de três telas (procurar na lista, exibir detalhes e criar/atualizar um item). O modelo de permissão/compartilhamento desses aplicativos não está vinculado ao SharePoint, ele é gerenciado pelo Power Apps.
Agora que você entende a diferença entre as duas opções, a seção a seguir lhe dará uma visão geral de como usar cada uma.
Formulários do SharePoint
As equipes do Power Apps e do SharePoint trabalharam juntas para criar uma história de personalização a ser usada com o SharePoint. Se você é como a maioria dos desenvolvedores, você aprendeu a usar o InfoPath para interagir com o SharePoint. O SharePoint é ótimo, mas os formulários padrão são bem básicos e não permitem a personalização ou a lógica de negócios sem o InfoPath. Bem, esse era o método antigo.
Agora, é possível personalizar os formulários de lista como uma funcionalidade nativa no Power Apps. E ao fazê-lo, você tira o máximo proveito do Power Apps. A captura de tela abaixo mostra um exemplo de um formulário do Power Apps com um relatório do Power BI incorporado. Toda a solução foi criada em menos de 15 minutos.

Outro recurso importante do Power Apps é a capacidade de se conectar facilmente a outro conjunto de sites do SharePoint ou a um ambiente diferente do mesmo formulário. Por exemplo, você quer criar um formulário que exibe e atualiza os dados do SharePoint Online e do ambiente local do SharePoint ao mesmo tempo? Sem problemas. Se você instalar o gateway de dados local, o funcionamento começará em poucos minutos, conectando o Power Apps, o Power BI, o Power Automate e os Aplicativos Lógicos do Azure aos dados locais. Não é necessária nenhuma alteração nas regras de firewall. Você pode avançar um pouco mais conectando esse aplicativo ao Power Automate.
Um aplicativo autônomo do SharePoint
Use essa técnica se, em vez de apenas atualizar a experiência de formulário de lista, você deseja criar um aplicativo autônomo e completo, com base nos dados do SharePoint. Essa também é a melhor maneira de começar, aprendendo como a tela do Power Apps funciona e criando seus futuros aplicativos usando uma das várias fontes de dados.
Para começar, siga estas etapas:
- Abra a lista da qual deseja criar um aplicativo.
- Na barra de menu, selecione Integrar -> Power Apps -> Criar um aplicativo.
- Forneça um nome e, em seguida, selecione Criar.
O Power Apps criará um aplicativo que você pode personalizar.
Comece com uma lista simples contendo apenas alguns campos de tipos diferentes para seu primeiro aplicativo. Assim, você poderá criar uma base sólida sem se sentir sobrecarregado. Não se preocupe, logo você ficará profissional e estará pronto para lidar com aplicativos complexos. Para obter ajuda no passo a passo desse primeiro aplicativo, confira esta documentação ou este vídeo da comunidade. Os exemplos a seguir mostrarão tarefas comuns do InfoPath e como executá-las no Power Apps. Cada um deles baseia-se em um aplicativo de lista simples.
Como fazer isso com o Power Apps?
Agora que você conhece os conceitos básicos, vamos aprofundar. Com seu primeiro aplicativo já criado, esta seção o ajudará a aplicar alguns dos conceitos comuns do InfoPath ao Power Apps.
Ocultar/mostrar/bloquear um campo com base em um valor
Os formulários de sucesso geralmente impõem uma lógica de negócios forte, por exemplo, alterando o estado de um campo com base em um valor ou uma ação. Com o Power Apps, você pode definir a propriedade DisplayMode de um controle para Editar ou Exibir para especificar se um usuário pode alterar o campo. Você também pode usar uma simples fórmula If para fazer isso condicionalmente. Primeiro, selecione o cartão que você deseja editar e, em seguida, selecione o ícone de cadeia. Essa etapa desbloqueia o cartão para que você possa alterar o valor.

No painel à direita, role até a propriedade DisplayMode para que você possa editá-la.

Neste exemplo, use uma fórmula If:
If(ThisItem.Color = "Blue", DisplayMode.View, DisplayMode.Edit)
Essa fórmula diz que, se o campo Color do item atual é Blue, o campo Animal é somente leitura. Caso contrário, o campo é editável.
Para ocultar o cartão em vez de torná-lo somente leitura, insira uma função semelhante na propriedade Visible logo acima de DisplayMode.
Você também pode experimentar, por exemplo, mostrar um botão de aprovação apenas se o endereço de email do usuário corresponder ao endereço de email do aprovador. (Dica: use User().Email para acessar o endereço de email do usuário atual). Assim, você pode armazenar o endereço de email do aprovador em YourDataCard e depois definir a propriedade Visible do botão como esta fórmula:
If( YourDataCard.Text = User().Email, true, false )
Formatação condicional
De maneira semelhante à descrita anteriormente, em que o campo foi ocultado, também é possível fazer um comentário visual aos usuários. Talvez você queira realçar o texto em vermelho se o valor inserido estiver fora do intervalo aceitável ou alterar o texto e a cor de um botão de upload depois que o usuário excluir um arquivo. Você pode realizar as duas ações usando uma função, como If, em propriedades, como Color ou Visible.
Por exemplo, é possível usar a função If junto com uma função IsMatch para alterar a cor do texto do campo de email para vermelho quando o usuário não insere um email formatado corretamente na caixa de entrada. Você faria isso definindo o valor de Color de TextInput1 (em que o usuário digita um endereço de email) como esta fórmula:
If( IsMatch(TextInput1.Text, Email), Black, Red )
IsMatch dá suporte a uma grande quantidade de padrões predefinidos, como Email, ou você pode criar seus próprios. Para obter mais informações sobre a formatação condicional, confira este vídeo da comunidade.
Implementação da segurança baseada em funções
A primeira função a ser considerada é DataSourceInfo. As informações retornadas da fonte de dados variam, mas muitas vezes você pode usar esta fórmula para confirmar se o usuário tem acesso para editar os dados (substitua SuaFonteDeDados pelo nome da fonte de dados):
DataSourceInfo( YourDataSource, DataSourceInfo.EditPermission )
Com isso, você poderá mostrar um formulário ou botão somente se o usuário tiver acesso para editar. Confira a documentação de DataSourceInfo para ver a lista completa de informações que podem ser consultadas na função.
Você precisará se aprofundar mais se quiser usar grupos do Active Directory para gerenciar o acesso a botões ou formulários no seu aplicativo. Para fazer isso, aproveite a flexibilidade do Power Apps e crie seu próprio conector usando a API do Microsoft Graph. Se isso parece difícil, você pode seguir esta postagem no blog para obter orientação passo a passo.
Enviar um email por meio do seu aplicativo
Você pode enviar uma mensagem de email usando o Power Apps de várias maneiras, mas a maneira mais fácil é usar o Conector do Outlook do Office 365. Com esse conector, você pode enviar uma mensagem como você mesmo do seu aplicativo. Também é possível receber mensagens de email e realizar outras tarefas que interagem com a caixa de correio. Confira esta documentação ou este vídeo da comunidade sobre o envio de email.
Você pode enviar uma mensagem mais complexa (por exemplo, como parte de um fluxo de trabalho de aprovação do SharePoint) usando o Power Automate e conectar seu aplicativo ao fluxo que você cria. Depois de conectar seu aplicativo ao Power Automate, você se beneficiará de todo o potencial de um mecanismo de fluxo de trabalho que, como o Power Apps, está muito bem conectado a dados e serviços externos. Para obter mais informações sobre como conectar o Power Apps e Power Automate, confira esta documentação.
Se você ainda não encontrou a opção de email que procura, também é possível utilizar os conectores do Power Apps para Benchmark Email, Gmail, MailChimp, Outlook.com, SendGrid ou SMTP. A conectividade é a grande vantagem do Power Apps.
Fluxos de trabalho
É difícil falar sobre aplicativos empresariais e lógica de negócios sem um mecanismo de fluxo de trabalho. A boa notícia é que a equipe do Power Apps não reinventou a roda e ofereceu outro mecanismo de fluxo de trabalho. Em vez disso, ofereceu um conector robusto para o serviço do Power Automate. Você pode automatizar processos e tarefas em mais de 200 serviços diferentes por meio do mecanismo de fluxo de trabalho fácil de usar. Para obter mais informações sobre como conectar o Power Apps e Power Automate, confira esta documentação.
Variáveis com o Power Apps
Quando você cria soluções, é natural pensar que as variáveis precisam estar envolvidas. O Power Apps oferece vários tipos de variáveis, mas elas são usadas somente quando necessário. Em vez de pensar em obter dados, armazená-los em uma variável e, em seguida, referenciá-la, pense em apenas referenciar esses dados diretamente. Entenda melhor esse modelo comparando-o com o Excel. No Excel, Total não é uma variável, é a soma de outros campos. Assim, se você quiser usar esse valor em outro lugar na planilha, basta especificar a célula na qual calculou o total. A documentação oferece uma ótima explicação sobre isso. Esteja aberto a processos de pensamento diferentes.
Se você ainda precisar de variáveis (há muitos casos em que isso ocorrerá), isso o ajudará a entender as diferentes opções. Lembre-se de que com o Power Apps não é necessário definir variáveis. Basta usar uma função para especificar um nome e um valor a ser armazenado, e sua variável será criada. Você pode exibir as variáveis que criou selecionando Variáveis na guia Exibir. As variáveis são mantidas na memória e seus valores são perdidos quando você fecha o aplicativo. Você pode criar estes tipos de variáveis:
As variáveis globais são as primeiras que vêm à mente. Use a função Set para especificar um valor para uma variável global e disponibilizá-la em todo o aplicativo:
Set( YourVariable, YourValue )Em seguida, referencie SuaVariável por nome em todo o aplicativo.
As variáveis de contexto estão disponíveis apenas na tela em que são definidas. Quando você sai da tela, elas são redefinidas. Geralmente, elas são usadas para armazenar informações passadas de uma tela anterior ou para acompanhar se o formulário foi enviado. Para definir uma variável de contexto, use a função UpdateContext, como neste exemplo:
UpdateContext( { Submitted: "true" } )Este exemplo define o valor de uma variável denominada Submitted como true. Você pode adicionar essa fórmula à propriedade OnSelect de um botão de envio para acompanhar se as informações foram enviadas e alterar todos os campos para somente leitura.
As coleções armazenam tabelas de informações que podem ser atualizadas individualmente. Use Collect para criar um carrinho de compras, por exemplo, conforme o usuário marca vários itens do SharePoint que deseja enviar. Este vídeo da comunidade mostra esse conceito em uso.
Listas suspensas em cascata
As listas suspensas em cascata são muito úteis porque você pode, por exemplo, filtrar as escolhas em uma lista suspensa, com base no valor selecionado na lista suspensa anterior. Frequentemente, elas são criados no Power Apps quando há duas fontes de dados no aplicativo. A primeira fonte de dados é os dados que você está exibindo ou atualizando, e a segunda fonte de dados armazena os valores para criar o efeito de cascata. Este gráfico mostra um exemplo da segunda fonte de dados com opções de escolha.

Neste exemplo, você poderia adicionar uma lista suspensa denominada ddSelectType e definir a propriedade Items para esta fórmula:
Distinct( Impacts, Title )
A lista suspensa mostraria apenas Cost, Program Impact e Schedule. Em seguida, você poderia adicionar uma segunda lista suspensa e definir a propriedade Items como esta fórmula:
Filter( Impacts, ddSelectType.Selected.Value in SCategory )
E assim são criadas as listas suspensas em cascata. Para obter mais informações, confira esta postagem da equipe do Power Apps SharePoint: Listas suspensas em cascata em quatro etapas fáceis! ou este vídeo da comunidade. Não se preocupe: você pode fazer isso facilmente sem o SharePoint.
Não compile um superaplicativo
Com o Power Apps, você pode chamar um aplicativo por meio de outro. Assim, em vez do grande formulário do InfoPath que criou e está por um triz, você poderá criar um grupo de aplicativos que chamam uns aos outros e até passam dados entre eles, simplificando o desenvolvimento.
Próximas etapas
Com o Power Apps e as informações neste tópico, você agora está pronto para ganhar o mundo com um aplicativo de cada vez. Enquanto você continua sua jornada, abaixo estão alguns links úteis para ajudar, como o link para o site da comunidade do Power Apps. Comece a participar da comunidade hoje mesmo e desenvolva suas habilidades com uma rapidez muito maior do que se estivesse sozinho.
Referência de fórmula – é sempre uma ótima maneira de se inspirar navegando por algumas das funções padrão.
Comunidade do Power Apps – veja exemplos, interaja com outras pessoas, faça e responda perguntas e ajude a comunidade do Power Apps a crescer.
Observação
Você pode nos falar mais sobre suas preferências de idioma para documentação? Faça uma pesquisa rápida. (Observe que esta pesquisa está em inglês)
A pesquisa levará cerca de sete minutos. Nenhum dado pessoal é coletado (política de privacidade).
Comentários
Enviar e exibir comentários de