Compartilhar via


Trabalhar com colunas de fórmula

As colunas de fórmula são colunas que exibem um valor calculado em uma tabela do Microsoft Dataverse. As fórmulas usam Power Fx, uma linguagem de programação poderosa, mas amigável. Crie uma fórmula em uma coluna de fórmula do Dataverse da mesma forma que você criaria uma fórmula no Microsoft Excel. À medida que você digita, o Intellisense sugere funções e sintaxe, e até ajuda a corrigir erros.

Adicionar uma coluna de fórmula

  1. Entre no Power Apps em https://make.powerapps.com.

  2. Selecione Tabelas e, em seguida, selecione a tabela à qual pretende adicionar uma coluna de fórmula. Se o item não estiver no painel lateral, selecione …Mais e selecione o item desejado.

  3. Select a área Colunas e depois Select Nova coluna.

  4. Insira as seguintes informações:

    • Um Nome de exibição para a coluna.
    • Opcionalmente, insira uma Descrição da coluna.
  5. Para Tipo de dados Select fx Fórmula.

  6. Digite a fórmula ou use sugestões de fórmula:

    Insira a Power Fx fórmula na caixa Fórmula . Mais informações: Digite uma fórmula


  1. Select propriedades adicionais:
    • Select Pesquisável se você quiser que esta coluna esteja disponível em visualizações, gráficos, painéis e Pesquisa Avançada.
    • Opções avançadas:
      • Se a fórmula for avaliada como um valor decimal, expanda Opções avançadas para alterar o número de pontos de precisão, entre 0 e 10. O valor padrão é 2.
  2. Selecione Salvar.

Digitar uma fórmula

O exemplo a seguir cria uma coluna de fórmula chamada Preço total. A coluna Número de unidades é um tipo de dado de número inteiro. A coluna Preço é um tipo de dado decimal.

Captura de tela de uma fórmula definição de coluna.

A coluna de fórmula exibe o resultado de Preço multiplicado por Número de unidades.

Captura de tela de um registro com uma coluna de fórmula.

A fórmula que você insere determina o tipo de coluna. Não é possível alterar um tipo de coluna depois que a coluna é criada. Isso significa que você pode alterar a fórmula depois de criar a coluna somente quando isso não alterar o tipo de coluna.

Por exemplo, a fórmula preço * desconto cria um tipo de coluna de número. Você pode alterar preço * desconto para preço * (desconto + 10%) porque isso não altera o tipo de coluna. Entretanto, você não pode alterar price * discount para Text(price * discount) porque isso exigiria alterar tipo de coluna para string.

Obter sugestões de fórmula (versão preliminar)

[Este tópico faz parte da documentação de pré-lançamento e está sujeito a alterações.]

Descreva o que deseja que a fórmula faça e receba resultados gerados por IA. As sugestões de fórmula aceitam sua entrada em linguagem natural para interpretar e sugerir uma fórmula do Power Fx usando o modelo de IA baseado em GPT.

Importante

Este é um recurso em versão preliminar e está disponível somente nas regiões dos EUA.

Os recursos de versão preliminar não foram criados para uso em ambientes de produção e podem ter funcionalidade restrita. Esses recursos são disponibilizados antes de um lançamento oficial para que os clientes possam ter acesso antecipado e forneçam comentários.

No momento, há suporte às sugestões de fórmula que fazem referência a uma única tabela. Não há suporte às sugestões de fórmula que fazem referência a uma coluna em uma tabela relacionada.

Pré-requisitos

Para habilitar esse recurso, você deve habilitar a configuração de ambiente Sugestões de IA para colunas de fórmula . Mais informações: Sugestões de IA para colunas de fórmula

Exemplo de entrada de linguagem natural

Imagine uma coluna de Avaliação do cliente de There que mostra sua classificação por conta. Exemplo de coluna de classificação de clientes

Na caixa Obter sugestões de fórmula , insira a fórmula em linguagem natural, como Se a classificação na coluna de classificação for igual ou maior que 5, indique como Bom e se for menor que 5, indique como Médio e se o valor estiver em branco ou zero, exiba como Ruim e, em seguida, pressione Select o botão de seta (enter).

Em seguida, copie a Fórmula sugerida. Fórmula sugerida

E cole-o na caixa Digite uma fórmula . Selecione Salvar. Cole a fórmula na caixa Digite uma fórmula.

Veja como a fórmula é exibida depois de colada.

Switch(
    ThisRecord.'Customer Rating',
    Blank(), "Bad",
    0, "Bad",
    1, "Average",
    2, "Average",
    3, "Average",
    4, "Average",
    5, "Good",
    6, "Good",
    7, "Good",
    8, "Good",
    9, "Good",
    10, "Good"
)

