Referens > Funktionsreferenser > Logik > Let
 
Let
Användning 
Ställer in en variabel eller flera till resultatet av det angivna uttrycket eller uttrycken under beräkningens varaktighet, till dess att scriptet avslutas eller filen stängs.
Format 
Let ( {[}var1=uttryck1 {; var2=uttryck2...]} ; beräkning )
Parameter 
var - vilket som helst variabelnamn, lokalt variabelnamn eller globalt variabelnamn (se Om att namnge fält där du hittar anvisningar om namngivning av variabler)
uttryck = ett beräkningsuttryck, ett fält eller en konstant.
beräkning = ett beräkningsuttryck, ett fält eller en konstant.
Parametrar inom klamrar {} är valfria.
Returnerad datatyp 
Text, numeriskt, datum, tid, tidsstämpel, container
Kommer från 
FileMaker Pro 7.0
Beskrivning 
Med funktionen Let kan du tilldela resultaten av uttryck till variabler och returnera ett resultat som kan använda dessa variabler. Använd Let för att göra komplicerade formler lättare att läsa genom att minska behovet av anropningsfunktioner inom funktioner. Let kan även göra formler mer effektiva genom att lagra resultatet av funktionsanrop i variabler så att de kan återanvändas inom formeln, vilket minskar antalet onödiga funktionsanrop.
Tilldela flera variabler i en Let-funktion med hjälp av en listsyntax inom hakparenteser [ ] och som avgränsas med semikolon. Om du vill göra det lättare att läsa flera variabler kan du placera varje variabel och den returnerade beräkningen på separata rader, även om det inte är nödvändigt. Till exempel:
Let ( [
variabel = värde ;
variabel2 = värde2
] ;
beräkning )
Tre typer av variabler kan anges i en Let-funktion:
variabel - en variabel (utan prefix), som endast är tillgänglig där den har angetts inom funktionen
$variable - en lokal variabel (med prefixet $), som endast är tillgänglig med det script där den har angetts
$$variable - en lokal variabel (med prefixet $$), som är tillgänglig var som helst inom den fil där den har angetts
Du kan referera till definierade lokala och globala variabler i vilken beräkning som helst inom deras räckvidd. Lokala variabler som definierats i en beräkning har filen som räckvidd men är bara tillgängliga när scriptet inte körs. En lokal och en global variabel (eller t.o.m. två lokala variabler i olika scripts) kan ha samma namn men de behandlas som olika variabler och lagrar olika värden.
Du kan inkludera tillvalet repetitionsnummer som visas inom hakparenteser [ ] omedelbart efter variabelnamnet. Till exempel:
Let ( [
$variabel[repetition] = värde ;
$$variabel2 = värde2
] ;
beräkning )
Funktionen Let anger variablerna från vänster till höger. Du kan använda tidigare definierade variabler (t.ex. variabler som du definierat med scriptsteget Ange variabel) när du vill definiera nya variabelvärden. Du kan också kapsla in en Let-funktion inuti en annan. Om du använder en tidigare definierad variabel i en inkapslad Let-funktion har variabeln bara sin räckvidd inom den kapslade funktionen (om du har definierat en helt unik variabel). Se exemplet med städer nedan.
Exempel 
Let ( x = 5 ; x*x ) returnerar 25.
Let ( [ x = 5 ; kvadrat= x*x ; kubik = kvadrat*x ] ; kubik ) returnerar 125.
Följande exempel returnerar San Francisco Paris.
Let (
Ort = "Paris" ;
Let (
Ort = "San Francisco" ;
Ort & "–"
)
& Ort )
Följande exempel anger en lokal variabel för det aktuella kontots behörighetsuppsättning och returnerar variabelns innehåll. Om den här beräkningen används i ett script, är den lokala variabeln tillgänglig under scriptets varaktighet.
Let ( $PRIVILEGE_SET = Get ( KontoBehörighetsuppsättning ) ; $PRIVILEGE_SET ) returnerar [Full Access] om den utvärderas av ett konto med behörighetsuppsättningen Full åtkomst.
Följande exempel ställer in en lokal variabel räknare vid repetition 50 med ett värde på 120:
Let ( $räknare[50] = 120 ; $räknare[50]*2 ) returnerar 240.
Följande exempel visar hur du överför namngivna parametrar med hjälp av funktionerna Utvärdera, Låt och Get ( Scriptparameter ) och bara ger tillgång till variabeln "a" (exemplet returnerar 6):
Scriptparameter = "a = 5 ; b = 10"
Evaluate (
"Let ( ["
& Get ( Scriptparameter ) & "
] ;
a+1 )"
)
Följande exempel visar hur du överför namngivna parametrar och ger tillgång till både variabeln "a" och variabeln "b". Den förenklade första parametern gör den andra parametern mer komplex (exemplet returnerar 6, 12):
Scriptparameter = "a = 5 ; b = 10"
Evaluate (
"Let ( ["
& Get ( Scriptparameter ) & "
] ;
a+1 & \", \" & b+2 )"
)
Följande exempel visar hur du överför namngivna parametrar, samtidigt som du behåller möjligheten att kontrollera syntaxen för den andra parametern i funktionen Let (exemplet returnerar 6,12):
Scriptparameter = "a = 5 ; b = 10"
Let ( [
a = Evaluate (
"Let ( ["
& Get ( Scriptparameter ) & "
] ;
a )"
),
b = Evaluate (
"Let ( ["
& Get ( Scriptparameter ) & "
] ;
b )"
)
] ;
a+1 & ", " & b+2 )
Relaterade avsnitt 
Funktionsreferenser (efter kategori)
Funktioner (i bokstavsordning)
Om formler
Om funktioner
Definiera beräkningsfält
Använda operatorer i formler
Använda variabler