Adicionar, subtrair, multiplicar e dividir valores num controlo

Aplica-se A
InfoPath 2010 InfoPath 2013

Pode ajudar os seus utilizadores a preencher formulários com base no seu modelo de formulário através de fórmulas para calcular o valor de um controlo, com base nos dados que o utilizador introduz noutros controlos. Os cálculos podem incluir a adição, subtração, multiplicação e divisão de valores. Por exemplo, se estiver a estruturar um modelo de formulário que os empreiteiros elétricos utilizarão para solicitar licenças, pode adicionar uma fórmula a um controlo que calcula automaticamente o preço total que o empreiteiro tem de pagar pela aplicação multiplicando o número de licenças na aplicação pelo preço de cada licença.

Neste artigo

O que é uma fórmula?

Uma fórmula é uma expressão XPath composta por valores, campos ou grupos, funções e operadores utilizados para calcular e apresentar outros valores. As fórmulas podem ser utilizadas para realizar as seguintes tarefas:

  • Calcule os valores matemáticos dos valores que especificar ao estruturar o modelo de formulário ou os valores que os utilizadores introduzem nos controlos quando preenchem formulários com base no modelo de formulário.
  • Apresentar datas e horas específicas.
  • Apresentar os valores que os utilizadores introduzem num controlo noutro controlo.
  • Defina o valor predefinido de um campo ou controlo.
  • Execute uma regra com base num valor calculado com uma fórmula.

Cada expressão XPath utilizada numa fórmula é uma combinação de valores, funções e operadores que são avaliados como um único valor. Uma fórmula pode conter várias expressões. Pode pensar numa fórmula como uma frase composta por uma ou mais expressões, com cada expressão a representar uma expressão na fórmula.

A ilustração seguinte mostra a relação entre uma fórmula e uma expressão.

046c2cb3-2a43-40c6-af65-5f7ee9c0e1a4

Uma função é uma expressão que devolve um valor com base nos resultados de um cálculo. Os valores utilizados nas funções são denominados argumentos. Pode utilizar as funções padrão do XPath 1.0 incluídas no InfoPath, bem como algumas funções específicas do InfoPath. Encontre ligações para obter mais informações sobre as funções do InfoPath na secção Consulte também .

Início da Página

Utilizar dois ou mais operadores numa fórmula

Quando uma fórmula contém dois ou mais operadores matemáticos, o InfoPath efetua o cálculo de acordo com a precedência do operador. A lista seguinte mostra a ordem pela qual as operações são executadas:

  1. Cálculos entre parênteses
  2. Cálculos de multiplicação e divisão
  3. Cálculos de adição e subtração

Se a fórmula contiver dois operadores com a mesma precedência, os cálculos são efetuados da esquerda para a direita.

Por exemplo, imagine que está a criar um modelo de formulário de aplicação de autorização que tem uma caixa de texto que apresenta o custo total de todas as licenças submetidas numa aplicação. Os valores exigidos por esta fórmula são provenientes de outras caixas de texto no formulário. A caixa de texto que mostra o custo total contém a seguinte fórmula:

txtPermit1Qty * txtPermitCost1 + txtPermit2Qty * txtPermitCost2 /txtNumberOfPermits

Esta fórmula inclui operadores de adição (+), multiplicação (*) e divisão (/). De acordo com a precedência dos operadores, os cálculos de multiplicação e divisão são efetuados antes do cálculo de adição. Uma vez que os operadores de multiplicação e divisão têm a mesma precedência, o cálculo da multiplicação é feito antes do operador de divisão porque o operador de multiplicação está localizado à esquerda do operador de divisão. A fórmula é calculada desta forma:

  1. O valor em txtPermit1Qty é multiplicado com o valor em txtPermitCost1.
  2. O valor em txtPermit2Qty é multiplicado com o valor em txtPermitCost2 e esse resultado é, em seguida, dividido pelo valor em txtNumberOfPermits.
  3. O resultado do cálculo no passo 1 é adicionado aos resultados do cálculo no passo 2.

Para controlar a ordem de cálculo, coloque o cálculo que pretende efetuar primeiro entre parênteses. Os cálculos nos parênteses são efetuados antes dos cálculos fora dos parênteses. Coloque os cálculos com parênteses à esquerda dos cálculos sem parênteses. Os cálculos em parênteses aninhados são efetuados a partir dos parênteses internos para os parênteses externos.

Por exemplo, considere a seguinte fórmula:

((txtPermit1Qty * txtPermitCost1) + (txtPermit2Qty * txtPermitCost2)/txtNumberOfPermits

Neste cálculo, o valor que resulta da multiplicação dos valores em txtPermit1Qty e txtPermitCost1 é adicionado ao valor que resulta da multiplicação dos valores em txtPermit2Qty e txtPermitCost2. A soma desse cálculo é então dividida pelo valor em txtNumberOfPermits.

Início da Página

Inserir uma fórmula matemática num controlo

  1. Faça duplo clique no controlo ou campo para o qual pretende criar a fórmula.

  2. Clique no separador Dados.

  3. Clique em Inserir Fórmula6aeee2be-ff9c-4a64-a987-2db942c81046 .

  4. Para inserir um operador matemático ou de valor na fórmula, escreva o valor ou o símbolo da operação matemática na caixa Fórmula .
    Lista de operações matemáticas

    Operação Símbolo
    Adicionar +
    Subtrair -
    Multiplicar *
    Dividir /

    Nota

    Se a fórmula utilizar o operador de divisão (/), certifique-se de que existe um espaço antes e depois do operador de divisão. Se o operador de divisão não tiver um espaço antes e depois, o InfoPath poderá interpretar "/" como separador para os passos de localização do XPath e não como um operador de divisão.

    Sugestão

    Normalmente, as fórmulas matemáticas dependem de valores inteiros ou decimais como argumentos. Para evitar valores em branco na sua fórmula, selecione a caixa de verificação Tratar valores em branco como zero na categoria Avançadas na caixa de diálogo Opções de Formulário .

  5. Para verificar a sintaxe correta da fórmula, na caixa de diálogo Inserir Fórmula , clique em Verificar Fórmula.
    A minha fórmula contém erros
    Clique em Mostrar Detalhes na caixa de diálogo Microsoft Office InfoPath para ver os erros na fórmula. Seguem-se algumas sugestões para resolver estes erros:

    • Se estiver a utilizar uma função na fórmula, verifique se está a utilizar os argumentos corretos para a função. Algumas funções requerem campos ou grupos, enquanto outras funções requerem valores especificados como argumentos. Encontre ligações para obter mais informações sobre funções na secção Consulte também .
    • Elimine e volte a escrever a fórmula para se certificar de que está escrita corretamente.
  6. Para testar as suas alterações, clique em Pré-visualizar na barra de ferramentas Padrão ou prima CTRL+SHIFT+B.

Início da Página