Early Access: The content on this website is provided for informational purposes only in connection with pre-General Availability Qlik Products.
All content is subject to change and is provided without warranty.
Przeskocz do zawartości głównej

Call

Instrukcja sterowania call wywołuje procedurę zdefiniowaną we wcześniejszej instrukcji sub.

Składnia:  

Call name ( [ paramlist ])

 

Argumenty:  

Argumenty
Argument Opis
name Nazwa podprogramu.
paramlist Do podprogramu przekazana zostanie rozdzielana przecinkami lista rzeczywistych parametrów. Każdy z elementów listy może być nazwą pola, zmienną lub dowolnym wyrażeniem.

Podprogram wywoływany instrukcją call musi być zdefiniowany w instrukcji sub napotkanej na wcześniejszym etapie wykonywania skryptu.

Parametry są kopiowane do podprogramu, a jeśli parametrem instrukcji call jest zmienna, a nie wyrażenie, to po wyjściu z podprogramu parametry są ponownie kopiowane na zewnątrz.

Ograniczenia:  

  • Jako instrukcja sterowania instrukcja call kończy się na średniku lub znaku nowego wiersza, nie może zatem obejmować wielu wierszy.

  • Podczas definiowania podprogramu za pomocą Sub..end sub wewnątrz instrukcji sterującej, na przykład if..then, można wywołać podprogram tylko z tej samej instrukcji sterowania.

Przykład:  

W tym przykładzie powstaje lista wszystkich plików związanych z aplikacją Qlik w folderze oraz jego podfolderach, a następnie informacje o plikach są zapisywane w tabeli. Przyjęto, że użytkownik utworzył połączenie danych o nazwie Apps do tego folderu.

Podprogram DoDir jest wywoływany z odniesieniem do folderu 'lib://Apps' jako parametrem. W podprogramie istnieje wywołanie rekurencyjne Call DoDir (Dir), które powoduje, że funkcja wyszukuje pliki rekurencyjnie w podfolderach.

sub DoDir (Root) For Each Ext in 'qvw', 'qvo', 'qvs', 'qvt', 'qvd', 'qvc', 'qvf' For Each File in filelist (Root&'\*.' &Ext) LOAD '$(File)' as Name, FileSize( '$(File)' ) as Size, FileTime( '$(File)' ) as FileTime autogenerate 1; Next File Next Ext For Each Dir in dirlist (Root&'\*' ) Call DoDir (Dir) Next Dir End Sub Call DoDir ('lib://Apps')

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ć!