Stelt een of meerdere variabelen in op het resultaat van de opgegeven uitdrukking(en) voor de duur van de berekening, of totdat het script wordt afgesloten of het bestand wordt gesloten.
Let ({[} var1 = uitdrukking1 {; var2 = uitdrukking2...]} ; berekening)
var
- de naam van een variabele (raadpleeg Variabelen gebruiken).
uitdrukking
- een berekeningsuitdrukking, veld of constante
berekening
- een berekeningsuitdrukking, veld of constante
Parameters tussen accolades { } zijn optioneel.
tekst, getal, datum, tijd, tijdstempel, container
FileMaker Pro 7.0
Met de functie Let kunt u de resultaten van uitdrukkingen toewijzen aan variabelen en een resultaat geven dat die variabelen kan gebruiken. Gebruik Let om complexe formules eenvoudiger te lezen door minder aanroepfuncties in functies te gebruiken. Let kan ook formules efficiënter maken door het resultaat van functie-aanroepen op te slaan in variabelen zodat ze opnieuw in de formule kunnen worden gebruikt. Hierdoor daalt het aantal redundante functie-aanroepen.
Voor de toewijzing van meerdere variabelen in één Let-functie gebruikt u een lijstsyntaxis tussen haakjes [ ] en gescheiden door puntkomma's. Om meerdere variabelen eenvoudiger te kunnen lezen, kunt u elke variabele en de als resultaat gegeven berekening op aparte regels plaatsen, hoewel deze opmaak niet vereist is. Bijvoorbeeld:
Let ([
variabele = waarde;
variabele2 = waarde2
];
berekening)
De functie Let stelt de variabelen in van links naar rechts. U kunt eerder gedefinieerde variabelen gebruiken (bijvoorbeeld functievariabelen die eerder zijn gedefinieerd in de functie Let of lokale en algemene variabelen die u hebt gedefinieerd met de Variabele instellen scriptstap) om nieuwe variabelen te definiëren.
U kunt de ene Let-functie in de andere nesten. Als u in een geneste Let-functie een eerder gedefinieerde functievariabele gebruikt, gaat het bereik van deze functievariabele niet verder dan de geneste functie (alsof u een volledig unieke variabele had gedefinieerd). Zie voorbeeld 2 verderop.
Zodra variabelen zijn gedefinieerd, kan er in elke berekening binnen hun bereik naar worden verwezen. Het bereik van lokale variabelen die in een berekening zijn gedefinieerd is beperkt tot het bestand, maar ze zijn alleen beschikbaar wanneer geen scripts worden uitgevoerd. Raadpleeg Variabelen gebruiken.
Let (x = 5; x*x)
geeft als resultaat 25.
Let ([x=5 ; tweedemachtd=x*x ; derdemachtd=tweedemachtd*x]; derdemachtd)
geeft als resultaat 125.
Dit voorbeeld geeft als resultaat San Francisco - Parijs.
Let (
Stad = "Parijs";
Let (
Stad = "San Francisco";
Stad & "-"
)
& Stad)
In dit voorbeeld wordt een lokale variabele ingesteld op de privilegeset van de huidige account en is het resultaat de inhoud van de variabele. Als deze berekening wordt gebruikt in een script, is de lokale variabele beschikbaar gedurende het script.
Let ($PRIVILEGE_SET = Get (NaamPrivilegesetAccount) ; $PRIVILEGE_SET)
geeft als resultaat [Full Access] als de functie wordt geëvalueerd door een account met de privilegeset Volledige toegang.
In dit voorbeeld wordt een lokale variabele teller
ingesteld met een herhaling van 50
en de waarde 120
:
Let ($teller[50] = 120; $teller[50]*2)
geeft als resultaat 240.
In dit voorbeeld ziet u hoe u benoemde parameters moet doorgeven met de functies Evalueren, Let en Get (ScriptParameter), waarbij u alleen toegang verleent tot de variabele "a"
(het voorbeeld geeft 6 als resultaat):
Scriptparameter = "a = 5; b = 10"
Evalueren (
"Let (["
& Get (ScriptParameter) & "
];
a+1)"
)
In dit voorbeeld ziet u hoe u benoemde parameters moet doorgeven, waarbij u toegang verleent tot zowel de variabele "a"
als de variabele "b"
. De vereenvoudigde eerste parameter maakt de tweede parameter complexer (het voorbeeld geeft 6, 12 als resultaat):
Scriptparameter = "a = 5; b = 10"
Evalueren (
"Let (["
& Get (ScriptParameter) & "
];
a+1 & \", \" & b+2)"
)
In dit voorbeeld ziet u hoe u benoemde parameters moet doorgeven en daarbij de mogelijkheid behoudt om de syntaxis van de tweede parameter van de functie Let te controleren (het voorbeeld geeft 6, 12 als resultaat):
Scriptparameter = "a = 5; b = 10"
Let ([
a = Evalueren (
"Let (["
& Get (ScriptParameter) & "
];
a)"
),
b = Evalueren (
"Let (["
& Get (ScriptParameter) & "
];
b)"
)
];
a+1 & ", " & b+2)