Schleifen-Anweisungen

Die Informationen auf dieser Hilfeseite gelten für Studio und Desktop Studio.

Mithilfe von Schleifen-Anweisungen können Sie festlegen, dass das Skript eine oder mehrere Aufgaben wiederholt, bis die angegebene Endbedingung erfüllt wird. Dies ist praktisch, wenn mehrere Aufgaben für jedes Mitglied in einem Satz ausgeführt werden sollen.

Für Schleifen-Anweisungen werden die folgenden Schlüsselwörter verwendet:

  • FOR: Hiermit werden die eingebetteten Anweisungen so lange ausgeführt, wie ein boolescherGeschlossen Ein Datentyp, der zwei mögliche Werte hat: wahr und falsch. Ausdruck als "true" ausgewertet wird.
  • FOREACH: Hiermit werden die eingebetteten Anweisungen für jedes Element in einem Array einmal ausgeführt.
  • REPEAT: Hiermit werden die eingebetteten Anweisungen so oft wie angegeben ausgeführt.

Schleifen-Anweisungen erfordern immer Blöcke mit Bedingungscode. Blöcke werden in geschweifte Klammern eingeschlossen ( { } ). Sie können die folgende optionale Anweisung in den Block aufnehmen:

BREAK: Hiermit wird ein Satz mit Schleifen-Anweisungen beendet.

FOR Anweisungen

Beschreibung: Hiermit wird eine Anweisung oder eine Reihe von Anweisungen so oft wie festgelegt wiederholt.

Syntax: FOR <var> = <start> TO <end> <{ ... [BREAK] }>

Details: Eine FOR Schleife wiederholt den Code in den geschweiften Klammern {...} einmal für jeden ganzzahligen Wert im Bereich von <start> bis <end>. Die Klauseln <start> und <end> können Ausdrücke oder Literalwerte sein. Mit jeder Iteration wird der aktuelle Wert im Bereich einer Variablen <var> zugewiesen, die in der Kopfzeile der Schleife genannt ist. Sie wird als Iteratorvariable bezeichnet.

Mit der optionalen Klausel BREAK wird die Schleife abgebrochen. Das Skript wird dann fortgesetzt. Es führt den Code nach der schließenden geschweiften Klammer aus oder geht zur nächsten Studio -AktionGeschlossen Führt einen Prozess innerhalb eines Studio-Skripts durch, wie z. B. das Erfassen von Kundendaten oder das Abspielen von Musik über.

Die anfänglichen Werte von <start> und <end> werden am Anfang der Schleife einmal ausgewertet. Sie können den Wert von <end> in den Codeanweisungen in den geschweiften Klammern {...} ändern. Außerdem können Sie den Wert von <var> innerhalb der Schleife ändern.

Der Wert von <start> muss nicht kleiner als <end> sein. Wenn <end> kleiner als <start> ist, verläuft die Schleife nach unten. Es wird immer mindestens eine Iteration der Schleife ausgeführt. Dieses Verhalten unterscheidet sich von einigen anderen Programmiersprachen. Das folgende Beispiel veranschaulicht dieses Verhalten.

In diesem Beispiel ist <end> größer als <start>. Das Ergebnis lautet ph="123456789".

FOR i=1 TO 9
{
	ph = "{ph}{i}"
}

In diesem Beispiel ist <start> größer als <end>. Das Ergebnis lautet ph="987654321".

FOR i=9 TO 1
{
	ph = "{ph}{i}"
}

Beispiele

IF TEST = 1
{
  ASSIGN Names = "Wes|Nate|Dan|Clay"
  ASSIGN EyeColors = "Blue|Blue|Brown|Brown"
  ASSIGN Signs = "Aquarius|Aries|Pisces|Leo"
  ASSIGN Foods = "Spagetti|Pizza|Sushi|Deep Fried Twinkies"
}

DYNAMIC Persons

ASSIGN PeopleCount = Names.size

FOR i = 1 TO PeopleCount
{
  ASSIGN Persons[i].Name = "{Names[i]}"
  ASSIGN Persons[i].Eyecolor = "{EyeColors[i]}"
  ASSIGN Persons[i].Sign = "{Signs[i]}"
  ASSIGN Persons[i].Food = "{Foods[i]}"
}
FOR i=1 TO 9
{
	a = "{a}{i}"
}
//Result: a="123456789"


FOR i=9 TO 1
{
	b = "{b}{i}"
}
//Result: b="987654321"

FOREACH-Anweisungen

Beschreibung: wiederholt eine Schleife einmal für jedes Element im angegebenen String-Array.

Format: FOREACH <var> IN <array> <{ ... [ BREAK ] }>

Details: Eine FOREACH-Schleife wiederholt den Code in den geschweiften Klammern {...} einmal für jedes Element in einem String-Array oder im Array eines dynamischen Datenobjekts. Der Wert jedes Array-Elements wird einer Variablen <var> zugewiesen, die in der Kopfzeile der Schleife benannt ist.

Mit der optionalen Klausel BREAK wird die Schleife abgebrochen. Das Skript wird dann fortgesetzt. Es führt den Code nach der schließenden geschweiften Klammer aus oder geht zur nächsten Studio -AktionGeschlossen Führt einen Prozess innerhalb eines Studio-Skripts durch, wie z. B. das Erfassen von Kundendaten oder das Abspielen von Musik über.

Das folgende Beispiel zeigt eine FOREACH-Schleife mit einer IF-Anweisung.



IF TEST = 1 
{
	ASSIGN Names="Odin|Freya|Thor|Loki"
}
ASSIGN SubCounter=1
FOREACH Name IN Names
{
	IF Name = "Odin" |  Name = "Freya"
	{
		ASSIGN NewNames[SubCounter]= "{Name}"

		ASSIGN SubCounter=SubCounter + 1

	}
}

REPEAT Anweisungen

Beschreibung: Führt die angegebenen Befehle so oft wie angegeben aus.

Syntax: REPEAT <expression> <{ ... [ BREAK ]}>

Details:  Dieser Befehl wiederholt den in den geschweiften Klammern {...} enthaltenen Code eine durch <expression> definierte Anzahl von Malen. <expression> kann eine positive Literal-Ganzzahl oder ein Ausdruck sein, der als null oder positive Ganzzahl ausgewertet wird.

Geben Sie das optionale Schlüsselwort BREAK an, um die Schleife abzubrechen. Das Skript wird dann fortgesetzt. Es führt den Code nach der schließenden geschweiften Klammer des REPEAT-Blocks aus oder fährt mit der nächsten Studio-AktionGeschlossen Führt einen Prozess innerhalb eines Studio-Skripts durch, wie z. B. das Erfassen von Kundendaten oder das Abspielen von Musik fort.


REPEAT 10
{
	phone = "{phone}{random(10)}"
}	

BREAK Anweisungen

Beschreibung: Beendet eine Schleife sofort.

Syntax: BREAK

Details: Wenn die BREAK-Anweisung erreicht ist, wird die aktuelle Schleife sofort beendet. Das Skript fährt mit der Ausführung des Snippet-Codes unterhalb der Schleife fort, bis er abgeschlossen ist.

BREAK ist optional. Wenn es nicht enthalten ist, wird die Schleife fortgesetzt, bis die definierte Stoppbedingung erfüllt wird.