アナリティクス開発のベストプラクティス
アナリティクス スクリプトでは、標準のスクリプトで使用できるコマンドのほとんどがサポートされています。ただし、開発者としては、アナリティクス スクリプトをユーザーの操作なしに実行できるようにすると共に、ロボット のロボット アプリのアナリティクス スクリプトを処理するエンジンでサポートされていないコマンドをアナリティクス スクリプトに記述しないようにする必要があります。
アナリティクス スクリプトではすべての ACLScript 関数がサポートされます。
一般的なベストプラクティス
ロボットごとに 1 つの Analytics プロジェクトを使用する
ロボットごとに新しい Analytics プロジェクトを作成します。プロジェクトには、ロボットを構成するすべてのアナリティクス スクリプトと、必要となるすべてのサブスクリプトが含まれている必要があります。
ローカルでテストする
どのアナリティクス スクリプトも、ロボット アプリに展開する前に、ローカルでテストします。アナリティクス スクリプトが想定通りに実行され、ユーザー操作が必要でないことを確認します。
詳細については、アナリティクス スクリプトの開発を参照してください。
テストに安定したデータ接続を使用する
ODBC データ ソースを使用しているかどうかについてローカルでアナリティクス スクリプトをテストするには、お使いのローカル コンピューター上で、アナリティクス スクリプトが実行する環境の接続と一致する、 ODBC 接続を構成する必要があります。
絶対ファイルパスの使用を避ける
アナリティクス スクリプトが実行される環境に同一のファイルパスが存在していることが確実な場合以外、アナリティクス スクリプトで絶対ファイルパス(C:\results など)を使用することは避けてください。
相対ファイルパス(\results など)を使用すると、アナリティクス スクリプトをローカルで開発してテストし、他の環境に同じディレクトリ構造がなくても、別の環境に展開できます。
SET を使って初期設定を行う
SET コマンドを使用して、アナリティクス スクリプトで必要となるすべての初期設定を指定します。アナリティクス スクリプトの初期設定をしない場合は、Analytics のデフォルトの初期設定が使用されます。アナリティクス ヘッダーの後ろ、アナリティクス スクリプト ロジックの前に SET コマンドを置きます。
結果テーブルやデータ出力テーブルでは演算フィールドは使用禁止
アナリティクス スクリプトを実行するセッション以外のセッションでも保持したい出力テーブル内では、演算フィールドを使用しないでください。
解釈内での使用目的に、あるいは後続のスクリプトの入力として保持される結果テーブルやデータテーブルが演算フィールドを含んでいる場合には、予期しない値が表示される可能性があります。演算値は初期設定ファイル(.prf)に定義されている設定によって決まるか、または SET コマンドを使って作成されるため、環境に応じて、出力される値が異なってきます。
演算フィールドの値を保持する必要がある場合は、EXTRACT コマンドを FIELDS または ALL オプションとともに使用することで、そのフィールドを結果テーブルやデータ テーブルの物理フィールドに変換します。詳細については、EXTRACT コマンドを参照してください。
データ接続のパスワードを暗号化する
アナリティクス スクリプトにデータ ソースのパスワードをプレーン テキストで設定しないようにするには、//PASSWORD アナリティクス タグを使用します。このタグは、アナリティクス スクリプトを実行する前に、パスワードの入力をユーザーに求め、入力された値を暗号化します。
Diligent One との間でインポートまたはエクスポートを行うときにパスワードを使用する
PASSWORD パラメーターは、Diligent One との間でインポートまたはエクスポートを行うすべてのコマンドで必要です。
- IMPORT GRCRESULTS
- IMPORT GRCPROJECT
- EXPORT... ACLGRC
- EXPORT... HBDATA
ロボット では、コマンドは PASSWORD パラメーターを指定しないと失敗します。
コマンド内で PASSWORD パラメーターを使用するときには、アナリティクス ヘッダーにある関連の //PASSWORD タグも指定する必要があります。詳細については、 PASSWORD タグ を参照してください。
メモ
PASSWORD パラメーターは、Analytics でインポートおよびエクスポート コマンドを実行するときには不要です。Windows レジストリにローカル保存されている現在のユーザーの Diligent One アクセス トークン アクセス トークンが自動的に使用されます。
ユーザー操作の回避
アナリティクス スクリプトは、ユーザーの操作なしに実行できるようにしておく必要があります。コマンドがダイアログ ボックスを作成しようとすると、開発環境のエンジンがアナリティクス スクリプトを停止し、エラーがログに記録されます。
ユーザー操作コマンドをアナリティクス タグに置き換える
ユーザー操作を必要とする Analytics コマンドを使用しないようにします。アナリティクス ヘッダーの同等のアナリティクス タグで置換します。アナリティクス タグでは、アナリティクス スクリプトを実行する前に、ユーザーが入力値を指定できます。
| 使用しない | 以下のファイルと置換 |
|---|---|
| DIALOG | //PARAM、//TABLE、//FIELD |
| ACCEPT | //PARAM、//TABLE、//FIELD |
| PASSWORD | //PASSWORD |
| PAUSE | 相当するオプションなし |
ガイドライン
- インタラクティブ コマンドアナリティクス スクリプト処理が失敗しないようにするには、すべてのインタラクティブ コマンドを削除します。
- SET SAFETY必要に応じてファイルを上書きできるようにする(確認ダイアログボックスの表示なし)には、アナリティクス スクリプトの冒頭に SET SAFETY OFF コマンドを追加します。
アナリティクス スクリプトの終わりに SET SAFETY ON コマンドを追加することで、デフォルトの動作に戻しておくことができます。
- OK パラメーター確認ダイアログによってアナリティクス スクリプトがクラッシュしないようにするには、通常、確認ダイアログボックスを表示する以下のコマンドの後に OK パラメーターを追加します。
- RENAME
- DELETE
スクリプト構文を確認する
Analytics は、アナリティクス スクリプトが失敗する原因となるスクリプト構文、またはローカル環境とアナリティクス スクリプトが展開される環境との間で調整が必要になるスクリプト構文を検出するツールを提供しています。このツールでは警告のみが表示されます。警告のあるアナリティクス スクリプトでも、コミットまたはインポートできます。
ツールの確認機能
ツールは、次の項目について、プロジェクトのすべてのスクリプトを確認します。
- ユーザー操作を必要とするコマンド
- 絶対ファイル パス
- 外部スクリプトの呼び出し
確認が実行されるタイミング
スクリプト構文確認は、スクリプトをロボットにコミットするときに、自動的に実行されます。
構文の確認はデフォルトで有効です。オフにする場合は、[オプション]ダイアログボックス([ツール > オプション > インターフェイス])で、[スクリプトをコミットする前に、スクリプト構文チェックを無効にする]を選択します。
確認を手動で実行する
スクリプト構文の確認を手動で実行できます。Analytics ツールバーにスクリプトの確認
ボタンを最初に追加しなければならない場合があります。
- 必要に応じて、[スクリプトの確認]ボタンを Analytics ツールバーに追加します。
- ツール バー上の何もない場所をダブルクリックすると、[ツール バーの変更]ダイアログ ボックスが開きます。
- [利用できるツール バー ボタン]リストで、[スクリプトの確認]を選択し、[追加]をクリックします。
- [現在のツール バー ボタン]リストで、[スクリプトの確認]ボタンを選択し、[上へ]または[下へ]をクリックして、ボタンの位置を変更します。
上から下へのボタンの順序は、ツール バーの左から右への位置に対応しています。
[閉じる]をクリックして、変更を保存します。
- ツールバーで、[スクリプトのチェック]
をクリックします。プロジェクトのスクリプト構文が有効であること、または 1 つ以上の警告を示すメッセージが表示されます。
- 次のいずれかを実行します。
- 警告があるスクリプト構文を修正し、[スクリプトの確認
]をもう一度クリックして、警告が表示されないことを確認します。 - 展開環境にディレクトリ構造、またはアナリティクス スクリプトで指定されたパスまたは外部スクリプトと一致する外部スクリプトがあることを確認します。
- 警告があるスクリプト構文を修正し、[スクリプトの確認