Skip to main content

Valores calculados

Relacionamentos entre campos

Um cálculo expressa uma relação entre campos ao definir o valor de um campo calculado com base em um ou mais campos de entrada. Por exemplo, um aplicativo de carrinho de compras online fornece aos clientes um custo total para cada item do pedido com base no preço unitário e na quantidade desejada, e calcula um total para todos os itens do pedido.

Em seguida, o aplicativo calcula quaisquer impostos avaliados e os adiciona ao total do pedido para calcular o valor total para o cliente. Outros cálculos podem determinar o valor de descontos promocionais e pontos de cliente frequente. O cálculo ocorre sempre que os usuários atualizam o valor de um campo de entrada. Definir o cálculo de um campo reduz a chance de erro e melhora a eficiência do processo ao eliminar a necessidade de um cálculo manual.

É possível utilizar um campo calculado como entrada para outro cálculo, criando uma rede de cálculos dependentes. Quando um usuário atualiza o valor de um campo que serve como entrada de cálculo, o cálculo resultante pode ativar cálculos adicionais para campos dependentes.

O App Studio permite três tipos de cálculos:

  • Funções (Functions) iteram sobre itens em uma lista.
  • Expressões (Expressions) calculam o valor de um campo utilizando qualquer combinação de campos simples, campos sofisticados e relações de dados.
  • Tabelas de decisões (Decision tables) utilizam um conjunto de decisões para testar valores de propriedades e retornar uma resposta adequada.
Calculated fields options

Verifique seu conhecimento com a seguinte interação:

Funções

As funções iteram sobre itens em um relacionamento de dados e são compatíveis com tipos de campo Decimal, Moeda (Currency) e Inteiro (Integer). O App Studio fornece quatro funções básicas para uso em cálculos:

  • Soma de (Sum of) adiciona todos os itens das instâncias de propriedade especificadas
  • Média de (Average of) calcula o valor médio de todas as instâncias de propriedade especificadas
  • Máximo de (Maximum of) determina o maior valor de todas as instâncias de propriedade especificadas
  • Mínimo de (Minimum of) determina o menor valor de todas as instâncias de propriedade especificadas

Soma de

Um varejista online precisa calcular o total de um carrinho de compras. Conforme os clientes adicionam, removem ou atualizam a quantidade de itens de um pedido, o aplicativo deve atualizar o custo total. É possível utilizar a função Soma de para calcular o valor do campo Total do pedido (Order total).

Média de

Um varejista online deseja configurar o dashboard de um aplicativo para analisar padrões de gastos de clientes, de forma que os gerentes possam identificar as áreas que geram mais e menos receita em cada cliente. É possível criar uma lista de pedidos enviados filtrados por área. Em seguida, é possível utilizar a função Média de para identificar o valor médio dos pedidos.

Máximo de

Um varejista online precisa permitir que clientes apliquem um único desconto promocional a um pedido. Os clientes enviam um ou mais códigos promocionais para aplicar diversos descontos, como 20% sobre o item mais caro ou gratuidade do frete de um pedido acima de um valor determinado. Você pode criar uma referência de dados de descontos promocionais, na qual cada item da lista identifica o código promocional e o valor do desconto. É possível utilizar a função Máximo de para determinar o desconto promocional mais favorável para aplicar ao pedido.

Mínimo de

Um varejista online precisa de uma promoção na qual clientes selecionados recebem o item mais barato de uma lista de itens gratuitos aprovados ao fazer um pedido. Você pode utilizar a função Mínimo de para identificar o item mais barato do pedido e aplicar ao pedido um crédito equivalente a esse valor.

Expressões

Configure uma expressão para calcular o valor do campo utilizando qualquer número de valores de campos simples, campos sofisticados ou relacionamentos de dados. No exemplo a seguir, um aplicativo de pedidos online calcula o custo de cada tipo de item multiplicando a quantidade pelo preço unitário.