Verifique a coluna de fórmula Descrição da classificação computada, que aparece assim.

Verifique os resultados da coluna de fórmula

IA responsável

Para obter informações sobre IA responsável, acesse estes recursos:

Operadores

Você pode usar os seguintes operadores em uma coluna de fórmula:
+, -, *, /, %, in, exactina, &

Para mais informações, acesse Operadores em Power Apps.

Tipos de dados

É possível exibir os seguintes tipos de dados em uma coluna de fórmula:

Mais informações: Criar colunas de fórmula com tipos de dados decimais, inteiros, flutuantes e de escolha\

O tipo de dados de moeda não é suportado no momento.

Tipos de função

É possível usar os seguintes tipos de função em uma coluna de fórmula:

  • Decimal
  • String
  • Boolean
  • Opção
  • DateTime (TZI)
  • DateTime (local do usuário) (limitado a comparações com outros valores de local do usuário e as funções DateAdd e DateDiff)
  • DateTime (somente data) (limitado a comparações com outros valores somente data e as funções DateAdd e DateDiff)
  • Currency
  • Número Inteiro

Funções

Para as funções escalares que você pode usar em uma coluna de fórmula, vá para Referência de fórmula - Dataverse colunas de fórmula.

* As funções Texto e Valor funcionam somente com números inteiros, onde nenhum separador decimal está envolvido. O separador decimal varia entre localidades. Como as colunas de fórmula são avaliadas sem conhecimento de localidade, não há como interpretar ou gerar corretamente o separador decimal.

* O argumento StartOfWeek não é suportado pelas funções WeekNum e Weekday em colunas de fórmula.

Exemplo de função

Description Exemplo
Recupere um valor de data. DateAdd(UTCNow(),-1,TimeUnit.Years)

Diretrizes e limitações

Esta seção descreve as diretrizes e as limitações conhecidas das colunas de fórmula no Dataverse.

Validações de uso de campos de moeda

  • As colunas de fórmula não oferecem suporte ao uso de uma coluna de moeda de tabela relacionada na fórmula, como neste exemplo. Coluna de fórmula com fórmula não suportada de Account.Annual Revenue
  • No momento, não há suporte ao uso direto de colunas de moeda e taxa de câmbio na fórmula. O uso de colunas de moeda e taxa de câmbio é obtido por meio da função Decimal , como Decimal(currency column) ou Decimal(exchange rate). A função garante que a saída esteja dentro do intervalo aceito. Decimal Se o valor da coluna de moeda ou taxa de câmbio exceder o intervalo aceito, a fórmula retornará nulo.
  • Não há suporte às colunas de moeda base nas expressões de coluna de fórmula porque elas são colunas do sistema usadas para fins de relatório. Se quiser um resultado semelhante, você pode usar uma moeda tipo de coluna junto com uma combinação de colunas de taxa de câmbio como CurrencyField_Base = (CurrencyField / ExchangeRate).

Validações de uso de colunas de data e hora

  • O comportamento das colunas de fórmula de data e hora só pode ser atualizado quando não é usado em outra coluna de fórmula.
  • Para colunas de fórmula de data e hora, ao usar a função DateDiff , certifique-se de que:
    • A coluna de comportamento local do usuário não pode ser comparada ou usada com uma DateTime(TZI)/DateOnly coluna de comportamento.
    • A coluna de comportamento do Local do Usuário só pode ser comparada ou usada com outra coluna de comportamento de Local do Usuário.
    • DateTime(TZI) colunas de comportamento podem ser comparadas ou usadas em DateDiff funções com outra DateTime(TZI)/DateOnly coluna de comportamento.
    • DateOnly colunas de comportamento podem ser comparadas ou usadas na função DateDiff com outra DateTime(TZI)/DateOnly coluna de comportamento. Configuração de data e hora não suportada com uma coluna de fórmula
  • Colunas de data e hora e funções de data e hora UTCNow(), Now() não podem ser passadas como parâmetro para funções de string. Coluna de fórmula com parâmetro de data e hora não suportado passado na fórmula

Uso da coluna de fórmula em campos cumulativos

  • Uma coluna de fórmula simples é onde a fórmula usa colunas do mesmo registro ou usa valores codificados. Para colunas cumulativas, as colunas de fórmula devem ser colunas de fórmula simples, como este exemplo de coluna cumulativa. Exemplo de coluna de fórmula simples para uma coluna de rollupExemplo de configuração de coluna de rollup
  • Uma coluna de fórmula, que depende de funções com limite de tempo UTCNow() e UTCToday() não pode ser usada em um campo de rollup.

