Zu Hauptinhalt springen Zu ergänzendem Inhalt springen

For..next

Der Steuerungsbefehl for..next ist eine Skriptiteration mit einem Zähler. Für jeden Zähler innerhalb der festgelegten Grenzen werden die Befehle innerhalb der Schleife, die durch forund next eingeschlossen sind, jeweils einmal ausgeführt.

Syntax:  

For counter = expr1 to expr2 [ step expr3 ]

[statements]

[exit for [ ( when | unless ) condition ]

[statements]

Next [counter]

 

Die Formeln expr1, expr2 und expr3 werden nur beim ersten Durchlauf der Schleife ausgewertet. Der Wert des Zählers kann durch Befehle innerhalb der Schleife geändert werden, dies ist aber nicht empfehlenswert.

Steht in der Schleife eine exit for-Bedingung, wird die Ausführung des Skripts beim ersten Befehl nach der Schleife, d. h. nach der Zeile mit dem abschließenden next, fortgesetzt. Auf exit for kann verzichtet werden, wenn stattdessen when oder unless verwendet wird.

InformationshinweisDa for..next zu den Steuerungsbefehlen gehört und mit einem Semikolon oder einer Zeilenschaltung abschließt, dürfen sich die einzelnen Befehlssequenzen (for..to..step, exit for und next) nicht über mehrere Zeilen erstrecken.

Argumente:  

Argumente
Argument Beschreibung
counter Ein Variablenname. Ist counter nach next festgelegt, muss sie denselben Variablennamen haben, wie den hinter dem zugehörigen for.
expr1 Eine Formel, deren Ergebnis den ersten Wert der Variable counter ergibt, für welche die Schleife ausgeführt wird.
expr2 Eine Formel, deren Ergebnis den letzten Wert der Variable counter ergibt, für welche die Schleife ausgeführt wird.
expr3 Eine Formel, deren Ergebnis den Zuwachs von counter ergibt, um den sich der Zähler bei jedem Durchlauf der Schleife erhöht.
condition Eine logische Formel, die True oder False ergibt.
statements Jede Gruppe von einem oder mehreren Qlik Sense-Skriptbefehlen.

Beispiel 1: Laden einer Reihe von Dateien

// LOAD files file1.csv..file9.csv

for a=1 to 9

LOAD * from file$(a).csv;

next

Beispiel 2: Laden einer zufälligen Zahl von Dateien

In diesem Beispiel werden die Datendateien x1.csv, x3.csv, x5.csv, x7.csv und x9.csv angenommen. Der Ladevorgang wird an zufällig ausgewählten Punkten mit der Bedingung if rand( )<0.5 then gestoppt.

for counter=1 to 9 step 2

set filename=x$(counter).csv;

if rand( )<0.5 then

exit for unless counter=1

end if

LOAD a,b from $(filename);

next

Weitere Informationen

 

Hat diese Seite Ihnen geholfen?

Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!