4D v16.3

EXECUTE FORMULA

Página Inicial

 
4D v16.3
EXECUTE FORMULA

EXECUTE FORMULA 


 

EXECUTE FORMULA ( instruçao ) 
Parâmetro Tipo   Descrição
instruçao  String in Código a executar

EXECUTE FORMULA executa instruçao como uma linha de código. A cadeia de instrução deve ser de uma só linha. Se instruçao é uma cadeia vazia,EXECUTE FORMULA não faz nada.

A regra é que se a instrução pode ser executada como um método de uma linha, então se executará corretamente. O comando EXECUTE FORMULA deve ser utilizado com precaução, já que diminui a velocidade de execução. Em um banco compilado, o código da instrução não está compilado. Isto significa que a instrução será executada, mas não será verificada pelo compilador no momento da compilação.

Nota: a execução de fórmulas em modo compilado pode ser otimizada utilizando uma memória caché (ver [#cmd id="63" anchor="2882913"/] abaixo).

A instrução pode estar em:

  • uma chamada a um método de projeto
  • uma chamada a um comando 4D
  • uma tarefa

A instrução pode incluir variáveis processo e interprocesso. A instrução não pode conter instruções de controle de fluxo, (Se, While, etc) porque a instrução deve ter só uma linha de código.

Para garantir que a instrução será avaliada corretamente, independente da linguagem 4D ou da versão usadas, recomenda-se usar a sintaxe token para elementos cujo nome possa variar entre as diferentes versões (comandos, tabelas, campos, constantes). Por exemplo, para inserir o comando Current time entre 'Current time:C178'. Para saber mais, veja Usar tokens em fórmulas.

Por otimização, cada fórmula executada vía EXECUTE FORMULA em modo compilado  pode  ser armazenada em uma memória caché na memória dedicada. A fórmula é armazenada em caché em forma tokenizada. Uma vez que se coloca na caché, suas execuções posteriores estão altamente otimizadas já que o passo de tokenização se evita.

O tamanho da cache é zero como padrão (sem caché); deve ser criada ou ajustada com o comando SET DATABASE PARAMETER. Por exemplo:

 SET DATABASE PARAMETER(Number of formulas in cache;0) //sem caché de fórmulas
 SET DATABASE PARAMETER(Number of formulas in cache;3) //até três fórmulas podem ser armazenadas em cache para cada processo

O comando EXECUTE FORMULA utiliza a caché só quando se chama desde um banco de dados ou componente compilado.

Exemplo  

Se quiser executar instruções usando chamadas para comandos 4D e tabelas. Já que esses elementos poderiam ser renomeados, pode-se garantir a correta execução em versões futuras de seu aplicativo ao usar a sintaxe token, como mostrado abaixo:

 EXECUTE FORMULA("Year of:C25 ([Products:5]Creation_Date:2])+$add")



Ver também 

Command name
EDIT FORMULA
SET DATABASE PARAMETER

 
PROPRIEDADES 

Produto: 4D
Tema: Fórmulas
Número 63

 
HISTÓRIA 

Modificado: 4D v11 SQL
Modificado: 4D v15 R4

 
ARTICLE USAGE

Manual de linguagem 4D ( 4D v16)
Manual de linguagem 4D ( 4D v16.1)
Manual de linguagem 4D ( 4D v16.2)
Manual de linguagem 4D ( 4D v16.3)