Przeskocz do zawartości głównej Przejdź do treści uzupełniającej

For..next

Instrukcja sterowania for..next to rodzaj iteracji skryptu z licznikiem. Dla każdej wartości zmiennej licznika mieszczącej się w określonym limicie wykonane zostaną instrukcje wewnątrz pętli między wartościami for i next (z tymi wartościami włącznie).

Składnia:  

For counter = expr1 to expr2 [ step expr3 ]

[statements]

[exit for [ ( when | unless ) condition ]

[statements]

Next [counter]

 

Wyrażenia expr1, expr2 i expr3 są oceniane tylko przy pierwszym wejściu do pętli. Wartość zmiennej counter można zmienić przy użyciu instrukcji wewnątrz pętli, ale nie jest to zalecana praktyka programowania.

Jeśli wewnątrz pętli napotkana zostanie klauzula exit for, wykonanie skryptu zostanie przeniesione do pierwszej instrukcji po klauzuli next wskazującej na koniec pętli. Klauzula exit for może zostać ustawiona jako warunkowa przez opcjonalne użycie sufiksu when lub unless.

InformacjaInstrukcja for..next jest instrukcją sterowania i jako taka kończy się średnikiem lub symbolem końca linii, żadna z jej trzech możliwych klauzul (for..to..step,exit for i next) nie może zatem wykraczać poza granicę linii.

Argumenty:  

Argumenty For
Argument Opis
counter Nazwa zmiennej. Jeśli argument counter określono po argumencie next, musi on mieć taką samą nazwę zmiennej jak nazwa po for.
expr1 Wyrażenie określające pierwszą wartość zmiennej counter, dla której pętla powinna zostać wykonana.
expr2

Wyrażenie określające maksymalną wartość zmiennej counter, dla której pętla powinna zostać wykonana.

expr3 Wyrażenie określające wartość wskazującą na przyrost zmiennej counter podczas każdego wykonania pętli.
condition wyrażenie logiczne, którego ocena zwraca True lub False.
statements Dowolna grupa zawierająca co najmniej jedną instrukcję skryptu QlikView.

Przykład 1: Ładowanie sekwencji plików

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

for a=1 to 9

LOAD * from file$(a).csv;

next

Przykład 2: Ładowanie losowej liczby plików

W tym przykładzie zakładamy istnienie plików danych x1.csv, x3.csv, x5.csv, x7.csv i x9.csv. Ładowanie jest zatrzymywane w losowym punkcie przy użyciu warunku 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

Dowiedz się więcej

 

Czy ta strona była pomocna?

Jeżeli natkniesz się na problemy z tą stroną lub jej zawartością — literówkę, brakujący krok lub błąd techniczny — daj nam znać, co możemy poprawić!

Dołącz do Programu Modernizacji Analityki

Remove banner from view

Przeprowadź modernizację bez szkody dla Twoich cennych aplikacji QlikView za pomocą programu Analytics Modernization Program. Kliknij tutaj aby uzyskać więcej informacji lub skontaktuj się z nami: ampquestions@qlik.com