Analytics の外部にあるアプリケーションやプロセスを実行します。 Windows の Run コマンドをエミュレートします。 Windows のコマンド プロンプトを操作するために使用できます。

メモ

EXECUTE コマンドでは、Analytics 外部のオペレーティング システムやアプリケーションを操作することができるため、Analytics のネイティブ機能の範囲を超えた技術的な問題が発生する可能性があります。

サポート チームでは、Analytics 内における EXECUTE コマンドの操作の手助けはできますが、Analytics 外部のプロセスやアプリケーションで発生する問題についてはサポートの対象外です。

EXECUTE Windows_Run_コマンド構文 <ASYNC>
名前 説明
Windows_Run_コマンド構文

実行するアプリケーションの名前、開くフォルダーまたはファイル、あるいは実行するコマンドと、任意の必要な引数やコマンド スイッチ。

引用符で囲まれた有効な Windows Run コマンドである必要があります。

ASYNC

省略可能

このコマンドを非同期モードで実行します。

非同期モードでは、Analytics スクリプトは、EXECUTE コマンドによって開始されたプロセスが完了するのを待たずに、実行を続行します。

ASYNC を省略した場合は、Analytics スクリプトが続行されるには、EXECUTE コマンドによって開始されたプロセスが完了する必要があります。 外部プロセスが実行中の場合は、Analytics にはアクセスできません。

メモ

Analytics のコマンド ラインから EXECUTE を使用する場合は、ASYNC を指定する必要があります。

名前 含む
RETURN_CODE

EXECUTE コマンドを使用した外部アプリケーションまたはプロセス実行によって返されるコード(リターン コード)。

リターン コードの概要

リターン コードは外部アプリケーションまたはプロセスによって生成される数値であり、Analytics に返されることで外部プロセスの結果を示します。 Analytics はリターン コードを出力せず、入力として受け付けるだけです。

一般的なリターン コード

通常、リターン コードは数値で、特定の通知やエラー メッセージが割り当てられています。 たとえば、リターン コード "0" は "処理が正常終了した" ことを示します。 リターン コード "2" は "指定されたファイルが見つからない" ことを示します。

特定のリターン コードの意味

特定のリターン コードとその意味は外部アプリケーションまたはプロセスによって異なります。 リターン コードは "エラー コード" や "終了コード" とも呼ばれ、それらの意味は、関連する外部アプリケーションのドキュメントに記載されている可能性があります。 リターン コードの一覧はインターネット上でも見ることができます。

デフォルト モードでのみ作成された変数

RETURN_CODE 変数は、デフォルト モードでEXECUTE コマンドが実行されるときに、作成されます。 変数は、コマンドが非同期モードで実行されるときには、作成されません。

アプリケーションを開く

Microsoft Excel を開く:

EXECUTE "Excel"

Adobe Acrobat Reader を開く

EXECUTE "AcroRd32.exe"

アプリケーションを閉じる

Microsoft Excel を閉じる:

EXECUTE "TASKKILL /f /im Excel.exe"

メモ

/f スイッチは慎重に使用してください。 これは、変更の保存を確認するダイアログ ボックスなど、一切のダイアログ ボックスを表示しないで、アプリケーションを強制的に閉じます。

ファイルを開く

Excel ワークブック AP_Trans.xlsx を開く

EXECUTE '"C:\ACL Projects\Source Data\AP_Trans.xlsx"'

新しいフォルダーを作成する

新しいフォルダーのソース データを作成する

EXECUTE 'cmd /c MD "C:\ACL Projects\Source Data"'

外部スクリプト、または Analytics の外部のバッチ ファイル(.bat)を実行する

スクリプト My_Batch.bat を実行する

EXECUTE '"C:\ACL Projects\Batch Files\My_Batch.bat"'

Analytics の外部のバッチ ファイルにパラメーターを渡す

2 つのパラメーターを My_Batch.bat に渡します。 パラメーターには、リテラルまたは Analytics 変数を指定できます。

