本コンテンツをダウンロードする前にこちらの利用条件を必ずご確認いただき、内容に同意をしたうえでダウンロードしてください。 また、"コンテンツの利用条件"は下のボタンからダウンロードし、お手元で保管してください。
シナリオファイル(以降、コマンド用シナリオファイル)がフォルダに配置されるのを監視し、配置されたコマンド用シナリオファイルを実行する常駐型のサンプルシナリオ(以降、本サンプルシナリオ)について説明します。
本サンプルシナリオは、以下の処理を行います。
指定されたフォルダを監視し、フォルダ内にファイルが配置されたら、配置されたファイルをコマンド用シナリオファイルとして、シナリオ実行します。
※ 実行したいコマンド用シナリオでは、シナリオの最後に、本サンプルシナリオを呼び出すようにシナリオを作成する必要があります。実行対象のコマンド用シナリオファイルの削除処理を行います。
本サンプルシナリオでは、以下のWinActorモジュールを使用します。
本サンプルシナリオは以下の環境で動作確認しています。
本サンプルシナリオに同梱されているファイル群について、説明します。
アラート表示.ums5
アラートを表示させるコマンド用シナリオファイルです。
以下の画面が表示されますので、「OK」ボタンをクリックしてください。
※「OK」ボタンをクリック後に「シナリオGoto」を呼び出して、本サンプルシナリオの監視処理に戻ります。(クリックするまで監視処理に戻りません。)
「order」フォルダ
コマンド用シナリオファイルが配置されているかの監視対象となるフォルダです。本サンプルシナリオ実行時、「サンプルのコマンド」フォルダ配下のコマンド用シナリオファイルを本フォルダにコピーしてください。
コマンド用シナリオファイルの配置を検知した時、「current」フォルダに該当コマンド用シナリオファイルを移動し、コマンド用シナリオファイルを実行させます。 提供時のフォルダ配下は、空の状態です。
※ フォルダの名称を変更する場合は、本サンプルシナリオの変数「監視フォルダ名」の初期値も併せて変更してください。
「current」フォルダ
実行対象のコマンド用シナリオファイルを管理するフォルダです。本サンプルシナリオが「order」フォルダから実行対象のコマンド用シナリオファイルを移動してきます。 コマンド用シナリオファイルのシナリオ実行から、本サンプルシナリオに実行が戻ってきた際に、本サンプルシナリオがコマンド用シナリオファイルの削除を行います。 提供時のフォルダ配下は、空の状態です。
※ フォルダの名称を変更する場合は、本サンプルシナリオの変数「実行フォルダ名」の初期値も併せて変更してください。
本サンプルシナリオの使い方は以下の通りです。
ダウンロードしたZIPファイルを展開し、展開したフォルダに含まれている本サンプルシナリオをWinActorで読み込みます。展開したファイル群については、ファイル構成を参照してください。
「サンプルのコマンド」フォルダ配下のコマンド用シナリオファイルを「order」フォルダ配下にコピーしてください。
以降のStepでは、複数のコマンド用シナリオファイルを一度に「order」フォルダ配下に配置した場合、OSが定義するソート順の先頭のコマンド用シナリオファイルから処理されます。
WinActorで本サンプルシナリオを実行開始します。
Step 2.でコピーしたコマンド用シナリオファイルが実行されます。コピーしたすべてのコマンド用シナリオファイルが実行された後、監視モードに入ります。
Step 2.と同じように「サンプルのコマンド」フォルダ配下のコマンド用シナリオファイルを「order」フォルダ配下にコピーしてください。
コピーするコマンド用シナリオファイルの数は、幾つでも構いません。
コマンド用シナリオファイルの配置を確認し、監視モードから実行に移ることが確認できます。
コピーしたすべてのコマンド用シナリオファイルが実行された後、監視モードに入ります。
本サンプルシナリオは常駐型の監視シナリオのため、明確な終了機能はありません。
本サンプルシナリオを終了する場合は、自ら「停止」ボタンをクリックしてください。
本サンプルシナリオでは、「order」フォルダ配下にシナリオ以外のファイルをコピーした場合、エラーメッセージが出力されます。
詳細については、エラーメッセージ一覧を参照してください。
本サンプルシナリオで使用している実装テクニックやサンプルシナリオの拡張例について説明します。
最初に本サンプルシナリオのコンセプトを説明します。
本サンプルシナリオは、「order」フォルダへのシナリオ配置を監視します。
コマンド用シナリオファイルが配置されたことを検知すると、「current」フォルダにコマンド用シナリオファイルを移動し、ライブラリ「01_WinActor制御/02_シナリオ制御/シナリオGoto.ums5」にて該当コマンド用シナリオファイルを実行します。
実行されるコマンド用シナリオファイルにも、ライブラリ「01_WinActor制御/02_シナリオ制御/シナリオGoto.ums5」を用いて本サンプルシナリオを再度、起動することで監視を継続させています。
最初に「current」フォルダ配下に存在するファイルを削除します。 後に使用する「13_ファイル関連/02_ファイル操作/ファイル移動.ums5」ライブラリは、上書きできません。
予めコマンド用シナリオファイルを削除しておくことで、同じコマンド用シナリオファイルが使用可能となります。
「ノード/フロー/繰り返し」の条件を無限ループにします。「order」フォルダにコマンド用シナリオファイルが配置されるまで、ループを繰り返します。コマンド用シナリオファイルの配置を検知した場合は、コマンド用シナリオファイルを「current」フォルダに移動し、「01_WinActor制御/02_シナリオ制御/シナリオGoto.ums5」を用いてコマンド用シナリオファイルを実行させます。
コマンド用シナリオファイルを実行することで、無限ループから抜けます。すなわち、本サンプルシナリオが終了します。
実行されるコマンド用シナリオファイルでも「01_WinActor制御/02_シナリオ制御/シナリオGoto.ums5」を用いて、本サンプルシナリオを実行させることで常駐監視を可能とさせています。
「order」フォルダ配下にコマンド用シナリオファイルのコピー処理に時間がかかる環境の場合、ファイルコピーが完了するまでに「シナリオGoto」が実行される可能性があります。 不完全なシナリオファイルの状態で読み込まれるため、結果として「シナリオファイルの読み込みに失敗しました。」というエラーが発生します。 このような環境では、「シナリオGoto」呼び出しの前処理である「先頭ファイルの取得」から「ファイル移動」の間に、ファイルのコピーが完了したことを確認するための処理を追加する必要があります。
ライブラリ「13_ファイル関連/04_ファイル一覧/先頭ファイルの取得.ums5」では、Shell.Applicationオブジェクトを用いてフォルダ内のファイル一覧を取得しています。
その際、暗黙的にファイル名昇順でファイル名一覧を取得できることを期待していますが、ソート順についての仕様は明確化されていません。
処理順を厳格化したい場合は、ライブラリ「13_ファイル関連/04_ファイル一覧/先頭ファイルの取得.ums5」のスクリプト自体を修正する必要が出てきます。
日付 | 修正内容 | 版数 | ||||||
---|---|---|---|---|---|---|---|---|
|
|
|
||||||
|
|
|
本コンテンツをダウンロードする前にこちらの利用条件を必ずご確認いただき、内容に同意をしたうえでダウンロードしてください。 また、"コンテンツの利用条件"は下のボタンからダウンロードし、お手元で保管してください。
・ums6、ums7
・ums6、ums7
タスクスケジューラで定期的にbatファイルを起動し、指定のフォルダにファイルが存在する場合はシナリオを実行するサンプルシナリオとなります。
詳しくはこちら顧客情報を記載したExcelファイル、もしくはcsvファイルをデータ一覧に読み込み、選択された行に記載されている顧客宛の案内状を作成するサンプルシナリオ...
詳しくはこちらシナリオGoToライブラリを使用して、実行するシナリオごとにメールの内容を変更して下書き保存するサンプルシナリオになります。
詳しくはこちらWinActorのライブラリを使用して、トップ画面のエラーダイアログを検知するサンプルシナリオから監視ルール(シナリオ停止)の使用法を理解します。
詳しくはこちら