概要
ここでは、普段私がUiPathでワークフローを作成していて、エラーが発生してしまった際に、
解決していくまでに、見ているポイント等についてまとめていきます。
- エラーマークがついてるけど、どうしたらいいか分からない
- エラーメッセージが表示されたけど、何を言ってるか分からない
- このエラーどうしたら解決できるかわからない
っていう方に向けて、少しでもご参考になれば幸いです。
では、参りましょう!
使用した環境
下記の画像で使用している
UiPath Studioは、コミュニティライセンスのバージョン2020.2.0-beta.108のものです。
#UiPath Studioでのエラーの表示形式について
UiPathで自動化に向けたワークフローを作成すると、1回は目にするであろうものが、
『エラー』だと思います。
ここでは、UiPath Studioで表示されるエラーメッセージの表示形式を下記の2種類に分けて考えています。
今回は上記のうちの1つ目、「エラーマーク」におけるエラーメッセージの確認方法や、
エラー要因を特定する際のポイントについて取り上げていきます。
※2つ目の「エラーメッセージウィンドウ」編について知りたい方は、以下のリンク先をご参照ください!
エラー解決へ向けたポイント・コツその③_エラーメッセージウィンドウ編
エラーマークとは
今回取り上げる「エラーマーク」とは、青いビックリマーク(上記画像の赤枠部分)のことを指しています。
エラーマークは、ワークフロー作成中に見受けられるエラー表示です。
このマークが付いているままでは、ワークフローを実行することが出来ません。
また、このエラーマークが付くケースとしては、
ただ単にアクティビティの設定が間違っているといった「エラー」の意を表した場合だけでなく、
必須項目が設定されていないアクティビティがありますといった、「警告」の意を表している場合があります。
例えば、下記のようにフローチャート内にはアクティビティはあるが、どのアクティビティとも
StartNodeと接続されていない場合、
フローチャートにおいて実行するアクティビティ(処理)はStartNodeと接続する必要があるので、
「実行するアクティビティがない状態ですが、いいですか」といったニュアンス(=「警告」の意のエラーマーク)
として表示されます。
エラーメッセージの確認
ここで、エラーマークのエラーメッセージの確認方法について確認しておきたいと思います。
このエラーマークが付く理由(エラーメッセージ)の確認は、
エラーマークにマウスのポインターを重ねる(ホバーする)ことで表示されます。
上記を例に説明すると、
「フローチャート 'フローチャート'には、StartNodeがありません。」の部分がエラーメッセージとなります。
これを確認することで、なぜエラーマークが付いているのかといった理由を知れるわけです。
ここでは、StartNodeがない → 実行するアクティビティを接続していないから
とエラーマークが付いている理由を特定することが出来ます。
エラー要因のある場所を特定する際のポイント
次に、エラー要因場所の特定方法について、まとめていきたいと思います。
「さっきのエラーマークが付いている場所にあるんじゃないの?」
と思われた方もいらっしゃるでしょう。
もちろん、エラーマークが示すアクティビティが、エラー発生の要因がある場合がほとんどですが、
以下のような「1つ以上の子に検証エラーまたは警告があります。」というエラーメッセージが表示される時、
マークが付いているそのアクティビティ自体が問題ではありません。
「1つ以上の子に検証エラーまたは警告があります。」というエラーメッセージ内容から
察することのできる方もいらっしゃると思いますが、このエラーは、
マークの付いたアクティビティ内にある中のアクティビティにエラーが発生している
という内容になります。
従って、上記のメッセージが出た場合は、
「表示されているエラーマークの一番深い階層にあるエラーマークの部分を見つけ出すこと」
がエラー解決へ向けたのコツの1つとなってきます。
上記のワークフローは、
とあるウェブサイトを開いて、PDFファイルのダウンロードを行う処理を行っているのですが、
そのワークフローを例に詳細に見ていきましょう。
(※WebからPDFを保存する流れをレコーディング機能を使用して作成しましたが、
今回の記事のため、一部アクティビティを手動で追加しエラーとなるように作成しました。)
先ほど、「フローチャート」のエラーマークのエラーメッセージは確認したので、
フローチャートの中にある、
「Web」と記載された部分(以下、「Web」シーケンス)にあるエラーマークの内容を確認しましょう。
すると、エラーマークは、この時点で3つ表示されてしまいました。
でも、「エラーがいっぱいだ、、」と焦る必要はありません。
それぞれのエラーマークにマウスを重ねて、エラーメッセージを確認してみましょう。
3つのうち、上位の2つ(①、②)は、「1つ以上の子に検証エラーまたは警告があります。」という内容であるのに対し、
③は、全く内容の異なるエラーメッセージになっています。
「式"C:\TEMP" + …(中略)…'Date'から'String'への暗黙の型変換はできません。」
簡単に言い換えると、
左辺値(Toの部分)はString(文字列)型の変数であるのに対し、右辺値がDate(=日付)型が混じっているため、
「代入できないよー」というメッセージ内容になっています。
したがって、この場合は、「Datetime.Now」の部分を「Datetime.Now.ToString」にして、
Date型になっていたところをString型になるように設定し直せば、エラーを解決することができます。
以上のように、エラーマークがあっても「1つ以上の子に検証エラーまたは警告があります。」の場合は、
そのエラーマークが付いたそのアクティビティではなく、そのアクティビティ内部にあるアクティビティに
エラー要因があります。
なので、一番深い階層にあるエラーマークであるかをエラーメッセージをみて、確認することが大切です。
強いては、
エラーマークが複数個表示された状態になったら、
そのエラーマークのうち、一番深い階層となるエラーマークから確認していくことを意識すれば、
より早くエラーを解決できるようになると思います。
#<まとめ>
エラーマークが付いてしまっていたら、
・エラーマークにマウスを重ねて、エラーメッセージを確認する
・エラーマークがたくさんあったら、そのエラーマークの内の一番深い階層のエラーマークから確認していく
以上のことを意識するだけで、エラーマークが付いたときに解決する方法を見つけ出せるはずです◎
#最後に
確認すべきことは分かったけど、エラーメッセージの内容を見ても「わからない」と思っている方は、
次の「エラーマークのエラーメッセージのよくある例」を紹介した記事も
併せてご参照いただければなーと思います。
(初心者向け)【UiPath】エラー解決へ向けたポイント・コツその②_エラーマーク後編
最後までお付き合いいただきありがとうございました!