EXECUTE '"C:\ACL Projects\Batch Files\My_Batch.bat" param1%v_param2%'

他の Analytics プロジェクトで Analytics スクリプトを実行する

AP Trans Tests.acl で "AP_Trans_script" を実行する"

EXECUTE 'aclwin.exe "C:\ACL Projects\AP Trans Tests.acl" /b AP_Trans_script'

メモ

別のプロジェクト内で Analytics スクリプトを実行すると、もう 1 つの Analytics インスタンスが起動されます。 そのもう 1 つの Analytics インスタンスを閉じたら制御が 1 番目のインスタンスに戻るように、2 番目のプロジェクト内のスクリプトの末尾に QUIT コマンドを記述しておく必要があります。

Analytics スクリプトに待ち時間を組み込む

どちらの例も、30 秒の待ち時間を設けます。

EXECUTE "TIMEOUT /t 30"
EXECUTE "cmd /c PING -n 31 127.0.0.1 > nul"

EXECUTE を使用して便利なタスクを実行する

EXECUTE コマンドは、Windows コマンドおよび DOS コマンドを Analytics のコマンド ラインから、または Analytics スクリプトから実行できるようにします。

この機能を使用すると、以下に挙げる多様で便利なタスクを実行することにより、Analytics スクリプトの自動化を向上させることができます。これらのタスクは、ACLScript 構文だけを使用しては不可能です。

EXECUTE 使用して開始できるタスクの例

他のプログラムやアプリケーションを開いて、Analytics スクリプトで必要なタスクを実行する バッチ ファイルにパラメーターを渡す ネットワークの場所からデータにアクセスする Active Directory アカウント一覧を組み込む
任意のファイルをその既定のアプリケーションで開く 他の Analytics プロジェクトで Analytics スクリプトを実行する FTP を使用して、リモートの場所からデータにアクセスする VBScript と統合する
Analytics の外に存在するファイルやフォルダーのコピー、移動、作成、削除、または比較などのファイルおよびフォルダーの管理タスクを実行する Analytics スクリプトに待ち時間を組み込む データを圧縮または解凍する SQL データベースと統合する
外部スクリプト、または Analytics の外部のバッチ ファイル(.bat)を実行する Analytics スクリプトに Windows のタスク スケジュールを組み込む データを暗号化または復号する Web ページを開く

メモ

これらのタスクを実行する方法の詳細は、Galvanize のヘルプ ドキュメントには記載されていません。 サポートが必要な場合は、適切な Windows オペレーティング システムのドキュメント、またはその他サード パーティのドキュメントを参照してください。

デフォルト モードと非同期モード

デフォルト モードまたは非同期モードで、EXECUTE コマンドを実行できます。

  • デフォルト モード EXECUTE で開始するプロセスは、Analytics スクリプトを続行する前に、完了する必要があります。

    外部プロセスが実行中の場合は、Analytics にはアクセスできません。

  • 非同期モード Analytics スクリプトは、EXECUTE コマンドによって開始されたプロセスが完了するのを待たずに、実行を続行します。

    外部プロセスが実行中の場合は、Analytics にはアクセスし続けることができます。

    ASYNC 指定する場合、EXECUTE コマンドは非同期モードで実行されます。

使用するモード

EXECUTE コマンドを使用する Analytics スクリプトを作成する場合は、どちらのモードの操作が適切であるかを考慮する必要があります。

デフォルト モードを使用する 非同期モードを使用する / ASYNC
  • ファイルおよびフォルダー管理タスク
  • 待機期間の指定
  • 後続のタスクが依存するタスク
  • すぐ後のスクリプトの実行が RETURN_CODE 変数の結果に依存します
  • 外部タスクにより、アプリケーション インターフェイスまたはポップアップ ダイアログボックスが開きます

自動実行される Analytics スクリプト

