Referencia > Referencia de funciones > Funciones lógicas > Let
 

Let

Establece una variable o variables en el resultado de las expresiones especificadas durante el cálculo o hasta que se finalice el guión o se cierre el archivo.

Formato 

Let ( [ var1=expresión1 ; var2=expresión2...] ; cálculo )

Parámetros 

var: cualquier nombre de variable, nombre de variable local o nombre de variable global (para obtener directrices sobre la asignación de nombres a variables, consulte Asignar nombres a los campos).

expresión: cualquier expresión, campo o constante de cálculo.

cálculo: cualquier expresión, campo o constante de cálculo.

Los parámetros entre llaves { } son opcionales.

Tipo de datos devuelto 

texto, número, fecha, hora, fecha y hora, contenedor

Se origina en 

FileMaker Pro 7.0

Descripción 

La función Let permite asignar los resultados de las expresiones a variables y devolver un resultado que puedan utilizar esas variables. Utilice Let para simplificar la lectura de fórmulas complejas al reducir la necesidad de llamar a funciones en funciones. Let también puede hacer que las fórmulas sean eficaces almacenando en variables el resultado de las llamadas a funciones para su reutilización dentro de la fórmula, y así reducir las llamadas a funciones innecesarias.

Para asignar varias variables a una función Let, utilice la sintaxis de lista entre corchetes [ ] y separadas por punto y coma. Para simplificar la lectura de varias variables, puede incluir cada variable y el cálculo devuelto en líneas independiente, aunque ese formato no es necesario. Por ejemplo:

Let ( [
variable = valor;
variable2 = valor2
];
cálculo )

La función Let define las variables de izquierda a derecha. Puede utilizar variables definidas anteriormente (por ejemplo, variables definidas con el paso de guión Establecer variable) para definir nuevos valores de variables y puede anidar una función Let dentro de otra. Si utiliza una variable definida previamente dentro de una función Let anidada, la variable solo influye en la función anidada (como si hubiera definido una variable absolutamente única). Consulte el ejemplo 2 mostrado a continuación.

Una vez definidas, se puede hacer referencia a las variables locales y globales en cualquier cálculo de su alcance. Las variables locales definidas en un cálculo están dentro del alcance del archivo, pero sólo están disponibles cuando los guiones no se están ejecutando. Consulte Usar variables.

Ejemplo 1 

Let ( x = 5; x*x ) devuelve 25.

Let ( [ x = 5; cuadrado = x*x; cubo = cuadrado *x ]; cubo ) devuelve 125.

Ejemplo 2 

Este ejemplo devuelve San Francisco - París.

Let (
Ciudad = "París";
Let (
Ciudad = "San Francisco";
Ciudad & " - "
)
& Ciudad )

Ejemplo 3 

En este ejemplo se establece una variable local en el conjunto de privilegios de la cuenta actual y se devuelve el contenido de la variable. Si este cálculo se utiliza en un guión, la variable local estará disponible durante la duración del mismo.

Let ( $PRIVILEGE_SET = Get ( AccountPrivilegeSetName ) ; $PRIVILEGE_SET ) devuelve [Full Access] si se evalúa mediante una cuenta con el conjunto de privilegios de acceso total.

Ejemplo 4 

Este ejemplo establece una variable local contador a 50 repeticiones con un valor de 120:

Let ( $contador [50] = 120; $contador [50]*2 ) devuelve 240.

Ejemplo 5 

En este ejemplo, se muestra cómo llevar parámetros designados con las funciones Evaluate, Let y Get ( ScriptParameter ) permitiendo el acceso solo a la variable "a" (el ejemplo devuelve 6):

ScriptParameter = "a = 5; b = 10"Evaluate (
"Let ( ["
& Get ( ScriptParameter ) & "
];
a+1 )"
)

Ejemplo 6 

En este ejemplo, se 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 )"
)

Ejemplo 7 

En este ejemplo, se 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 )

Temas relacionados 

Referencia de funciones (lista de categorías)

Referencia de funciones (orden alfabético)

Acerca de las fórmulas

Notas acerca de las funciones

Definir campos de cálculo

Operadores en fórmulas

Usar variables