SetzeVar
Zweck
Setzt eine Variable bzw. Variablen für die Dauer der Berechnung bzw. bis das Scripts verlassen oder die Datei geschlossen wird, auf das Ergebnis des angegebenen Ausdruck.
Format
SetzeVar ({ [ } Var1 = Ausdruck1 {; Var2 = Ausdruck2... ]}; Rechenanweisung)
Parameter
Var - beliebiger
Variablenname, lokaler Variablenname oder globaler Variablenname (siehe Richtlinien für die Benennung von Variablen unter
Benennen von Feldern)
Ausdruck - beliebiger Rechen
ausdruck,
Feld oder
Konstante Rechenanweisung - beliebiger Rechenausdruck, Feld oder Konstante
Parameter in geschweiften Klammern { } sind optional.
Zurückgegebener Datentyp
Text, Zahl, Datum, Uhrzeit, Zeitstempel, Container
Ursprung in
FileMaker Pro 7.0
Beschreibung
Mit der Funktion SetzeVar können Sie Variablen die Ergebnisse von Ausdrücken zuweisen und ein Ergebnis zurückgeben, das diese Variablen verwenden kann. Verwenden Sie SetzeVar, um komplexe Formeln lesbarer zu gestalten, indem Sie den Aufruf von Funktionen innerhalb von Funktionen reduzieren. SetzeVar kann Formeln auch effizienter machen, indem das Ergebnis der Funktionsaufrufe in Variablen gespeichert wird, die innerhalb der Formel wiederverwendbar sind, wodurch sich die Anzahl der redundanten Funktionsaufrufe verringert.
Um in einer SetzeVar-Funktion mehrere Variablen zuzuweisen, verwenden Sie eine Listensyntax in eckigen Klammern [ ] und durch Semikolons getrennt. Zur leichteren Lesbarkeit mehrerer Variablen können Sie jede Variable und die zurückgegebene Berechnung in separate Zeilen setzen, obwohl diese Formatierung nicht erforderlich ist. Beispiel:
SetzeVar ( [
Variable = Wert;
Variable2 = Wert2
];
Berechnung )
Die Funktion
SetzeVar setzt die Variablen von links nach rechts. Sie können zuvor definierte Variablen verwenden (z. B. Variablen, die Sie mit dem
Variable setzen Scriptschritt definiert haben), um neue Variablenwerte zu definieren, und Sie können
SetzeVar-Funktionen ineinander verschachteln. Wenn Sie eine zuvor definierte Variable in einer verschachtelten
SetzeVar-Funktion verwenden, gilt diese Variable nur für den Umfang der verschachtelten Funktion (als hätten Sie eine vollständig neue Variable definiert). Siehe nachstehendes „Ort“-Beispiel.
Sobald sie definiert sind, können lokale und globale Variablen in jeder Formel innerhalb ihres Geltungsbereichs referenziert werden. Lokale Variablen, die in einer Formel definiert sind, haben die Datei als Geltungsbereich, stehen aber nur zur Verfügung, wenn keine Scripts ausgeführt werden. Weitere Informationen finden Sie unter
Verwenden von Variablen.
Beispiele
SetzeVar (x=5; x*x) gibt 25 zurück.
SetzeVar ([x=5; Quadrat=x*x; Kubik=Quadrat*x]; Kubik) gibt 125 zurück.
Das folgende Beispiel gibt San Francisco - Paris zurück.
SetzeVar (
Ort = "Paris";
SetzeVar (
Ort = "San Francisco";
Ort & "-"
)
& Ort )
In folgendem Beispiel wird eine lokale Variable in die Berechtigung des aktuellen Kontos gesetzt und der Inhalt der Variablen zurückgegeben. Wenn diese Formel in einem Script verwendet wird, wäre die lokale Variable für die Dauer des Scripts verfügbar.
SetzeVar ( $BERECHTIGUNG = Hole (KontoBerechtigungenName) ; $BERECHTIGUNG ) gibt [Full Access] zurück, wenn es von einem Konto mit der Berechtigung „Voller Zugriff“ überprüft wird.
Das folgende Beispiel setzt eine lokale Variable Zähler bei Wiederholung 50 mit einem Wert von 120:
SetzeVar ($Zähler[50] = 120; $Zähler[50]*2) gibt 240 zurück.
Das folgende Beispiel zeigt, wie benannte Parameter mithilfe der Funktionen Berechne, SetzeVar und Hole (ScriptParameter) übergeben werden, die nur Zugriff auf die Variable „a“ gestatten (das Beispiel gibt 6 zurück):
ScriptParameter = "a = 5; b = 10"
Berechne (
"SetzeVar ( ["
& Hole ( ScriptParameter )] & "
];
a+1 )"
)
Das folgende Beispiel zeigt, wie benannte Parameter übergeben werden, wobei der Zugriff sowohl auf die Variable „a“ als auch auf „b“ erlaubt ist. Durch die Vereinfachung des ersten Parameters wird der zweite Parameter komplexer (das Beispiel gibt 6, 12 zurück):
ScriptParameter = "a = 5; b = 10"
Berechne (
"SetzeVar ( ["
& Hole ( ScriptParameter )] & "
];
a+1 & \", \" & b+2 )"
)
Das folgende Beispiel zeigt, wie benannte Parameter übergeben werden, während die Syntax des zweiten Parameters der Funktion SetzeVar weiterhin geprüft werden kann (das Ergebnis gibt 6, 12 zurück):
ScriptParameter = "a = 5; b = 10"
SetzeVar ( [
a = Berechne (
"SetzeVar ( ["
& Hole ( ScriptParameter )] & "
];
a )"
),
b = Berechne (
"SetzeVar ( ["
& Hole ( ScriptParameter )] & "
];
b )"
)
];
a+1 & ", " & b+2 )
Weiterführende Themen