EXECUTE コマンドを含む Analytics スクリプトを自動で実行する場合は、次のいずれかの方法を使用します。

  • タスクで非同期モードを使用することにより、アプリケーション インターフェイスまたはポップアップ ダイアログボックスが開きます
  • 自動スクリプトでインターフェイス要素を開かないようにします

メモ

インターフェイス要素が閉じるまで、実行中のプロセスを表します。 これらのインターフェイス要素がデフォルト モードで EXECUTE とともに開く場合、Analytics スクリプトの後続の行は実行されず、スクリプトがハングします。

アナリティクス スクリプトの EXECUTE コマンド

ロボットまたは AX Server のアナリティクス スクリプトで、EXECUTE コマンドを使用する場合は、特に実行するコマンドを構成する必要があります。 詳細については、次を参照してください。

二重引用符

EXECUTE コマンドで使用する Windows の Run コマンドの構文は、一重引用符または二重引用符で囲む必要があります。

次の例は、Windows MD コマンドを使用して新しいフォルダーを作成しています。

EXECUTE 'cmd /c md C:\New_Data_Folder'

ネストされた二重引用符

Run コマンド構文内のパスにスペースが含まれている場合は、そのパスも引用符で囲む必要があります。

引用符でパスを囲むときには、2 つのオプションがあります。

  • 単一引用符内の二重引用符 単一引用符を使用して、Run コマンド文字列全体を囲み、二重引用符を内部で使用し、パスを囲みます
    EXECUTE 'cmd /c md "C:\New Data Folder"'

    2 番目の方法よりも、この方法の方が容易である場合があります。

    メモ

    入れ子の順序を逆にする、つまり、二重引用符で文字列全体を囲み、一重引用符でパスを囲むと、動作しません。

  • 2 つの二重引用符 二重引用符を使用して、Run コマンド文字列全体を囲み、2 つの二重引用符を内部で使用してパスを囲みます。
    EXECUTE "cmd /c md ""C:\New Data Folder"""

    この 2 番目の方法を使用する場合、内部的に使用される 2 つの二重引用符は隣接する必要があり、スペースを含めることはできません。

内部コマンドおよび外部コマンド

Windows コマンドは、内部または外部のいずれかです。

  • 内部コマンドは、コマンド プロンプトからのみ実行できます。これはつまり、コマンドを指定する前に、cmd /c または cmd /k を用いて、コマンド シェルを開いておく必要があるということです。
  • 外部コマンドは、コマンド プロンプトからでも、直接 EXECUTE コマンドを用いても実行できます。これはつまり、コマンド シェルを開くことは任意であり、必須ではないということです。

次の例では、違いを説明するために、内部 Windows DIR コマンド(ディレクトリの内容を表示する)と外部Windows COMP コマンド(2 つのファイルを比較する)を使用しています。

EXECUTE 'cmd /k dir "C:\ACL DATA\Sample Data Files"' 
EXECUTE 'comp C:\File_1.txt C:\File_2.txt'

Windows コマンドを含んでいる外部スクリプトまたはバッチ ファイルを作成し、バッチ ファイルを起動するためだけに EXECUTE コマンドを使用することによって、この複雑な事態を避けることができます。 例:

EXECUTE 'C:\My_Batch.bat'

複数行の Run コマンド構文

EXECUTE コマンドは、複数行の Run コマンド構文をサポートしていません。 Analytics スクリプトに複数行の Run コマンドを組み込むには、以下の方法のいずれかを使用します。

方法
Run コマンドごとに EXECUTE コマンドを繰り返します。
EXECUTE 'cmd /c md "C:\New Data Folder"' EXECUTE 'cmd /c copy C:\File_1.txt "C:\New Data Folder"'
'&' を使用して、複数の Run コマンドを結合します。
EXECUTE 'cmd /c md "C:\New Data Folder" & copy C:\File_1.txt "C:\New Data Folder"'
複数行の Run コマンドを含んでいる外部スクリプトまたはバッチ ファイルを作成し、バッチ ファイルを起動するためだけに EXECUTE コマンドを使用します。
EXECUTE 'C:\My_Batch.bat'