スクリプト正規ステートメント
一般に正規ステートメントは、何らかの形でデータの操作に使用されます。これらのステートメントはスクリプト内で何行でも記述できますが、必ずセミコロン「;」で終了する必要があります。
スクリプトのキーワードは、いずれも小文字と大文字の組み合わせが可能です。ただし、ステートメントで使用される項目名と変数名は大文字と小文字が区別されます。
各関数のドロップダウンを使用すると、その関数の簡単な説明や構文を確認できます。詳細を表示するには、構文の説明にある関数名をクリックします。
aliasステートメントは、エイリアスの設定に使用します。後続のスクリプトで項目が出現すると、エイリアスに従って項目の名前がその都度変更されます。
Alias fieldname as aliasname {,fieldname as aliasname}
このステートメントは、スクリプトの実行中に発生する項目の値の個々の評価値について、一意の整数値を作成します。
Autonumber fields [Using namespace] ]
binary ステートメントは、別の QlikView アプリや ドキュメントからデータ (セクション アクセス データなど) をロードする際に使用します。
Binary [path] filename
データベースやスプレッドシートのテーブルのコメント (メタデータ) を表示する方法を提供します。
comment-table tablelist using mapname
comment-table tablename with comment
CONNECT ステートメントは、Qlik Sense が OLE DB/ODBC インターフェースから一般的なデータベースにアクセスする方法を定義する際に使用します。ODBC の場合、まず ODBC アドミニストレータを使用して、データ ソースを指定する必要があります。
ODBC CONNECT TO connect-string [ ( access_info ) ]
OLEDB CONNECT TO connect-string [ ( access_info ) ]
CUSTOM CONNECT TO connect-string [ ( access_info ) ]
LIB CONNECT TO connection
Declare ステートメントは、項目定義を作成するために使用されます。このステートメントでは、項目や関数間の関係も定義できます。一連の項目の定義は、取得項目の自動生成に使用できます。取得項目は、軸として使用することもできます。例えば、カレンダー定義を作成して、日付項目から年、月、週、日などの関連する軸を生成するために使用できます。
definition_name:
Declare [Field[s]] Definition [Tagged tag_list ]
[Parameters parameter_list ]
Fields field_list
[Groups group_list ]
<definition name>:
Declare [Field][s] Definition
Using <existing_definition>
[With <parameter_assignment> ]
Derive ステートメントは、Declare ステートメントで作成された項目定義に基づいて、取得項目を生成するために使用されます。使用するデータ項目を指定して項目を取得することもできますし、項目タグに基づき明示的に、あるいは黙示的に取得することもできます。
Derive [Field[s]] From [Field[s]] field_list Using definition
Derive [Field[s]] From Explicit [Tag[s]] (tag_list) Using definition
Derive [Field[s]] From Implicit [Tag[s]] Using definition
Directoryステートメントは、新たなDirectoryステートメントが作成されるまで、後続のLOADステートメントのどのディレクトリでデータ ファイルを検索するか定義します。
Directory [path]
Disconnect ステートメントは、現在の ODBC/OLE DB/カスタム接続を終了します。このステートメントはオプションです。
drop field ステートメントを使用すると、スクリプトの実行中にいつでもデータ モデルやメモリから 1 つ以上の Qlik Sense 項目を削除できます。
drop-field fieldname [ , fieldname2 ...] [from tablename1 [ , tablename2 ...]]
drop fields fieldname [ , fieldname2 ...] [from tablename1 [ , tablename2 ...]]
drop table ステートメントを使用すると、スクリプトの実行中にいつでもデータ モデルやメモリから 1 つ以上の Qlik Sense 内部テーブルを削除できます。
drop-table tablename [, tablename2 ...]
drop tables[ tablename [, tablename2 ...]
Execute ステートメントはその他のプログラムの実行に使用しますが、Qlik Sense ではデータのロードを行います。例えば、必要な変換を行う場合などです。
Execute commandline
FlushLogステートメントによって、Qlik Senseは強制的にスクリプト バッファの内容をスクリプト ログ ファイルに書き込みます。
force ステートメントにより、Qlik Sense は後続の LOAD および SELECT ステートメントの項目値を大文字のみ、小文字のみ、常に先頭を大文字化、またはそのまま (混合) として強制的に解釈します。このステートメントを使用すると、異なる表記規則に従って作成されたテーブルの項目値を関連付けられます。
Force ( capitalization | case upper | case lower | case mixed )
LOAD ステートメントは、ファイル、スクリプトで定義されたデータ、事前にロードされたテーブル、Web ページ、後続の SELECT ステートメントの結果、または自動生成されたデータから項目をロードします。 分析接続からデータをロードすることもできます。
Load [ distinct ] *fieldlist
[( from file [ format-spec ] |
from_field fieldassource [format-spec]
inline data [ format-spec ] |
resident table-label |
autogenerate size )]
[ where criterion | while criterion ]
[ group_by groupbyfieldlist ]
[order_by orderbyfieldlist ]
[extension pluginname.functionname(tabledescription)]
let ステートメントは、set ステートメントを補完し、スクリプト変数を定義する際に使用します。let ステートメントでは、set ステートメントとは逆に、変数に代入する前に、スクリプトの実行時に「=」の右側の数式が評価されます。
Let variablename=expression
スクリプト実行中に Loosen Table ステートメントを使用すると、1 つまたは複数の Qlik Sense 内部データ テーブルに対して明示的に疎結合を宣言できます。テーブルが疎結合している場合、項目値間のすべての関連付けは削除されます。疎結合したテーブルの各項目を独立した未結合のテーブルとしてロードしても、同じ効果が得られます。疎結合は、データ構造の異なる部分を一時的に隔離するテストの間に有用です。疎結合したテーブルは、点線によりテーブル ビューアで識別できます。スクリプトで Loosen Table ステートメントを 1 度以上使用すると、Qlik Sense はスクリプト実行前に疎結合化されたテーブルの設定を無視します。
tablename [ , tablename2 ...]
Loosen Tables tablename [ , tablename2 ...]
map ... using ステートメントは、特定のマッピング テーブルの値に、特定の項目値または数式をマップするために使用されます。マッピング テーブルは、Mappingステートメントで作成します。
Map *fieldlist Using mapname
NullAsNull ステートメントは、以前 NullAsValue ステートメントで設定された文字列値への NULL 値の変換を無効にします。
NullAsNull *fieldlist
NullAsValue ステートメントは、NULL を値に変換する項目を指定します。
NullAsValue *fieldlist
Qualify ステートメントは、項目名の修飾を切り替える際に使用します (項目名がプレフィックスとしてテーブル名を取得するなど)。
Qualify *fieldlist
rem ステートメントは、スクリプト内に備考やコメントを挿入するため、またスクリプトを削除することなく一時的に無効にするために使用します。
Rem string
このスクリプト関数は、既存の 1 つ以上の Qlik Sense 項目をロードした後、名前を変更します。
rename-field (using mapname | oldname to newname{ , oldname to newname })
Rename Fields (using mapname | oldname to newname{ , oldname to newname })
このスクリプト関数は、既存の 1 つ以上の Qlik Sense 内部テーブルをロードした後、名前を変更します。
rename-table (using mapname | oldname to newname{ , oldname to newname })
Rename Tables (using mapname | oldname to newname{ , oldname to newname })
section ステートメントでは、後続の LOAD および SELECT ステートメントをデータとして、またはアクセス権の定義としてみなすかどうかを定義できます。
Section (access | application)
ODBC データ ソースまたは OLE DB プロバイダの項目選択は、標準的な SQL SELECT ステートメントを介して実行されます。ただし、SELECT ステートメントが許可されるかどうかは、使用する ODBC ドライバまたは OLE DB プロバイダによって異なります。
Select [all | distinct | distinctrow | top n [percent] ] *fieldlist
From tablelist
[Where criterion ]
[Group by fieldlist [having criterion ] ]
[Order by fieldlist [asc | desc] ]
[ (Inner | Left | Right | Full)Join tablename on fieldref = fieldref ]
set ステートメントは、スクリプト変数を定義する際に使用します。これらは、文字列、パス、ドライバなどの代入に使用されます。
Set variablename=string
sleep ステートメントは、指定した時間におけるスクリプトの実行を停止します。
Sleep n
SQL ステートメントを使用すると、ODBC または OLE DB 接続から任意の SQL コマンドを送信できます。
SQL sql_command
sqlcolumns ステートメントは、connect が実行される ODBC または OLE DB データ ソースの列を記述する項目セットを返します。
sqltables ステートメントは、connect が実行されている ODBC または OLE DB データ ソースのテーブルを説明する項目をセットで返します。
sqltypes ステートメントは、connect が実行される ODBC または OLE DB データ ソースの種類を記述する項目セットを返します。
star ステートメントを使用すると、データベースの項目すべての値セットを表す文字列を設定できます。これは、後続の LOAD および SELECT ステートメントに影響を与えます。
Star is [ string ]
Store ステートメントは、QVD、CSV、または text ファイルを作成します。
Store [ *fieldlist from] table into filename [ format-spec ];
このスクリプト ステートメントは、1 つ以上の項目またはテーブルにタグを割り当てる方法を提供します。アプリにない項目またはテーブルにタグを付けしようとしても、無視されます。項目名やタグ名の競合が発生する場合は、最後の値が使用されます。
Tag[field|fields] fieldlist with tagname
Tag [field|fields] fieldlist using mapname
Tag table tablelist with tagname
trace ステートメントを使用すると、[ロード スクリプトの進捗] ウィンドウとスクリプトのログ ファイルに使用した文字列が書き込まれます。これはデバッグの際に非常に有用です。trace ステートメントの前に計算される変数の $ 拡張を使用すると、メッセージをカスタマイズできます。
Trace string
Unmap ステートメントは、前に Map … Using ステートメントによって指定した項目値の、後続のロードされた項目のマッピングを無効にします。
Unmap *fieldlist
Unqualify ステートメントは、Qualify ステートメントで事前に有効化された項目名の修飾を無効にする際に使用します。
Unqualify *fieldlist
このスクリプト ステートメントは、項目またはテーブルからタグを削除する方法を提供します。アプリにない項目またはテーブルのタグを外そうとしても、無視されます。
Untag[field|fields] fieldlist with tagname
Tag [field|fields] fieldlist using mapname
Tag table tablelist with tagname