RPAを活用した業務自動化は、稼働が安定するまでの間、エラーがつきものです。
今回の記事では、UiPathで発生する頻度の高いランタイム実行エラーについて、フロー内で回避させる方法を説明します。
なお、ランタイム実行エラーの根本的な原因は「UI要素が見つからない」か「画像が見つからない」の2点が多いかと思いますので、別途、根本的な対策は行ったうえでご参照ください。
ランタイム実行エラーの回避方法
この記事では、ランタイム実行エラーの根本的な原因ではなく、発生する可能性を踏まえたうえでフロー内で回避させる方法を説明します。
<図①_回避フロー>
使用している変数
URL | String | “https://webs-studio.jp/?page_id=1954” |
Existence | Boolean | (アクティビティ:要素の存在を確認の出力で使用) |
回避の考え方
この記事では、ランタイム実行エラーの発生原因を 「UI要素が見つからない」か「画像が見つからない」 の2点に絞っています。
回避する考え方として、正常に処理が済んだのであれば出現するUI要素または画像の存在を確認します。図①の場合、赤いボタンをクリックするアクションを実行したあと、正常にクリックできたのであれば出現するポップアップメッセージの存在を確認するようにしています。
逆に異常な状態になった場合に出現するUI要素または画像があるのであれば、その要素・画像でもOKです。
そのポップアップメッセージが出現しないのであれば、通常、ランタイム実行エラーが発生しますが、図①ではそのポップアップメッセージが出現しない可能性も踏まえて、条件分岐を組んでいます。
実用的なフローで考えた場合、条件分岐でElseに進んだ(通常はランタイム実行エラー)あとは、次のレコードに進む処理を組めばよいでしょう。※エラー履歴は何らかの形で残す必要はあります。
このようなフローを組むことで、「気が付いたらUiPathがエラーになっていて処理が進んでいない。」という事態を回避することができます。
わたしの経験上では、エクセルシートのレコードから、順次、情報を取得し別システムに登録する場合、図①の条件分岐でElseに進んだ場合には、そのエクセルシートに「登録エラー」という結果を返すように運用していました。
その「登録エラー」に関しては、あとで人間が処理を行う訳です。合わせてエラーになった原因を調査します。
ブラウザーを開くに関連するランタイム実行エラー
上記とは別に、ブラウザーを開くのアクティビティでランタイム実行エラーが発生する場合があります。
その場合には、下記の初歩的な設定ミスがないか、確認しましょう。
ブラウザーを開く
URLに移動のアクティビティは、ブラウザーを開くの内部に配置しなければなりません。
補足
図①で使用した検証では、当サイトが提供する「RPAトレーニングルーム」のページを使用しています。
「RPAトレーニングルーム」では、表やラジオボタン、タブやドロップダウンメニューなど、様々な検証を行える要素を提供していますので、ご自由にお使いいただければと思います。