Let
Propósito
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. Consulte o exemplo de Cidade 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.
Exemplos
Let(x = 5; x*x) retorna 25.
Let([ x = 5; ao quadrado = x*x; ao cubo = ao quadrado*x ]; ao cubo) retorna 125.
O seguinte exemplo retorna São Francisco - Paris.
Let(
Cidade = "Paris";
Let(
Cidade = "São Francisco";
Cidade & "-"
)
& Cidade)
O seguinte exemplo define uma variável 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á [Acesso total] se for avaliado por uma conta com conjunto de privilégios de Acesso total.
O seguinte 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.
O seguinte 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)"
)
O seguinte 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)"
)
O seguinte 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