Referência > Referência de funções > Funções lógicas > Let
 

Let

Configura uma ou mais variáveis com o resultado das expressões especificadas durante o cálculo ou até o término do script ou o arquivo ser fechado.

Formato 

Let({[}var1=expressão1{;var2=expressão2...]};cálculo)

Parâmetros 

var - qualquer nome de variável, nome de variável local ou nome de variável global (consulte Sobre a nomeação de campos para diretrizes sobre como nomear variáveis).

expressão - qualquer expressão, campo ou constante de cálculo.

cálculo - qualquer expressão, campo ou constante de cálculo.

Os parâmetros entre chaves { } são opcionais.

Tipo de dados retornado 

texto, número, data, hora, carimbo de data/hora, container

Originado em 

FileMaker Pro 7.0

Descrição 

A função Let permite atribuir os resultados de expressões a variáveis e retornar um resultado que pode usar essas variáveis. Use Let para tornar fórmulas complexas mais fáceis de ler reduzindo a necessidade de chamar funções dentro de funções. Let também pode tornar fórmulas mais eficientes armazenando o resultado de chamadas de função em variáveis para reutilização dentro da fórmula, reduzindo o número de chamadas redundantes de função.

Para atribuir diversas variáveis em uma função Let, use uma sintaxe de lista entre colchetes [ ] e separada por ponto e vírgula. Para facilitar a leitura de diversas variáveis, você pode colocar cada variável e o cálculo retornado em linhas separadas, embora essa formatação não seja necessária. Por exemplo:

Let ( [
variável = valor;
variável2 = valor2
];
cálculo )

A função Let define as variáveis da esquerda para a direita. É possível usar as variáveis definidas anteriormente (por exemplo, variáveis definidas com a Definir variável etapa de script) para definir novos valores de variável e aninhar uma função Let em outra. Se você usar uma variável definida anteriormente em uma função Let aninhada, a variável terá escopo somente na função aninhada (como se você tivesse definido uma variável completamente exclusiva). Veja o exemplo 2, abaixo.

Uma vez definidas, as variáveis locais e globais poderão ser mencionadas em qualquer cálculo dentro de seu escopo. As variáveis locais definidas em um cálculo têm o escopo definido para o arquivo, mas ficam disponíveis apenas quando os scripts não estão em execução. Consulte Utilização de variáveis.

Exemplo 1 

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

Let ( [ x = 5; ao quadrado = x*x; ao cubo = ao quadrado*x ]; ao cubo ) retorna 125.

Exemplo 2 

Este exemplo retorna São Francisco - Paris.

Let (
Cidade = "Paris";
Let (
Cidade = "São Francisco";
Cidade & "-"
)
& Cidade )

Exemplo 3 

Este exemplo define uma variável local para o conjunto de privilégios da conta atual e retorna o conteúdo da variável. Se este cálculo for usado em um script, a variável local estará disponível pelo tempo que durar o script.

Let ( $PRIVILEGE_SET = Get (AccountPrivilegeSetName) ; $PRIVILEGE_SET ) retornará [Full Access] se for avaliado por uma conta com conjunto de privilégios de Acesso total.

Exemplo 4 

Este exemplo define um contador de variáveis locais na repetição 50 com um valor de 120:

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

Exemplo 5 

Este exemplo mostra como passar parâmetros nomeados usando as funções Evaluate, Let e Get (ScriptParameter), permitindo o acesso somente à variável "a" (o exemplo retorna 6):

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

Exemplo 6 

Este exemplo mostra como passar parâmetros nomeados, permitindo o acesso às variáveis "a" e "b". O primeiro parâmetro simplificado torna o segundo parâmetro mais complexo (o exemplo retorna 6, 12):

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

Exemplo 7 

Este exemplo mostra como passar parâmetros nomeados, mantendo a capacidade de verificar a sintaxe do segundo parâmetro da função Let (o exemplo retorna 6, 12):

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

Tópicos relacionados 

Referência de funções (lista de categorias)

Referência de funções (lista em ordem alfabética)

Sobre fórmulas

Sobre funções

Definição de campos de cálculo

Utilização de operadores em fórmulas

Utilização de variáveis