Share via


FAQ sobre cálculos para modelos de configuração de produto

Este artigo descreve os cálculos para os modelos de configuração de produto e explica como utilizar os cálculos juntamente com restrições.

Os cálculos podem ser utilizados para operações aritméticas ou lógicas. Complementam as restrições de expressão nos modelos de configuração de produto. Pode definir cálculos na página Detalhes do modelo de configuração do produto baseado em restrições e, em seguida, criar expressões para os cálculos no editor de expressões. Para obter mais informações, consulte Criar cálculos.

O que é um cálculo?

Um cálculo é um elemento que pode ser utilizado num modelo de configuração de produto. Os cálculos complementam as restrições permitindo-lhe utilizar números decimais para calcular valores quando configura um produto. Além disso, os cálculos têm um conjunto maior de operadores disponíveis do que as restrições.

À semelhança de uma restrição, um cálculo está associado a um componente específico num modelo de configuração do produto e não pode ser reutilizado ou partilhado com outro componente. Uma diferença importante entre cálculos e restrições é que os cálculos são imperativos (unidirecionais), enquanto as restrições são declarativas (bidirecionais). Para obter mais informações sobre restrições, consulte Restrições de expressão e restrições de tabela nos modelos de configuração de produto.

Um cálculo consiste num atributo de destino e numa expressão de cálculo.

O que é um atributo de destino?

Um atributo de destino é um atributo que recebe o resultado da expressão de cálculo.

Na expressão seguinte, o atributo de destino é uma medição de toalha de mesa:

Expressão: If[decimalAttribute1 <= decimalAttribute2, True, False]

DecimalAttribute1 é o comprimento da mesa e decimalAttribute2 é o comprimento da toalha de mesa. A expressão devolve o valor True ao atributo de destino se decimalAttribute2 for maior ou igual a decimalAttribute1. Caso contrário, a expressão devolve False. Por isso, a medição da toalha de mesa é aceitável se o comprimento da toalha de mesa for igual ou exceder o comprimento da mesa.

Que tipos de atributo podem ser definidos para atributos de destino?

Todos os tipos de atributo que o configurador de produto suportar podem ser definidos para atributos de destino, exceto texto sem uma lista fixa.

O valor de um atributo de destino pode restringir os valores dos atributos de entrada num cálculo?

Não, o valor de um atributo de destino não pode restringir os valores dos atributos de entrada porque os cálculos são unidirecionais. Como tal, o valor do atributo de destino é definido com base em alterações no valor dos atributos de entrada, mas uma alteração no valor do destino não afeta o valor dos atributos de entrada. Este comportamento difere do comportamento para as restrições. As restrições ocorrem em ambas as direções.

Exemplo

Na seguinte expressão, o destino para o cálculo é o comprimento de um cabo de alimentação e o valor de entrada é uma cor:

Expressão: [If Color == "Verde", 1,5, 1,0]

Ao configurar o item, o comprimento do cabo de alimentação é definido como 1,5 se especificar Verde como o valor do atributo de cor. Se especificar qualquer outra cor, o comprimento é definido como 1,0. No entanto, como os cálculos são unidirecionais, o cálculo não define o valor do atributo de cor como Verde se especificar um comprimento de 1,5.

O que acontece se um cálculo tiver um atributo de destino do tipo inteiro, mas um cálculo gera um número decimal?

Se um atributo de destino for do tipo inteiro, mas um cálculo gera um número decimal, apenas a parte do número inteiro do resultado calculado é devolvida. A parte decimal é removida e o resultado não é arredondado. Por exemplo, um resultado de 12,70 é mostrado como 12.

Quando ocorrem os cálculos?

Os cálculos ocorrem quando um valor foi fornecido para todos os atributos de entrada.

Posso substituir o valor calculado para o atributo de destino?

Pode substituir o valor calculado para o atributo de destino, a menos que o atributo de destino seja definido como oculto ou apenas de leitura.

Como posso definir um atributo de destino como oculto ou apenas de leitura?

Para definir um atributo como oculto ou apenas de leitura, siga estes passos.

  1. Clique em Gestão de informações do produto>Produtos>Modelos de configuração de produto.
  2. Selecione um modelo de configuração do produto e, em seguida, no Painel de Ações, clique em Editar.
  3. Na página Detalhes do modelo de configuração do produto baseado em restrições, selecione o atributo a utilizar como um atributo de destino.
  4. No Separador Rápido Atributos, selecione Oculto ou Só de leitura.

Um cálculo pode substituir os valores que defini?

Não. Os valores que define quando configura um produto são os valores que são utilizados. O cálculo que ocorre quando os valores de entrada num cálculo são alterados não pode substituir os valores que fornecer para um atributo específico.

O que acontece se remover um valor de entrada num cálculo?

Se remover um valor de entrada num cálculo, o valor do atributo de destino também é removido.

Por que recebo uma mensagem de erro que diz que o meu modelo está em contradição?

Esta mensagem é mostrada quando um cálculo inclui um erro ou quando existe uma contradição numa ou mais restrições. Para obter mais informações sobre contradições em restrições, consulte Restrições de expressão e restrições de tabela nos modelos de configuração de produto. Eis algumas situações em que podem ocorrer erros nos cálculos:

  • Um valor é dividido por 0 (zero).
  • Existe um conflito entre os dois elementos seguintes:
    • Os valores que estão disponíveis para um atributo e são limitados por uma restrição
    • Um valor que é gerado por um cálculo
  • Os valores que são devolvidos pelo cálculo estão fora do domínio do atributo. Um exemplo é um número inteiro de [1..10] que é calculado para 0.

Por que recebo uma mensagem de erro mesmo que tenha validado com êxito o meu modelo de produto?

Os cálculos não estão incluídos na validação. Tem de testar o modelo de configuração do produto para encontrar erros nos cálculos. Para testar um modelo de configuração do produto, siga estes passos.

  1. Clique em Gestão de informações do produto>Produtos>Modelos de configuração de produto.
  2. Selecione um modelo de configuração do produto e, em seguida, no Painel de Ações, no grupo Executar, clique em Testar.