| 4D v18EXECUTE FORMULA | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|  | 
    4D v18
 EXECUTE FORMULA 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
| EXECUTE FORMULA ( instruccion ) | ||||||||
| Parámetro | Tipo | Descripción | ||||||
| instruccion | Cadena |   | Código a ejecutar | |||||
EXECUTE FORMULA ejecuta instruccion como una línea de código. Este comando está diseñado para ser utilizado cuando necesita evaluar expresiones que el usuario puede construir o modificar.
La cadena de instrucción debe ser de una sola línea. Si instruccion es una cadena vacía, EXECUTE FORMULA no hace nada. La regla es que si la instrucción puede ejecutarse como un método de una línea, entonces se ejecutará correctamente. El comando EXECUTE FORMULA debe utilizarse con precaución, ya que disminuye la velocidad de ejecución. En una base compilada, el código de la instrucción no está compilado. Esto significa que la instrucción será ejecutada, pero no será verificada por el compilador en el momento de la compilación.
Nota: la ejecución de fórmulas en modo compilado se puede optimizar utilizando una memoria caché (ver Caché para fórmulas en modo compilado abajo).
La instrucción puede incluir los siguientes elementos:
La fórmula puede incluir variables proceso e interproceso. La instrucción no puede contener instrucciones de control de flujo (If, While, etc.), porque la instrucción debe tener sólo una línea de código.
Para asegurarse de que la instruccion sea evaluada correctamente independientemente del lenguaje o versión 4D utilizada, se recomienda utilizar la sintaxis tokenizada para los elementos cuyo nombre puede variar entre las diferentes versiones (comandos, tablas, campos, constantes). Por ejemplo, para insertar el comando Current time, introduzca 'Current time:C178'. Para más información, consulte Utilizar tokens en fórmulas.Notas:
La fórmula puede incluir variables de proceso y variables entre procesos. Sin embargo, la declaración no puede contener el control de las instrucciones de flujo (If, While, etc.), ya que debe estar en una línea de código.
Para garantizar que la instrucción se evalúe correctamente, independientemente del lenguaje 4D o la versión utilizada, se recomienda utilizar la sintaxis del token para los elementos cuyo nombre puede variar entre diferentes versiones (comandos, tablas, campos, constantes). Por ejemplo, para insertar el comando [#cmd id="178"/], introduzca 'Current time:C178'. Para más información al respecto, consulte Utilizar tokens en fórmulas.
Por optimización, cada fórmula ejecutada vía EXECUTE FORMULA en modo compilado se puede almacenar en una memoria caché en la memoria dedicada. La fórmula se almacena en caché en forma tokenizada. Una vez que se coloca en la caché, sus ejecuciones posteriores están altamente optimizadas ya que el paso de tokenización se evita.
El tamaño de la caché es cero por defecto (sin caché); debe ser creada o ajustada con el comando SET DATABASE PARAMETER. Por ejemplo:
 SET DATABASE PARAMETER(Number of formulas in cache;0) //sin caché de fórmulas
 SET DATABASE PARAMETER(Number of formulas in cache;3) //hasta tres fórmulas se puede almacenar en caché para cada procesoEl comando EXECUTE FORMULA utiliza la caché sólo cuando se llama desde una base o componente compilado.
Usted desea ejecutar una fórmula incluida las llamadas a los comandos y tablas 4D. Dado que estos elementos potencialmente podrían ser renombrados, quiere asegurarse de la correcta ejecución de la instrucción en las versiones futuras de su aplicación utilizando la sintaxis tokens:
 EXECUTE FORMULA("Year of:C25 ([Products:5]Creation_Date:2])+$add")
	Producto: 4D
	Tema: Fórmulas
	Número 
        63
        
        
        
	
	Modificado: 4D v11 SQL  
	Modificado: 4D v15 R4
	
	
	
	
	
	
	
	
	
	Manual de lenguaje 4D ( 4D v18)
	
	
	
	
	
 Añadir un comentario
Añadir un comentario