Verificador de expressões Power Automate
Comece com um modelo, ajuste os nomes dos campos e veja uma explicação resumida. Os exemplos são pontos de partida, não expressões universais.
Escolha um modelo ou cole a sua expressão
Verificação e explicação
Como usar no fluxo
- Copie a expressão.
- No Power Automate, abra o campo desejado.
- Selecione a aba de expressão (fx) e cole.
- Substitua referências de exemplo pelos nomes reais de ações e propriedades.
- Teste com dados representativos.
Para que serve
Escrever expressões no Power Automate é fácil de errar: uma aspa dupla no lugar da simples, um parêntese faltando ou um nome de função com uma letra a mais fazem o fluxo falhar, e a mensagem do editor nem sempre aponta onde. Este verificador lê a sua expressão antes de você colá-la no fluxo e mostra os problemas com palavras simples, além de explicar o que cada função usada faz.
Como usar
- Escolha um modelo na lista ou cole a sua expressão no campo.
- Clique em Explicar função.
- Leia a lista ao lado: erros em vermelho, avisos em amarelo e, abaixo, a explicação de cada função encontrada.
- Quando a estrutura estiver correta, clique em Copiar expressão e cole no campo de expressão (fx) do fluxo.
Exemplo
Expressão com dois erros:
concatt('Olá, ', triggerBody()?['nome']O verificador responde:
Faltou fechar 1 ")" no final. Função desconhecida "concatt". Você quis dizer "concat"?
O que o verificador confere
- Aspas: textos precisam de aspas simples; aspas duplas são erro. Uma aspa simples dentro de um texto se escreve duas vezes (
'it''s'). - Parênteses e colchetes abertos e fechados na ordem certa.
- Nomes de função conhecidos, com sugestão quando houver erro de digitação e aviso quando a grafia difere da documentação.
- Palavras soltas fora de aspas, que quase sempre indicam um texto sem aspas.
- Prefixos
@e=, que não devem ser colados no campo de expressão.
O que ele não confere
O verificador analisa a estrutura, não os valores que o fluxo terá na hora da execução. Ele não sabe se triggerBody()?['campo'] existe no seu gatilho, nem se o número de argumentos de cada função está certo. Por isso "estrutura OK" não garante que o fluxo funcione: teste sempre no próprio Power Automate, com dados reais do histórico de execução.
Armadilhas testadas no Power Automate
Estas regras foram conferidas executando as expressões em um fluxo de teste real (sem conectores, sem dados reais) em 02/11/2026. A coluna da direita é o que o Power Automate devolveu.
| Expressão | Resultado real |
|---|---|
div(75, 200) | 0 (dois inteiros: a divisão trunca) |
div(float(75), float(200)) | 0.375 |
int('3.14') e int(float('3.14')) | Erro nos dois: "The value cannot be converted to the target type" |
int(formatNumber(float('3.14'), 'F0')) | 3 (arredonda; veja a ressalva abaixo) |
float('1,5') | 15: a vírgula é descartada, sem erro |
float('1.234,56') | Erro |
float(replace(replace('1.234,56', '.', ''), ',', '.')) | 1234.56 (só serve para texto no padrão brasileiro) |
mul(19.99, 100) | 1998.9999999999998 |
add(0.1, 0.2) | 0.30000000000000004 |
formatNumber(1234.5, 'N2', 'pt-BR') | 1.234,50 (um texto, não um número) |
formatNumber(1234.5, 'C2', 'pt-BR') | R$ 1.234,50 |
formatNumber(2.5, '0') | Erro: uma letra só é formato padrão. 'F0', '0.00' e '000' funcionam |
formatDateTime(..., 'mm') e 'MM' | minutos 05 e mês 11 |
formatDateTime(..., 'H') | Erro: uma letra só é formato padrão; use '%H' |
parseDateTime('03/04/2026', 'pt-BR') | 2026-04-03T00:00:00.0000000 (3 de abril) |
parseDateTime('03/04/2026', 'en-US') | 2026-03-04T00:00:00.0000000 (4 de março) |
pow(2, 10) | Erro: "The template function 'pow' is not defined" |
createArray() sem itens | Erro: espera ao menos um parâmetro. Use json('[]') |
Maiúsculas e minúsculas: cada função tem a sua regra
| Expressão | Resultado | Diferencia maiúsculas? |
|---|---|---|
equals('Ana', 'ana') | false | Sim |
replace('Ana ANA', 'ana', 'x') | Ana ANA (nada mudou) | Sim |
contains('abc', 'B') | false | Sim |
startsWith('Cimento 50', 'cim') | true | Não |
endsWith('x.CSV', '.csv') | true | Não |
indexOf('ABC', 'b') | 1 | Não |
Outras regras que valem ouro
coalescesó pula valor nulo.coalesce('', 'x')devolve o texto vazio, não ox. Para tratar vazio e nulo, useempty.- Não existe função de arredondar, e o arredondamento do
formatNumbernão é uniforme:formatNumber(2.5, 'F0')devolve2e3.5devolve4, enquantoformatNumber(0.125, '0.00')devolve0.13eformatNumber(2.675, 'F2')devolve2.67. Para dinheiro, calcule em centavos (veja o guia de parcelas). - Uma letra só é formato padrão, em datas e em números. Use
%H(data) ou um formato com mais de um caractere. - Uma referência a um campo que não existe devolve nulo (
triggerBody()?['x']?['y']), em vez de derrubar o fluxo, graças ao?.
Perguntas frequentes
Por que meu fluxo falha se o verificador diz "estrutura OK"?
Porque o erro está nos valores: um campo vazio, um tipo diferente do esperado, um nome de ação que mudou. Abra a execução que falhou e veja as entradas e saídas da ação com o erro.
Preciso do @ no começo?
Não, no campo de expressão (fx) não se usa. O @ aparece no código JSON do fluxo e na sintaxe de texto interpolado, mas não ao digitar a expressão.
As funções são sensíveis a maiúsculas?
A documentação usa a grafia em camelCase (formatDateTime). Use sempre essa grafia.
Onde vejo a lista oficial de funções?
Na referência de funções da Microsoft.
Privacidade e limites
A análise ocorre no navegador. O Me Ajuda Flow é independente e não é afiliado à Microsoft. A lista de funções desta página cobre as mais usadas, não todas as existentes.