Posted at

UiPath19.8以降の「ロボットをコマンドで実行する方法」

UiPath19.8が2019年9月1日にcommunity editionで提供され始めて、いろいろ変わりすぎてびっくりしてます。笑

そして、公式サイトをみても何が変わったのかまとめられていないのが困る!(僕が見つけられなかっただけかも!)

今回は、9月2日(このときまだUiPath19.7)にバッチファイルでロボットを初めてコマンドから実行できるようにして、その30分後にUiPath19.8にアップデートされて、バッチファイルが動作しなくなった事件が発生したので、UiPath19.8用の「ロボットをコマンドで実行する方法」を記しておこうと思います。


UiPath19.8以降のロボットをコマンドで実行する方法

1. コマンドプロンプトを開きます

2. エクスプローラーでロボットまでのパスを確認します

僕の場合はこれでした↓

C:\Users\{ユーザー名}\AppData\Local\UiPath\app-19.8.0\UiRobot.exe

image.png

3.コマンドプロンプトに以下のスクリプトを入力してエンターを押します

C:\Users\{ユーザー名}\AppData\Local\UiPath\app-19.8.0\UiRobot.exe execute --file "{実行したいロボットのXAMLまでのパス}"

例として当てはめるとこんな感じになります

C:\Users\{ユーザー名}\AppData\Local\UiPath\app-19.8.0\UiRobot.exe execute --file "C:\Users\{ユーザー名}\Documents\UiPath\Workflow-Inspector\Main.xaml"

ちなみに、実行したいロボットの指定ですが他にもいろいろ方法はあるみたいです。


既にパブリッシュ済みのロボットを実行する場合

C:\Users\naoki.oshiumi\AppData\Local\UiPath\app-19.8.0\UiRobot.exe execute -p "ロボットの名前"

例えば、以前僕はしりとりロボットを作ったので、パブリッシュ済みのロボットの中に「しりとりロボット」というのがあります

image.png

このしりとりロボットを実行したい場合は、わざわざXAMLを指定する必要はなくて、-pというオプションを使えば名前を指定するだけで実行できます!(pはプロセスのp)

C:\Users\naoki.oshiumi>C:\Users\naoki.oshiumi\AppData\Local\UiPath\app-19.8.0\UiRobot.exe execute -p "しりとりロボット"


他にも...

ヘルプを実行したらこの結果がでてきました。

先程申し上げたように-pでプロセス名を指定するだけで実行できます。

-fで「実行したいxamlファイル」もしくは「project.json」までのパスを指定したら実行できます。

--inputで入力引数を指定できるみたいです(JSONのフォーマットで)

--folderでオーケストレーターのフォルダーIDを指定できるみたいです。

image.png


おわりに

僕は、UiPathが公式で提供しているワークフロー品質検査ロボットを実行するバッチファイルを作成して、そこに「Ctrl+Shift+C」のショートカットキーを割り当てて、超簡単にロボットを立ち上げられるようにしてます。

普段はあまりコマンドでロボットを実行するとはないかと思いますが、もし必要になったときに参考にしてください!