Evaluate
Propósito 
Evalúa expresión como un cálculo.
Formato 
Evaluate ( expresión ; [campo1 ; campo2 ; campo3 ;...] )
Parámetros 
expresión: cualquier expresión de texto o campo de texto.
campos: una lista de campos de los que depende esta función. Cuando se modifiquen estos campos, el cálculo actualizará su resultado.
Los parámetros situados entre llaves { } son opcionales. Observe que la lista de campos opcionales se escribe entre corchetes [ ].
Tipo de datos devuelto 
texto, número, fecha, hora, marca de fecha y hora, contenedor
Descripción 
El parámetro opcional campos es una lista de campos de los que depende este cálculo. Si no aparece un campo necesario, al modificar este campo dependiente no se actualizará el resultado del cálculo.
Ejemplos 
Evaluate ( CampoTexto ) devuelve 4 si CampoTexto contiene 2 + 2.
Evaluate ( campotexto ) devuelve 2 + 2 si campotexto contiene 2 + 2.
Evaluate ( GetField ( "campotexto" ) ) devuelve 4 si campotexto contiene 2 + 2.
Evaluate ( CampoTexto; [Cantidad] ) devuelve .80 si CampoTexto contiene .08 * Cantidad y Cantidad contiene 10.00.
Evaluate ( “Let ( TasaImpositiva = .05; “ & Cálculo de tasa impositiva & “)” ) devuelve .50 si el campo Cálculo de tasa impositiva contiene SubTotal * TasaImpositiva y SubTotal es un campo numérico que contiene 10.00.
El siguiente ejemplo muestra cómo llevar parámetros designados utilizando las funciones Evaluate, Let y Get ( ScriptParameter ), permitiendo el acceso sólo a la variable "a" (el ejemplo devuelve 6):
ScriptParameter = "a = 5; b = 10"
Evaluate ("Let ( [" & Get ( ScriptParameter ) & "]; a + 1 )" )
El siguiente ejemplo muestra cómo se llevan parámetros con nombre, permitiendo el acceso tanto a la variable "a" como a la "b". El primer parámetro simplificado hace que el segundo sea más complejo (el ejemplo devuelve 6, 12):
ScriptParameter = "a = 5; b = 10"
Evaluate("Let ( [" & Get ( ScriptParameter ) & "]; a + 1 & \", \" & b + 2 )")
El siguiente ejemplo muestra cómo transferir parámetros con nombre, manteniendo la capacidad de comprobar la sintaxis del segundo parámetro de la función Let (el ejemplo devuelve 6, 12):
ScriptParameter = "a = 5; b = 10"
Let( [a = Evaluate ( "Let( [" & Get ( ScriptParameter ) & "]; a )" ),
b = Evaluate ( "Let( [" & Get ( ScriptParameter ) & "]; b )")]; a + 1 & ", " & b + 2 )
Nota  La función Evaluate evalúa una expresión, incluidos valores de campo que se van a evaluar como fórmula de cálculo. También le permite especificar dependencias de campo, de forma que se pueda activar un cálculo que utilice la función de evaluación debido a cambios en otros campos del mismo registro. Esta función evalúa fórmulas definidas por el usuario. Por ejemplo, puede crear una fórmula en el campo Total que calcule la tasa estatal:
Evaluate ( FórmulaTasaEstatal ) + CostoEnvìo
donde el campo FórmulaTasaEstatal contiene:
Subtotal * 1,0875
y el campo SubTotal contiene el subtotal antes de impuestos y transporte.
La función Evaluate tiene un segundo parámetro opcional, que es un campo del que depende el cálculo. Cuando cambia el contenido del campo dependiente, FileMaker Pro vuelve a evaluar el cálculo. En el siguiente ejemplo, el cálculo Total se volverá a evaluar cuando cambie SubTotal.
Evaluate ( FórmulaTasaEstatal, SubTotal ) + CostoEnvìo
El parámetro dependiente también puede resultar útil en otros casos. Por ejemplo,
Evaluate ( “Get ( CurrentTimeStamp )”, [CampoB, CampoC] )
almacenará una marca de fecha y hora en el campo de cálculo cuando cambien CampoB o CampoC.
Temas relacionados 
Referencia de funciones (lista de categorìas)
Referencia de funciones (orden alfabético)
Notas acerca de las fórmulas
Notas acerca de las funciones
Definir campos de cálculo
Usar operadores en fórmulas