UI アクティビティのプロパティ「準備完了まで待機(WaitForReady)」について@UiPath
UI アクティビティのプロパティで共通のプロパティである「準備完了まで待機(WaitForReady)」は次の3つの選択肢がある。
1. NONE … ターゲット要素以外の要素の読み込みを待たずに、アクションを実行する。
2. INTERACTIVE … 一部のアセットがまだ読み込まれている可能性がありますが、ターゲット アプリが準備完了を示すまで待機する。
3. COMPLETE … 操作を実際に実行する前に、ターゲット アプリのすべての UI 要素が読み込まれるのを待つ。
アプリケーションがINTERACTIVEまたはCOMPLETEのどちらの状態にあるかを調べるには、以下のタグを検証する。
・デスクトップアプリケーションの場合
<wnd>タグ、<ctrl> タグ、<java> タグ、または <uia> タグの存在を確認するために wm_null メッセージ(※1)が送信される。存在する場合、アクティビティが実行される。
・Webアプリケーションの場合
a. Internet Explorer ... <webctrl> タグは、HTML ドキュメントの Ready ステートが Complete に設定されているかどうかを確認するために使用される。また、 Busy ステートでは、False に設定する必要がある。(※2)
b. その他 ...
・SAPアプリケーションの場合
最初に <wnd> タグを確認した後、SAP 固有の API を使用して、セッションがビジーかどうかを検出する。
※1. 何の操作も実行しない。 受信者ウィンドウが無視するメッセージをポストする必要がある場合に、 WM _ NULL メッセージを送信する。
※2.
InternetExplorerオブジェクトのdocument.readyStateプロパティはHTMLDocumentオブジェクトのドキュメントの読み込み状態を示す。InternetExplorerの状態をチェックするのに利用すると、より安全に処理を行うことができる。読み込み状態は下記の4段階がある。
“uninitialized" … デフォルト値。読み込み開始前。
"loading" … documentオブジェクトの読み込み中。
"interactive" … documentオブジェクトの読み込み中で操作可能。
"complete" … documentオブジェクトの読み込み完了。
InternetExplorerオブジェクトのBusyプロパティはWebページが読み込み中か示す。「True」は読み込み中で「False」は読み込み完了を示す。