ray88’s diary

お仕事で困ったとき用の自分用の覚書

UiPath エラー発生個所のアクティビティのDisplayNameを取得する

■UiPathでエラー発生した際に「Exception.Source」でエラーが発生した箇所の
 アクティビティのDisplayNameを取得できると思ったら、どれもこれも 「System.Activities」としか表示されない!アレ?と思う人は多いはず。
 フツーにCatchの中に「Exception.Source」を入れてもダメらしい。
 解決方法は以下。

■解決方法

①メインの処理を書いたワークフローのファイルとTryCatchのファイルは別々にする。

②TryCatchのxamlファイルで、Tryの中にInvoke WorkFlowのアクティビティで
 メインファイルを呼び出すようにする。(引数の設定は特になし)

③TryCatchのファイルでCatchの中に「Exception.Source」を入れると、ちゃんと

 エラーのアクティビティのDisplayNameを拾ってくる。

 TryCatchのTryの中

f:id:ray88:20200311230005p:plain

TryCathのTryの中

f:id:ray88:20200311230048p:plain

メイン処理のワークフロー

f:id:ray88:20200311230121p:plain

結果:エラーのアクティビティ「2.スロー」がちゃんと拾われて表示される

f:id:ray88:20200311230219p:plain