DO SCRIPT コマンド

ACL スクリプト内から第 2 のまたは外部スクリプトを実行します。

構文

DO <SCRIPT> script_name {<IF test>|<WHILE test>}

パラメーター

名前 説明
SCRIPT スクリプト名

実行対象となるスクリプトの名前。Analytics プロジェクトで副スクリプトを実行するか、.aclscript、.txt、.bat などの拡張子があるテキストファイルに格納された外部スクリプトを実行できます。

外部スクリプトへのファイルパスを指定できます。スペースがある場合は、パスを引用符で囲む必要があります。

メモ

既に実行されているスクリプトを呼び出すことはできません。たとえば、ScriptA が ScriptB を呼び出す場合、ScriptB から ScriptA を呼び出すことはできません。ScriptA は、ScriptB が完了するのを待つ間も実行されています。

IF テスト

省略可能

スクリプトを実行するかどうかを判断するために 1 回評価される条件式。条件が True と評価された場合はスクリプトを実行します。そうでない場合は実行しません。

同じコマンド内で WHILE と一緒に使用することはできません。両方を使用する場合は、スクリプトが処理される際に WHILE が無視されます。コメントがログに入力されますが、スクリプトの実行は停止しません。

WHILE テスト

省略可能

スクリプトの実行後、再度スクリプトを実行するかどうかを判断するために評価される条件式。テストが True と評価された場合はスクリプトを再実行します。そうでない場合は実行しません。

メモ

WHILE を使用する場合は、テストが最終的に false として評価されるようにしてください。そうしないと、スクリプトが無限ループになります。無限ループになった場合にスクリプト処理を取り消すには、Esc キーを押します。

同じコマンド内で IF と一緒に使用することはできません。両方を使用する場合は、スクリプトが処理される際に WHILE が無視されます。コメントがログに入力されますが、スクリプトの実行は停止しません。

入力が有効とされるまでサブスクリプトを繰り返し実行する

ダイアログボックスを使ってユーザー入力を収集するサブスクリプトがあるとします。このサブスクリプトは以下を行います。

  1. 必要な値の入力をユーザーに求める
  2. そのユーザー入力を確認する
  3. 入力値が有効とされたら、v_validated 変数を true に設定する

ユーザーが有効な入力を行ったことを確認するには、DO SCRIPT を使用し、入力が有効とされるまでスクリプトでこのコマンドが再実行されるように WHILE 条件を追加します。変数の値が有効になると、メインのスクリプトはその次のコマンドに進みます。

DO SCRIPT GetUserInput WHILE v_validated = F

共有ロケーションからのサブスクリプトの実行

共有ロケーションで複数のユーティリティサブスクリプトを管理することができます。分析時にサブスクリプトのいずれかが必要な場合は、共有ロケーションへの絶対パスを使ってサブスクリプトを参照します。

DO SCRIPT "C:\My utility scripts\GetUserInput.aclscript"  WHILE v_validated = F

備考

関連コマンド

DO SCRIPT は、Analytics の旧リリースで作成されたスクリプト内で使用されている DO BATCH コマンドと同等です。

GROUP コマンド内で DO SCRIPT コマンドを使用することはできません。

外部スクリプトの利便性

スクリプトを外部に保存すれば、Analytics スクリプト内から呼び出せるので、同じサブスクリプトを別の Analytics スクリプトとプロジェクトで再利用することができます。

スクリプトの単一のコピーを 1 つの場所に保存し、複数の場所で管理するのではなく 1 つの場所で更新できます。