Plataforma CRM Armazéns Compras Vendas Produção Finanças SAT Configuração Transversais
XRP Enterprise PlataformaGuiasUtilidades
PlataformaGuiasUtilidades
Utilidades
Voltar | Lista de Artigos

Como funciona o motor de fórmula

Última alteração a 23/05/2024
Este artigo é aplicável a:
PT
ES
AO
CV
MZ
ST
GW

Conceitos básicos

O motor de fórmulas é uma ferramenta incorporada em certas aplicações. Permite ao utilizador escrever uma fórmula a partir dos dados fornecidos pela aplicação. Em seguida, utiliza o seu resultado para realizar processos. As fórmulas permitem um elevado grau de personalização dos processos de aplicação.

A fórmula é um conjunto de ferramentas de programação e de utilizador para avaliar, editar e gerir fórmulas. Uma fórmula é uma expressão a partir da qual se obtém um resultado. As fórmulas são a base de aplicações como as folhas de cálculo, mas a sua utilização pode ser alargada a muitas outras aplicações.

A API de fórmulas permite-lhe avaliar dinamicamente as fórmulas em tempo de execução. As fórmulas são escritas numa sintaxe muito semelhante à do Java padrão. A sua sintaxe suporta expressões matemáticas básicas e incorpora todo o poder da linguagem Java. Numa fórmula é possível utilizar qualquer das estruturas de controlo de fluxo do Java (if, for, etc.), declarar variáveis locais, e instanciar e utilizar classes de bibliotecas externas.

A API permite a definição de um contexto de fórmula. O contexto é um conjunto de dados que acompanha a fórmula durante a sua execução. A utilização mais comum do contexto é a definição de variáveis com os respetivos valores. Ao avaliar uma fórmula, esta poderá aceder ao valor das ditas variáveis. O contexto pode ser configurado dinamicamente para permitir que cada aplicação defina o seu próprio conjunto de variáveis.

O ambiente de fórmulas tem um número de funções predefinidas para utilização geral. O contexto também permite adicionar de forma dinâmica novas funções que a fórmula poderá utilizar durante a sua execução. Com este mecanismo, cada aplicação pode publicar a sua própria coleção de funções ajustáveis às suas necessidades específicas.

Alguns exemplos simples de fórmulas:

  • Fórmula muito básica: 2+3.
  • Fórmula que multiplica a variável de contexto por 2: @A * 2.
  • Fórmula que utiliza uma das funções predefinidas: WeekDay(@B).
  • Fórmula que utiliza instruções de controlo de fluxo: if (@A == 1) { return 1; } else {return 2;}.

A biblioteca de fórmulas tem um editor de fórmulas gráfico, que pode ser totalmente configurado pela aplicação.

O catálogo de fórmulas é outra ferramenta da biblioteca que permite criar a sua própria coleção de fórmulas muito utilizadas, que pode depois incorporar noutras fórmulas. É possível aceder ao catálogo de fórmulas selecionando o item Sistema | Ferramentas do utilizador, no item Catálogo de fórmulas.

Funções básicas

As fórmulas são escritas numa sintaxe semelhante à do Java padrão. As diferenças entre a sintaxe de uma fórmula e a sintaxe de Java são as seguintes:

  • Uma fórmula não pode conter declarações de classes ou métodos.
  • Pode conter declarações de variáveis locais, instruções de controlo de fluxo e, em geral, qualquer código Java válido, exceto no caso do ponto anterior.
  • Result é uma palavra-chave reservada na sintaxe da fórmula. É necessário atribuir o resultado da fórmula a esta variável. Por exemplo, result = 3;.
  • Se a fórmula for constituída por apenas uma linha, não é necessário atribuir a variável result ou escrever o ponto e vírgula final. Por exemplo, 2 + 3 é equivalente a result = 2 + 3;. Pode utilizar qualquer uma das duas fórmulas indistintamente.
  • A variável result é do tipo Object em Java, ou seja, a fórmula pode devolver como resultado qualquer tipo de objeto, numérico ou outro.
  • Para fazer referência a uma variável de contexto, é necessário utilizar o carácter especial @ como prefixo da variável. Por exemplo, result = @A + @B; em que A e B são variáveis de contexto.
  • Para alterar o conteúdo das variáveis de contexto, utiliza-se a instrução set seguida da variável com @. Por exemplo, set @A = 2.
  • As instruções import ; são suportadas para ligar a classes externas.

