Criar expressões usando o Power Fx
O Power Fx é uma linguagem de fórmula com pouco código que usa fórmulas de forma semelhante ao Excel. Use o Power Fx para criar lógica complexa que permite que seus copilotos manipulem dados. Por exemplo, uma fórmula do Power Fx pode definir o valor de uma variável, analisar uma string ou usar uma expressão em uma condição. Para obter mais informações, consulte a documentação Visão geral do Power Fx e a referência de fórmulas.
Observação
As fórmulas do Power Fx no Copilot Studio usam numeração no estilo americano. Ou seja, o separador decimal é um ponto, como em 12,567.892
. Isso significa que os parâmetros do Power Fx devem ser separados por vírgulas (,).
Pré-requisitos
Usar variáveis em uma fórmula
Para usar uma variável em uma fórmula do Power Fx, você deve adicionar um prefixo ao nome para indicar o escopo da variável:
- Para variáveis do sistema, use
System.
- Para variáveis globais, use
Global.
- Para variáveis de tópicos, use
Topic.
Por exemplo, para usar a variável do sistema Conversation.Id
em uma fórmula, consulte-a como System.Conversation.Id
.
Usar valores literais em uma fórmula
Além de usar variáveis em uma fórmula do Power Fx, você pode inserir valores literais. Para usar um valor literal em uma fórmula, você deve inserir o valor no formato que corresponde ao seu tipo. A tabela a seguir lista os tipos de dados e o formato de seus valores literais correspondentes.
Type | Exemplos de formato |
---|---|
String | "hi" , "hello world!" , "copilot" |
Boolean | Apenas true ou false |
Número | 1 , 532 , 5.258 ,-9201 |
Registro e Tabela | [1] , [45, 8, 2] , ["cats", "dogs"] , { id: 1 } , { message: "hello" } , { name: "John", info: { age: 25, weight: 175 } } |
DateTime | Time(5,0,23) , Date(2022,5,24) , DateTimeValue("May 10, 2022 5:00:00 PM") |
Opção | Incompatível |
Em branco | Somente Blank() |
Fórmulas comuns do Power Fx
A tabela a seguir lista os tipos de dados e as fórmulas do Power Fx correspondentes a serem usadas com esse tipo de dados.
Usar o Power Fx para definir uma variável
Neste exemplo, uma expressão do Power Fx armazena e produz o nome do cliente em letras maiúsculas.
Crie um tópico e adicione um nó Pergunta.
Para Inserir uma mensagem, insira "Qual é o seu nome?".
Em Identificar, selecione a entidade pré-criada Nome da pessoa.
Selecione a caixa em Salvar resposta como,depois selecione a variável
Var1
e nomeie-a comocustomerName
.Dentro do nó Pergunta, selecione + e Definir um valor de variável.
Selecione a caixa em Definir variável, depois selecione Criar uma nova e nomeie-a como
capsName
.Na caixa Valor de destino, selecione a seta >, depois selecione a guia Fórmula.
Na caixa fx, insira
Upper(Text(Topic.customerName))
e selecione Inserir.Dentro do nó Pergunta, selecione + e Enviar uma mensagem.
Insira "Olá ", selecione {x}, depois selecione
capsName
.
Usar uma fórmula do Power Fx como condição
Para avaliar expressões mais complexas, configure nós de Condição para usar nas fórmulas do Power Fx.
Neste exemplo, o copiloto determina se uma data de reserva se qualifica para um desconto. Para isso, ele verifica se já se passaram 14 dias ou mais entre a data atual e a data de reserva fornecida pelo cliente.
Crie um tópico e adicione um nó Pergunta.
Em Inserir uma mensagem, digite "Data da reserva?".
Em Identificar, selecione a entidade Data e hora.
Selecione a caixa em Salvar resposta como,depois selecione a variável
Var1
e nomeie-a comobookingDate
.Selecione o ícone Adicionar nó abaixo do nó Pergunta, e selecione Adicionar um condição.
Selecione o ícone Mais (…) do nó da Condição, depois selecione Alterar para fórmula.
Na caixa Função, selecione a seta >, depois selecione a guia Fórmula.
Substitua o conteúdo da caixa fx pela fórmula
Topic.bookingDate > (DateAdd (Now(), 14))
e selecione Inserir.No nó da Condição, adicione um nó da Mensagem e digite a mensagem "Você se qualifica para um desconto".
No nó de Todas as Outras Condições, adicione um nó da Mensagem e digite a mensagem "Você não se qualifica para um desconto".