Sample shopping cart display for sale of team hats and magnets.

Ao configurar uma expressão, você referencia campos por nome utilizando o caractere especial (“.”). Se o campo fizer parte de um relacionamento de dados, adicione a lista ou o nome da propriedade como um prefixo. O exemplo a seguir mostra um cálculo customizado que adiciona o campo Custo (Cost) para dois campos de referência de dados: Bonés da equipe (TeamHats) e Ímãs da equipe (TeamMagnets).

Calculated field example

As expressões suportam operações comuns, tais como:

  • Soma
  • Subtração
  • Multiplicação
  • Divisão
  • Agrupamento (utilizando parênteses)
  • Booleano AND
  • Booleano OR

Por exemplo, é possível configurar um cálculo para calcular os impostos do pedido, multiplicando a alíquota fiscal pelo total do pedido.

.TaxRate * .OrderTotal

É possível definir uma expressão para qualquer tipo de campo Simples (Simple), exceto E-mail (Email), Telefone (Phone) e Lista de seleção (Picklist). Para formatos baseados em texto, é possível configurar um cálculo para montar uma sequência de texto utilizando um processo conhecido como concatenação. Por exemplo, uma empresa de avaliação oferece a estimativa do valor de itens colecionáveis a clientes que enviam um item para análise. A empresa deseja adicionar um comentário à página que exibe o item, observando as seguintes informações:

  • Nome do item avaliado
  • Avaliação aproximada
  • ID do avaliador
  • Data da avaliação

Você pode definir um cálculo para montar o comentário utilizando uma combinação de referências de campos e texto estático, na qual o texto estático fica entre aspas (“”).

"O avaliador " + .AppraiserID + " avaliou " + .ItemName + " a um valor de " + .AppraisedAmount + " em " + .AppraisalDate + "."

Ao avaliar o cálculo, o aplicativo substitui a referência a cada campo pelo valor atual do campo. O cálculo cria uma sequência semelhante ao seguinte exemplo:

O avaliador 04795AD avaliou Bandeja de prata a um valor de USD 350 em 9 de janeiro de 2019.

Nota: No exemplo acima, o texto em itálico indica o valor de um campo referenciado.

Tabelas de decisão

As tabelas de decisões avaliam o valor de um ou mais campos com um conjunto de testes lógicos para retornar um resultado adequado. Por exemplo, para definir a taxa de juros de empréstimos com base no tipo de empréstimo, o usuário seleciona o tipo de empréstimo. A tabela de decisões utiliza o tipo de empréstimo para determinar a taxa de juros adequada, e o cálculo define o valor do campo para renderização na interface.

Nota: Uma tabela de decisões deve ser marcada como um registro válido para ser exibida na lista de tabelas de decisões do campo calculado. Para saber mais sobre marcar registros relevantes, consulte Marcar um registro como relevante.

No centro da imagem abaixo, deslize a linha vertical para comparar a configuração que um Arquiteto de sistemas (System Architect) realiza no Dev Studio à esquerda e a configuração que um citizen developer realiza no App Studio à direita.

Redes de cálculos

Para identificar as relações entre campos, a Pega Platform™ estabelece e atualiza uma rede de cálculos para um aplicativo. Ao definir um cálculo de campo, a Pega Platform adiciona esse cálculo à rede de cálculos. Essa rede de cálculos permite que a Pega Platform atualize todos os campos relevantes sempre que um valor é alterado. Por exemplo, em um carrinho de compras, alterar a quantidade de itens pode acionar uma atualização por meio de vários campos calculados dependentes.

Na imagem a seguir, clique nos ícones + para ver as funções que acionam os cálculos do carrinho de compras.

Verifique seu conhecimento com a seguinte interação:


This Topic is available in the following Module:

If you are having problems with your training, please review the Pega Academy Support FAQs.

Este conteúdo foi útil?

100% acharam esse conteúdo útil

Quer nos ajudar a melhorar esse conteúdo?

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice