メイン コンテンツをスキップする

Call

call 制御ステートメントは、事前に sub ステートメントで定義されているサブルーチンを呼び出します。

構文:  

Call name ( [ paramlist ])

 

引数:  

引数
引数 説明
name サブルーチンの名前。
paramlist サブルーチンに送られる実パラメータのコンマ区切りのリスト。リスト内の各アイテムは、項目名、変数、または任意の数式です。

call ステートメントで呼び出されるサブルーチンは、スクリプトの実行中に先に出現する sub ステートメントで定義される必要があります。

パラメータはサブルーチンにコピーされます。call ステートメントのパラメータが数式ではなく変数の場合、パラメータはサブルーチンが終了したときにコピーして戻されます。

制限事項:  

  • call ステートメントは、制御ステートメントであり、セミコロンまたは改行コードで終わるため、行をまたぐことはできません。

  • 例えば [if..then] 制御文内の [Sub..end sub] を使用してサブルーチンを定義すると、同じ制御文内からはサブルーチンしか呼び出すことはできません。

 

この例では、フォルダおよびそのサブフォルダ内のすべての Qlik 関連ファイルを一覧表示し、ファイル情報をテーブルに保存します。Apps という名前のデータ接続がフォルダに作成されていることが前提です。

DoDirサブルーチンは、パラメータとして'lib://Apps'フォルダを参照して呼び出されます。サブルーチンの内部には再帰呼び出しCall DoDir (Dir)が存在します。この関数では、サブフォルダ内でファイルを再帰的に探索します。

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')

このページは役に立ちましたか?

このページまたはコンテンツに、タイポ、ステップの省略、技術的エラーなどの問題が見つかった場合は、お知らせください。改善に役立たせていただきます。