Automation Anywhere Automation 360 -AI JIMY Paperbotの文字認識処理完了を待つ-

Automation Anywhere

文字認識処理に要する時間は、処理対象ファイルの数に比例して増えていきます。このため、処理が完了するまでの時間を固定の時間で待つ訳にはいきません。
ここでは、処理完了を知らせるメッセージボックスが表示するのを待って、次の処理を開始する方法について、具体的な設定内容を紹介します。

処理概要

27行から30行で、処理対象ファイルを選択後の[実行]ボタンクリックから、文字認識処理完了のメッセージボックスで[OK]ボタンをクリックするまでを行っています。
また、31行から34行で、データ出力を実行するための[実行]ボタンクリックから、データ出力処理終了のメッセージボックスで[OK]ボタンをクリックするまでを行っています。

以降の説明では、上記アクションリストの行番号を見出しに使って、それぞれのアクションの設定内容の詳細を説明しています。

(27)[実行]ボタンをクリックする

対象となるウィンドウを選択すると、 $window1$ のように変数が自動生成されます。ここでは、操作対象のウィンドウが分かるように変数名を $ウィンドウAIJIMYメイン$ に書き換えています。

(28)「文字認識処理が完了しました」を待つ

[Technology Type]として「MS_UI_AUTOMATION」を指定していることに注意してください。オブジェクトをキャプチャするとき「自動」でキャプチャすると、「MS_ACTIVE_ACCESSIBILITY」が選択されて、正しく動作しないことがあります。その場合は、「MS_UI_AUTOMATION」を選択してオブジェクトを再キャプチャしましょう。

(30)[OK]ボタンをクリックする

(31)[実行]ボタンをクリックする。

(32)「処理を終了しました」を待つ

[Technology Type]として「MS_UI_AUTOMATION」を指定していることに注意してください。詳細内容は、前述の通りです。

(34)[OK]ボタンをクリックする

あとがき

Automation Anywhere Automation 360で処理を待機する方法としては、ウィンドウを待つ方法とオブジェクトを待つ方法があります。「AI JIMY Paperbot」では、メインウィンドウとメッセージボックスのタイトルが同一のため、ウィンドウを待つ方法ではうまくいきませんでした。
オブジェクトを待つ方法ならうまくいくはず、と思ってやり直したのに、オブジェクトをキャプチャするとき「自動」でキャプチャすると、「MS_ACTIVE_ACCESSIBILITY」が選択されていて、正しく動作しない、という落とし穴に私はハマってしまいました。
こんな落とし穴にハマらないよう、メッセージボックスが表示するのを待つ処理では、[Technology Type]として「MS_UI_AUTOMATION」を選択することを覚えておいてください。