2023.04.13RPAでエラー処理しないといけない理由ってなに?必要性がよくわからないから教えて。記事を書いている僕は、RPA関連の書籍を5冊出版しているRPAの専門家です。7年以上、複数の会社でRPAの導入・開発・運用に携わっています。desktopなど)をイメージして解説しています。RPA全般について解説していますが、個別のRPAツールに応用してくださいね。エンジニア歴25年超。RPA開発および支援8年超。RPA関連の書籍を5冊出版。しくはこちら!エラー処理を行う前提の話エラー処理を行う前提をお話します。RPAは本番環境で運用することが基本まず、これをお伝えしておきます↓↓RPAは本番環境で運用することが基本です。開発し終えたシナリオは、開発環境ではなく、実行端末(実行用パソコン)の本番環境で実行します。シナリオRPAツールで開発したオートメーションのことを、僕は「シナリオ」と呼んでいます。desktopで「フロー」と呼ばれているものです。Assistant)もしくはオーケストレータ―から実行します。Automate(クラウドフロー)から実行します。目にするのは、開発環境のまま運用している人。これは「デバッグ環境で実行」している状態です。今後は、「開発環境のまま運用している」ことを「デバッグ環境で実行している」と表記します。これは、正しい運用ではありません。「料理しながら、フライパンにのったままの料理を食べている」感じです。(それでも、いいという人もいるでしょうけど......。)ちゃんと、お皿に盛りつけて、テーブルでいただきましょう。それが、「本番環境で運用する」ということです。本番環境ではエラーが分かりにくいデバッグ環境では、エラー発生すると、開発画面内にエラー情報が表示されます。desktopなら、このようにエラーが発生したアクションが赤枠で囲まれます。エラーパネルにも、エラー内容が表示されます。desktopにおけるエラー発生時の画面うん、エラーの発生場所も、原因もわかりやすい!すぐにシナリオを直して、再実行することも容易です。多くの人が、デバッグ環境のまま運用している理由の1つは、コレでしょうね。本番環境でエラーが発生したときは、エラー情報が少なく、エラーの原因がわかりにくい。その場で、シナリオを直すこともできません。エラー処理を行う必要があるんです!逆に、デバッグ環境で運用しているかぎり、エラー処理の重要性はわからないんじゃないかな。いうわけで、ここまではエラー処理を行う理由の前置きでした。ここから、エラー処理を行う理由の深掘りになります。[1]エラー発生後の処理を行いたいから「RPAでエラー処理するべき理由」の1つ目は、「エラー発生後の処理を行いたいから」です。エラー処理を行わないと、このようにエラーが発生したときのアクションを実行できません。エラー発生時の処理を行えないエラー発生後の処理として、よく行うことを3つ解説します。エラー処理の目的1リカバリーのための詳細情報を得る2自分以外のユーザーへの情報を伝える3正しい終了処理を行うそれでは、1つずつ、詳しく解説していきます。1リカバリーのための詳細情報を得るエラー処理の目的の1つ目は「リカバリーのための詳細情報を得る」ことです。本番環境でエラーが発生したときに、適切にリカバリーするには、どこでエラーが発生したのかどんな原因でエラーが発生したのかを知りたい、ですね。RPAツール自体の仕組みで、エラー内容を表示してくれるケースもあります。このエラー情報が足りないなら、エラー情報を詳しく得るための処理を行います。具体的には、ポップアップメッセージで、詳しいエラー情報を表示するログに詳しいエラー情報を書き出すといった方法です。2自分以外のユーザーへの情報を伝えるエラー処理の目的の2つ目は「自分以外のユーザーへの情報を伝える」ことです。RPAは「自分で作って、自分で使う」というケースだけではありません。「RPAを作れる人がシナリオを作って、RPAにあまり詳しくないユーザーが使う」というケースはよくありますよね。このケースを考えてみましょう。↓↓ユーザーエラーが発生したら、なんか不親切なエラーメッセージが表示されるこれでは、ユーザーは困惑してしまいます。シナリオを作った開発者に、すぐ問い合わせするでしょう。シナリオを作った人も、何回も問い合わせを受けて、疲弊します。問い合わせ対応ばかりで、開発が進まないよ......こういうケースを防ぐために、エラー発生時には、わかりやすいエラーメッセージに変えて、表示するこのあと、どうすればいいのかを教えるといった処理を加えるのが、いい方法です。3正しい終了処理を行うエラー処理の目的の最後は「正しい終了処理を行う」ことです。本番環境でエラーが発生したら、そこでシナリオの実行は終了します。RPAツールがExcelの操作途中だったら、途中で終了、というわけ。このとき、Excelを非表示で操作していたら?Excelのインスタンス(実体)は残ったままになってしまいますね。「Excelは既に開いている」って言われた......エラー発生時には、エラー処理を行い、Excelを適切に終了させることが重要なことがわかりますね。Excelだけではなく、アプリケーションやWebサイトの操作でも同じ。正しい方法でログアウトして、ウィンドウを閉じましょう。[2]シナリオ実行を続けたいからエラー処理を行う理由の2つ目は「シナリオ実行を続けたいから」です。エラー発生時も自動的にリカバリーできるケースもあります。そのリカバリーアクションを設定していなかったら、このようにフローはそこで終了します。フローを続けられないせっかく、リカバリー方法があるのに、、エラー発生のたびに手動でリカバリーしないといけなかったら、大変だし、ムダ!!自動リカバリー可能なケースだったら、その処理を組み込みましょう。リカバリーして、また正常なシナリオに復帰できれば、運用の工数が減りますね。まとめこの記事では、『RPAでエラー処理が必要な理由』を解説してきました。「RPAでエラー処理って必要か?」と疑問に思う人は、「エラー処理を行う前提の話」で書いたように、デバッグ環境で運用しているから、かも。RPAでエラー処理が必要な理由は、大きく分けると次の2つ。[1]エラー発生後の処理を行いたいから[2]シナリオ実行を続けたいからです。Desktop|エラー処理の方法」の補足です。Desktop|ブロックエラー発生時のフローを作成するブロックエラー発生時のフローを作成する手順を解説します。Desktop|個別アクションのエラー発生時のフローを作成する個別アクションのエラー発生時のフローを作成する手順を解説します。desktopに限らず、RPAにより自動化を実行する際はエラーが発生することを前提としなければなりません。この記事ではエラー処理の必要性を理解するためにフローを作成して解説しています。|RPAコンサルタント|ITエンジニア歴25年。RPAによる業務自動化の書籍を5冊上梓。完全自動化研究所.メニューホームPADその他記事UiPathChatGPT書籍RPAの知識RPA事例RPA設計サービスこさナビプレミアム会員登録PAD初心者向け動画YoutubeチャンネルPADフローダウンロードサンプルWebサイトショップコンタクト会社概要お問い合わせフォームホーム検索トップサイドバ。