UiPath StudioXワークローを無人実行する方法

目次

前提

通常は無人実行(Unattended Robot)には対応していないStudioXワークフローもひと手間加えれば可能。ただし、Studioプロファイルを経由する必要があるので、Citizen Developerライセンスしかない(=StudioXしか使えない)場合は完全な無人実行とはならない(後述)。

UiPath公式の回答

StudioX プロジェクトは有人での使用のみを目的として設計されており、無人での使用を目的とし
たプロジェクトを StudioX で開発することはお勧めしません。GEH を削除して StudioX プロジェ
クトを更新すれば、Studio プロファイルで無人オートメーションとして使用できます。プロジェ
クトをパブリッシュして無人オートメーションとして使用する前に RPA 開発者によるプロジェク
トのレビューを実施することをお勧めします。記録するログやエラー処理を追加したり、アセッ
トとして保存すべき値がハードコードされていないか確認したりするためです。

StudioX – よくある質問 > StudioX で無人オートメーション プロジェクトを開発できますか?

※GEH=Global Error Handler

Studioプロファイルを経由すべき理由

StudioXで作成したワークフローをそのままOrchestratorにパブリッシュして無人実行しても、エラー発生時にグローバル例外ハンドラー(GEH)のダイアログが表示されてしまう。こうなると手動でダイアログを閉じる等の対応をするまで実行が終了せず、完全な無人実行ではなくなるので本末転倒な結果となってしまう。

StudioXワークフローをそのままURで実行しエラーが出るとGEHが表示される
GEHのダイアログ

しかもダイアログを放置しておくと、Orchestrator上ではステータスが「実行中」のままで実行PCの画面を見ないと状況が把握できない。

GEHのダイアログに人が対応しないとずっと実行中のままになる
GEHのダイアログに人が対応しないとずっと実行中のままになる

GEHダイアログで「スキップ」すると「成功」、「停止」や×ボタンで閉じると「エラー」にステータスが変わり終了する。

方法

1. StudioXでワークフローを作成する

無人実行したいワークフローを通常通りStudioXで作成する。

StudioXでスローだけのワークフローを作成
検証のためStudioXでスローだけのワークフローを作成

2. project.jsonを編集する

ワークフローのプロジェクトフォルダに配置されているproject.jsonをメモ帳等のテキストエディタで開き、"exceptionHandlerWorkflow": "GlobalHandlerX.xaml", を行ごと削除し保存する。

GEHを呼び出す記述を削除する
GEHを呼び出す記述を削除する

3. StudioXからStudioにプロファイルを切り替える

プロファイル変更

4. Orchestratorにパブリッシュする

1で作成したワークフローをStudioで開き、Orchestratorへパブリッシュする。

StudioXのワークフローをStudioプロファイルで開く
なぜか自動でExcelのスコープに囲まれているが気にしなくてOK

5. Orchestratorで無人実行の設定をする

後は通常の無人実行と同様にOrchestratorでトリガーなどを設定すれば完了!

スローのみのワークフローがエラーとなってちゃんと終了するようになった
1で作成したスローのみのワークフローがエラーとなってちゃんと終了するようになった

その他の検証結果

GEHを呼び出す記述を削除してStudioXからパブリッシュするだけだとどうなる?

前述の方法の3~4を省いてStudioXからパブリッシュすると、その時点でproject.jsonに"exceptionHandlerWorkflow": "GlobalHandlerX.xaml", が追加されてしまうので結局GEHダイアログが表示されてしまう。

Studioプロファイルに切り替えるだけだとどうなる?

前述の方法の2を省いてStudioプロファイルでパブリッシュしただけだと、GEHダイアログが呼び出されてしまう。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次