Como funciona o catálogo de fórmulas

Conceitos básicos

O catálogo de fórmulas é uma biblioteca pública de fórmulas gerida pela IU. Permite-lhe criar a sua própria coleção de fórmulas, para utilização posterior noutras fórmulas.

Cada fórmula tem um nome único ou identificador, que não pode ser repetido noutro contexto ou produto. Juntamente com o identificador, é armazenado o próprio código fonte da fórmula, bem como informações adicionais como a descrição, os parâmetros e o tipo de retorno.

O catálogo está organizado na seguinte estrutura hierárquica: produto, contextos e fórmulas.

O contexto Geral é um contexto genérico que está sempre disponível e no qual pode adicionar as suas fórmulas. A utilização de outros contextos está associada a utilizações específicas no âmbito de uma aplicação. Neste caso, a própria aplicação fornece o contexto adequado para que possa adicionar-lhe as suas fórmulas.

Para aceder à ferramenta, a partir de Sistema e Ferramentas do utilizador; em Catálogo de fórmulas.

Funções básicas

Depois de selecionar o produto e o contexto em que pretende criar a fórmula (pode selecionar um existente ou criar um novo clicando com o botão direito do rato em Repositório), pode criar uma nova fórmula clicando com o botão direito do rato.

Pode indicar o nome e a descrição da fórmula, selecionar o tipo de retorno, os tipos de parâmetros, a ajuda dos parâmetros e o código fonte da fórmula.

Funções avançadas

Para utilizar uma fórmula do catálogo dentro de outra fórmula, quer esteja catalogada ou não, basta escrever o nome da fórmula com o prefixo "@" e o sufixo "()". A sua utilização é muito semelhante à das funções predefinidas do sistema, com a adição da arroba como prefixo.

Por exemplo, uma fórmula que utiliza uma fórmula hipotética catalogada de nome "pi": "@pi()".

Ao definir a fórmula, é importante especificar o tipo de retorno na caixa Retorno, com as seguintes opções: Número inteiro, Número com casas decimais, Texto, Moeda ou Data.

É possível definir uma fórmula que suporta parâmetros. Para tal, é necessário indicar os campos Parâmetros e Ajuda parâmetros com os seguintes valores:

  • Parâmetros. Indique os tipos de parâmetros separados por vírgula. Os tipos são indicados pelos literais int, double, string, currency ou date, consoante o tipo de dados.
  • Ajuda de parâmetros. Indique a ajuda (multilingue) para cada um dos parâmetros, com o formato "Nome do parâmetro 1=Descrição1,Nome do parâmetro 2=Descrição2,...".

Os parâmetros são anónimos, não têm nome. Para aceder aos parâmetros a partir do interior da fórmula, é necessário utilizar as variáveis especiais pN, em que N é o ordinal do parâmetro definido: 1 para o primeiro, 2 para o segundo, etc.

Por exemplo, é definida a função soma(), que aceita dois parâmetros inteiros. A fórmula devolve a soma de ambos os valores.

  • Fórmula. Soma
  • Descrição. Soma de dois valores inteiros
  • Retorno. Número inteiro
  • Parâmetros. int,int
  • Ajuda de parâmetros. Número1=Primeiro somatório,Número2=Segundo somatório
  • Fórmula. p1+p2

De outra fórmula de soma(), utiliza-se da seguinte forma: "@soma(2, 3)".

Cada uma das fórmulas do catálogo está sujeita a mecanismos de segurança normalizados. Isto permite-lhe atribuir permissões de leitura, modificação, execução ou eliminação a cada utilizador individual.

Guardar ou partilhar este artigo
Esta página foi útil?
Obrigado pelo seu voto.

Faça login para deixar a sua opinião.

Obrigado pelo seu feedback. Iremos analisá-lo para continuarmos a melhorar!
Artigos Relacionados
Como funciona a gestão de documentos Como funciona a transferência de ficheiros Como funciona o assistente de envio de e-mails em massa Como funciona a gestão de documentos Como funciona a transferência de ficheiros