UiPath TryCatchでエラーを回避。あと、TryCatchが動かないとき。 | デジタル世界に生きるメモ

デジタル世界に生きるメモ

なるほどなーと思ったインターネットのことや音楽のことや趣味全般について、メモ的に書いているブログ。

UiPathのお時間です。

今日のUiPathは二本立て。

1.TryCatchでエラーを回避

すでに多くの方が解説されていますが、大事なのでUiPathでのエラー回避について。

まずは動画をご紹介します。

 

 

以下、動画と同じことの解説です。

 

TryCatchは例外処理やエラー回避をするために使用します。

数値の計算をするのに文字列が含まれているときであったり、ファイル選択画面でファイルを選択していないときであったり、そのまま進められないときに使用します。

 

TryCatchは次の構成になっています。

  • Try  → エラーが怒るかもしれない処理を入れます
  • Catches → エラーが起きた時の処理を入れます
  • Finaly → エラーに関係なく最終的に実施する処理を入れます

具体例を見ましょう。入力ダイアログで数値を入れさせて、数値を1.1倍(10%増)して税込額を表示するという、あまり役に立たないフローを作成しました。

ワークフローを補足すると、入力された数値は変数「Num」に格納しています。

この変数は「Cint()」でGenericValue型(文字列)からInt型(数値)に変換しています。

数値に変換した入力データに1.1をかけて(*1.1)、結果をメッセージボックスで表示しているという動きです。

 

ここにアクティビティからTryCatchを持ってきて、エラーが起こるかもしれない代入のアクティビティを「Try」の中に入れます。

この動きは、代入のアクティビティを右クリックして「トライキャッチを使用して囲む(Ctrl+T)」でも代用可能です。

 

「Catches」では、エラーの種類を選び、そのエラーが起きた時の処理を入れます。

エラーの種類はいろいろあり、複数のエラーを設定できますが、「System.Exception」を選んでおけば「エラー全般」を拾ってくれるので、よくわからなければ「System.Exception」を選択しておきましょう。エラーが起きた時の処理ですが、今回はそこでワークフローを終わらせるようにしました。

 

「Finaly」は今回は設定していません。これで一通りの形になりました。

正直なところ、このワークフローはTryCatchを設定してもしなくても、ほとんど動きは同じ(結局エラーになって終わる)なので、設定する意味はあまりないのですが、繰り返し処理をするときや、エラーログを取得したいとき、エラーで動かなくなるのを避けたいとき、などは設定しておくとよいでしょう。また、ちゃんとエラーを考えてワークフローを組んでいくこと自体が大事かと思います。

2.TryCatchが動かない

このTryCatchをやっていて、いちばん無意味に躓いたのが、TryCatchを組み込んだのに、TryCatchの処理が進まずに、エラーになることです。
もし同様の事象が起きている方がいたとしたら、設定の見直しはもちろんですが、「実行」をちゃんと押しましょう。
UiPathの青い再生ボタンは、そのまま押すと「現在のファイルをデバッグして実行」することになります。これだと、せっかくTryCatchの設定をしてもエラーのデバッグをしてしまいます。なのでデバッグをしないで実行する「実行」をすればOKです。
  • 現在のファイルを実行(Ctrl+F6)
  • Mainを実行(Ctrl+F5)

TryCatchが動かない、効かない、うまくいかないときはこちらでお試しください。