Recomendações da função text do Power Fx

  • Colunas de fórmula não suportam Text() funções com um único argumento do tipo Número. O número pode ser inteiro, decimal ou monetário. Coluna de fórmula com função de texto não suportada com um argumento numérico

  • As colunas de fórmula não oferecem suporte ao uso de números nas seguintes configurações:

    • Em funções da cadeia de caracteres. Estas são funções de cadeia de caracteres colocadas onde quer que um argumento de texto seja esperado: Upper, Lower, Left, Right, Concatenate, Mid, Len, StartsWith, EndsWith, TrimEnds, Trim, Substitute e Replace.
    • Nas fórmulas implícitas, como 12 & "foo", ou 12 & 34, ou "foo" & 12.
    • Não há suporte à coerção de número interno para texto. Recomendamos usar Text(Number, Format) para converter um número em texto. No caso em que um String argumento é passado em uma Text função, então o Format argumento não é suportado.
    • Here's um exemplo usando a função Text para converter um número em texto e anexar uma string a ele:
    Concatenate(Text(123,"#"),"ab")
    Text(123,"#") & "foo"
    
  • Não há suporte aos tokens de formatação específicos da localidade, como "." e "," em colunas de fórmula. Token de formatação específico de localidade não suportado passado como parâmetro para função de texto na fórmula

Validações de intervalo em colunas de fórmula

  • Não é possível definir as propriedades Valor mínimo ou Valor máximo de uma coluna de fórmula.
  • Todos os cálculos internos devem estar dentro do intervalo do Dataverse para as colunas de fórmula do tipo decimal (-100000000000 a 100000000000).
  • Um valor literal embutido em código inserido na barra de fórmulas deve estar dentro do intervalo do Dataverse.
  • Se houver uma coluna numérica nula, ela será considerada 0 na operação intermediária. Por exemplo, a+b+c and If a = null, b=2, c=3 a coluna de fórmula fornece 0 + 2 + 3 = 5.
    • Esse comportamento é diferente das colunas calculadas neste caso porque as colunas calculadas fornecem null + 2 + 3 = null.

Validações gerais em colunas de fórmula

  • As colunas de fórmula podem fazer referência a outras colunas de fórmula, mas uma coluna de fórmula não pode fazer referência a si mesma.
  • Colunas de fórmula não suportam cadeias cíclicas, como F1 = F2 + 10, F2 = F1 * 2.
  • O tamanho máximo da expressão de fórmula nas colunas de fórmula é de 1.000 caracteres.
  • A profundidade máxima permitida nas colunas da fórmula é 10. Profundidade é definida como a cadeia de colunas de fórmula que se referem a outras colunas de fórmula ou rollup.
    • Por exemplo, table E1, F1 = 1*2, table E2, F2 - E1*2. Neste exemplo, a profundidade de F2 é 1.
  • Em aplicativos baseados em modelos, a classificação é desabilitada em:
    • Uma coluna de fórmula contendo uma coluna de uma tabela relacionada.
    • Uma coluna de fórmula contendo uma coluna lógica (por exemplo, uma coluna de endereço).
    • Uma coluna de fórmula contendo outra coluna ou fórmula calculada.
    • Uma coluna de fórmula que usa a função com limite de tempo UTCNow().
  • Não há suporte a colunas do tipo Número Inteiro com formato Idioma, Duração, Fuso Horário nas colunas de fórmula.
  • Não há suporte a colunas do tipo Cadeia de Caracteres com formato Email, Área de Texto, Símbolo de Ação, URL nas colunas de fórmula.
  • As colunas de fórmula não exibem valores quando o aplicativo está no modo offline.
  • Não é possível desencadear fluxos de trabalho ou plug-ins em colunas de fórmula.
  • Não recomendamos o uso de colunas calculadas em colunas de fórmula e vice-versa.
  • As regras de detecção de duplicidades não são desencadeadas em colunas de fórmula.
  • A função pode ser usada com colunas de fórmula. Now Now() tem comportamento local do usuário e UTCNow() tem comportamento independente de fuso horário.
  • Você pode definir a propriedade de precisão para colunas decimais.
  • O valor do tipo de dados da fórmula padrão é definido como Decimal para fórmulas que retornam valores numéricos.
  • A atualização do formato da coluna de fórmula de número inteiro não é suportada.

Colunas de fórmula de tipos de dados que não podem ser produzidos

  • Currency

Ver também

Tipos de colunas

Visão geral da Microsoft Power Fx

Colunas de fórmula, calculadas e de valor acumulado usando código