Leverl3 課題2(MonthlyReport Dispatcher) On Element Appearについて

こんにちは。おせわになります。

Leverl3 課題2に取り組んでおり、DispatcherのOn Element Appearアクティビティ について教えていただけませんでしょうか。
On Element Appear アクティビティは、対象のボタンが画面の下(スクロールしないと見えない場所)の場合は、検出しないのでしょうか。

添付のようなアクティビティのフローでテストしていたのですが、どうしてもOn Element Appearでタイムアウトしてしまっていました。IEの拡大率を落とし、画面すべてが表示されるようにした場合は、正常に動作しました。
Ui Element Exist は、スクロールしないと表示されていない位置でも検出できたのですが、On Element Appearはダメなのでしょうか。

同様のフローを作成する際には、On Element Appearではなく、Ui Element Existとifで分岐でもよいのでしょうか。On Element AppearとUi Element Existの使い分け(On Element Appearを利用すべきケース)を教えていただけませんでしょうか。

よろしくお願いいたします。
test.xaml (11.8 キロバイト)

こんにちは
いまUiPathの環境が手元になく
ご提示のサンプルが見えないので
見当違いだったらほんとに申し訳ないのですが
On Element Appearの waitonvisibleプロパティってどうなっていますか?
これがチェックされていると、おっしゃるような「画面に見える」まで待機してしまうようになるものです。なのでこれがあると、スクロールしないと、とか、上に何か別のウィンドウがかぶって、とかも待ち続けてしまうようです。

2 Likes

sumireさん

ご回答ありがとうございます。
自分でWFをダウンロードして確認したところ、ご指摘のプロパティがチェックされていました。
「画面に見える」まで待機 するという意味のプロパティだったのですね。理解できておりませんでした。

自宅の環境でもチェックを外して確認してみます。

sumireさん

自宅環境でも、「waitonvisible」のチェックをはずして拡大率を戻して、正常に動作することを確認しました。ありがとうございました!
On Element Appearも「waitonvisible」のチェックがなければ、「Ui Element Exist」と同じように要素を検出されると理解しました。

すみません、もう一点、「無限に繰り返す(RepeatForever)」のプロパティは、要素が出現している間Do内の処理をし続ける(要素が表示されなくなったら抜ける) という理解でよいのでしょうか。

そうですー
これをFalseにすると、
要素出た

Doの動作を1回だけやる

抜けて次へ
という感じになります。

このOnElement Appearは出現待ちに使うことが多い(というか他の用途があんまり思いつかない)と思うので
個人的には、RepeatForeverのデフォルトをTrueじゃなくてFalseにしておいてくれるほうが親切のように思います……。UiPathの中の人にこの思い届け……。

2 Likes

sumireさん

たびたびご回答ありがとうございました。
よく理解できました。
また、L3のPerformerを作成していて、OnElement Appear で出現待ちするケースが実際に出てきて理解が深まりました。
(ですが、これについて少々疑問があり、別トピックで質問させていただきたいと思います。よろしければまたアドバイスいただけましたら幸いです)

よろしくお願いいたします。

こちらのコメントで、パフォーマーで引っかかっていた点が解決しました!
RepeatForever True がデフォルトだったことに気づいていませんでした(涙)
本当に、できればFlaseをデフォルトにしていただけたら嬉しいです。。。

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.