Vai al contenuto principale Passa a contenuto complementare

For..next

L'istruzione di controllo for..next è un costrutto per la ripetizione di script con un contatore. Le istruzioni all'interno del ciclo incluso tra for e next verranno eseguite per ogni valore del contatore in base ai limiti inferiore e superiore specificati.

Sintassi:  

For counter = expr1 to expr2 [ step expr3 ]

[statements]

[exit for [ ( when | unless ) condition ]

[statements]

Next [counter]

 

Le espressioni expr1, expr2 ed expr3 vengono valutate solo la prima volta che il ciclo viene eseguito. Il valore della variabile counter può essere modificato dalle istruzioni all'interno del ciclo, tuttavia l'utilizzo di questa procedura di programmazione non è consigliato.

Se all'interno del ciclo è presente una clausola exit for, l'esecuzione dello script verrà trasferita alla prima istruzione dopo la clausola next indicando quindi la fine del ciclo. Una clausola exit for può essere resa condizionale dall'utilizzo opzionale di un suffisso when o unless.

Nota informaticaPoiché for..next è un'istruzione di controllo che termina con un punto e virgola o con un carattere di fine riga, ciascuna delle tre possibili clausole corrispondenti (for..to..step, exit for e next) deve essere contenuta in una sola riga.

Argomenti:  

Argomenti
Argomento Descrizione
counter Un nome di variabile. Se counter viene specificato dopo next, deve avere lo stesso nome di variabile rilevato dopo l'istruzione for corrispondente.
expr1 Un'espressione che determina il primo valore della variabilecounter per cui deve essere eseguito il ciclo.
expr2 Un'espressione che determina l'ultimo valore della variabile counter per cui deve essere eseguito il ciclo.
expr3 Un'espressione che determina il valore che indica l'incremento della variabile counter ogni volta che il ciclo è stato eseguito.
condition Un'espressione logica che restituisce un valore True o False.
statements Qualsiasi gruppo di una o più istruzioni dello script di Qlik Sense.

Esempio 1: Caricamento di una sequenza di file

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

for a=1 to 9

LOAD * from file$(a).csv;

next

Esempio 2: Caricamento di un numero casuale di file

In questo esempio si presuppone l'utilizzo dei file di dati x1.csv, x3.csv, x5.csv, x7.csv e x9.csv. Il caricamento viene interrotto in un punto casuale mediante la condizione if rand( )<0.5 then.

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

Ulteriori informazioni

 

Hai trovato utile questa pagina?

Se riscontri problemi con questa pagina o con il suo contenuto – un errore di battitura, un passaggio mancante o un errore tecnico – facci sapere come possiamo migliorare!