UiPath Orchestrator Community Edition へのサインアップからHelloWorldまで。(UiPath Friends 東京 Orchestratorハンズオン勉強会向け資料)

こんにちは！UiPath Friendsコミュニティ運営メンバの @masatomix です。この記事は 2019/12/5(木)に開催予定の、[UiPath Friends 東京 Orchestratorハンズオン勉強会](https://uipath-friends.doorkeeper.jp/events/100587) 向けの資料です。

>半年ほど前に、[UiPath Studio/Robot/UiPath Orchestrator CEを用いた運用環境の構築手順のご紹介](https://qiita.com/masatomix/items/9c134ad77c64ae034cdc) という記事を書いたのですが、今回の勉強会向けに、UiPath Orchestrator 2019用に改訂しました。


さて、具体的には下記のハンズオンを行います。

- UiPath Orchestrator の機能概要ご紹介
- UiPath Orchestrator Community Edition へのサインアップ
- そのOrchestratorを使った、UiPath Studio/Robotのライセンスのアクティベーション
- UiPath StudioからのPublishと、Publishしたワークフローの実行


## 対象の方

- 会社で UiPath Orchestrator(以下OC)を導入するみたいなんだけど、ヒトに構築をお願いするにも**ひととおりはさわっておかなくちゃなー**、って方。
- UiPathはソコソコ使ってるけど、StudioやRobotを**Orchestratorとともに使うのってどうやるのかな？？**って方
- **UiPath Love**な方

などなどです。

## 前提事項

- ご自身でPCの操作をしたい場合は、ご自身のWindowsPCをご準備ください。
- 管理者権限のユーザでログインできるようにしてください。
- あらかじめUiPath Studioをインストールしておくと、ハンズオンをスムーズに進められます。
- 勉強会資料は2018.4.5で疎通確認してありますが、それより新しいバージョンであれば問題ないかと思います
- OCを利用するためのEmailアドレスをご準備ください(当日サインアップも行いますが、すでにサインアップ済みでも問題ありません)
- こちらで複数人で共有いただく「共有PC」も会場に設置していますが、2019.xバージョンのUiPath Studioがインストールされているため、画面イメージが本資料と異なることがありますが、ご了承ください。


## 1.UiPath Orchestrator の機能概要ご紹介

まずは UiPath Orchestratorの構成のご紹介から。

### システム構成
![pys.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/5c53aed7-25d6-9b35-2546-8a0312ff7104.png)


[いろいろなUiPath構成(Studio単体からOrchestratorまで)を速攻解説](https://qiita.com/masatomix/items/a1ce4f5a92d17c4208ae#%E6%A7%8B%E6%88%903-orchestrator%E3%81%A7%E7%B5%B1%E5%88%B6%E3%81%99%E3%82%8B) でOrchestratorの構成要素をご紹介しましたが、図のように**UiPath StudioやRobot(Attended/Unattended Robot)をUiPath Orchestratorに接続する**ことで、

- リリース(配布)する「ワークフロー(xaml/nupkg)」の管理
- 「ワークフロー」を実行するPCの管理
- 「ワークフロー」のリモート実行、スケジュール実行
- 他システム連携
- StudioとRobotのライセンスの管理
- カスタムアクティビティの管理

などを行うことが出来ます。

### OCの構成要素

これらを実現するために、OCは以下の構成要素をもっています。

- マシン
- ロボット
- ロボットグループ
- パッケージ
- プロセス
- ジョブ
- トリガー(2018版までのスケジュールのこと)

その他の構成要素は以下の通り(今回のハンズオンでは対象外)。

- ロール
- キュー 
- アセット
- タスク(新機能)
- フォルダー(新機能ぽい)
- Webhook


### 論理構成

これらOCの構成要素を論理構成として図示するとこんな感じです。

![logi.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/293f5957-ea4d-0c10-644c-d3c4516ad6d1.png)

では各機能の概要をご説明します。

### マシン

**いわゆるPCに対応**しています。「マシンキー」という**各PCがOCに接続するためのキー値を管理**します。

![i01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/7842c69a-c98a-d430-0a83-4e537b31fb2f.png)
マシンキーを管理
![i02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/0ec9acf4-51b1-c24e-9e43-9b94b81bfb18.png)


### ロボット/ロボットグループ

ロボットは**「マシン」に「Windowsアカウント」をあわせたモノ**です。ライセンスのカウントの単位にもなる**いわゆる「ロボット」**です。
![i03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/8319bad0-4e1f-b805-08e3-ab2f1da776c5.png)
マシンにWindowsアカウントを紐付けている図。**ライセンスの種類(Studio/Attended/Unattended など)**もココで設定
![i04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/b416edcf-ab18-4fbe-71e5-912c8adbb64e.png)

ロボットグループは、文字どおりロボットのグルーピングです。**ロボットへのワークフロー(xaml/nupkgのこと)の配布はこのロボットグループ単位**になりますので、実運用時は「何の単位でロボットグループを作成するか」はとても**重要な検討事項**となります。
![i41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/99c676e8-2df3-168e-7a63-a9a678464985.png)
あるグループに、あるロボットを属させている図
![i42.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/f3319f47-c311-f6de-d8ae-3850989cd222.png)


### パッケージ/プロセス

パッケージはいわゆる**ワークフロー**のことです。UiPath Studioから**Publishされたワークフローがココで管理**されます。
![i05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/0580b387-20b9-0ae5-a6d2-20b528c65cdb.png)
Publishされた**ワークフローは、バージョンを複数もつ**事ができます。
![i06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/8e80fdc6-b316-34b6-8ace-9d0041825def.png)

つづいて**プロセスは、パッケージとロボットグループの組み合わせ**です。Publishされたパッケージのうち、**どのパッケージをどのロボットグループに配布するか**を決める、リリース統制をつかさどる重要な機能です。またパッケージは複数バージョンを持つので、**どのバージョンを配布するか**もあわせて管理します。
![i07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/87d09d39-c9fd-fdff-0d35-35b94339da18.png)

### ジョブ

ジョブは**ワークフローを実際にリモート実行するための機能**です。
![i08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/93f89e77-6611-6ec3-d344-e07f70a84fa5.png)
ジョブ作成画面。**あるプロセスを、ロボットグループのなかの具体的にどのロボットで実行するかを指定**しています。
![i09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/c9ee71bc-a333-61ee-9fa1-ee2289daf352.png)
実行結果なども記録されます。
![i10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/275110ad-cb24-6c57-41bb-ffad3d5b2bf4.png)

### トリガー(スケジュール)

スケジュール機能です。**プロセスを実行サイクルとともにスケジューラに登録する**ことで、スケジュール実行することができます。2019.x版から「キュー」にアイテムを入れることをトリガーにプロセス実行出来るようになったみたいですね。
![i11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/4280cfe2-3401-54af-db24-6d9898cb6b5f.png)


概要の説明は以上です。


## 2.UiPath Orchestrator Community Edition へのサインアップ

>記事の途中で「共有PC」「こちらで用意したアドレス」などが出てきますが、あらかじめこちらで準備しておいたPCやE-mailアドレスのことだと読み替えてください。


### サインアップ

ご用意されたPCや共有PCに、Windowsアカウントでログインしておいてください。(Windowsアカウントとパスワードはあとで使用しますので、控えておきましょう)

さて、さっそくサインアップから。
https://platform.uipath.com へアクセスします。下記の画面で「登録」をクリック。
![f01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/d7f12921-4237-b5ac-bcbb-66edcb5a3666.png)

「メールアドレスで登録」をクリック
![f02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/a6c20cf5-3939-fdd0-bea4-0a14772c2a99.png)


下記の画面で必要事項を入力します。**個別にPCをご準備された方は、ご自身でご用意したアドレスをお使いください**。共有PCではこちらで用意したアドレスをお伝えしますので、そちらをご利用ください。
![f03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/c49bd728-d571-9668-f3ed-9d40201b9176.png)


組織名・姓・名などはなんでもよいかと。さいごに「登録」をクリックします。
![f04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/e0ee1a5a-b52d-dd99-5f86-b17dc57d7ce1.png)

メールの確認待ちになりました。
![f05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/e142fa4b-d184-00ee-04c6-4cf4cd348cdb.png)

### メール確認
下記のような E-mailが来ているはずなので、**メールの「メールアドレスを確認」をクリックすることで本人確認**が完了します。
こちらで用意したアドレスについてはこちらで順次確認の作業をいたします。

![f06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/c2da33f2-7357-53d6-bed8-87f5a1122696.png)

サインアップは完了です。

### ログインしてみる

さてログインしてみます。サインアップ完了画面で**「こちらをクリックしてください」を選ぶ**か、もしくは初めの **https://platform.uipath.com で、Email/Passwordを使ってログイン**します。

サインアップ完了画面、もしくは
![f07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/08d42146-863b-0ce4-de04-164de571c00a.png)

ログイン画面から。
![f07_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/d1b6ce47-f35a-7ae0-3c52-f755ee383b69.png)


トップページ(Services画面)が表示されました！わかりやすいように、左下のプルダウンより、日本語表記に変更しておきます。
![f09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/da42959c-e621-c06a-e496-81e9f35a385c.png)


変更されました。
さて、サービス画面から、ひとつのサービス(画面キャプチャ上「kinoorgDefault」に表示されているモノ)をクリックします。
![f10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/3cafdf37-e821-5f43-467b-13cfdaec0fe7.png)


UiPath Orchestratorのダッシュボード画面が表示されました。
![f11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/ec1e11e0-b371-fbdc-1b84-56ee167a0162.png)


以上で**自由に利用出来るUiPath Orchestratorが手に入りました**。共有PCをお使いの方は、後日ご自身のE-mailアドレスでやってみるのもよいかと思います。


以後「Orchestratorにログインする」と書いたときはこのダッシュボードを表示することだと思ってください。


## 3.Orchestrator からのライセンスのアクティベーション

さて、すでに共有PCにはUiPath Studioがインストール済みなので、あとはアクティベーションです。
アクティベーションは、

1. Community Edition としてオンラインでアクティベーション
1. UiPath社から購入したライセンスキーで、スタンドアロンでアクティベーション
1. 自前のOCとか、OCのCommunity Editionからライセンスをもらう形でアクティベーション

というやり方がありますが、せっかくなので今回は**3の「OCのCommunity Editionでアクティベーション」**してみます。

これは **UiPath StudioやRobotを利用するPCをあらかじめOCに登録しておく**ことで、ライセンスをOCに管理してもらう仕組みです。

### マシン名を確認

スタートメニューから「UiPath Robot」を起動すると、タスクトレイにロボットが常駐します。OCに接続していないとアイコンは「白」です。
右クリックから「設定...」を選択。

![2_01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/61011341-d3a0-b3e7-47b9-d89d6806b880.png)

下記の通りダイアログが表示されるとおもいます。あ、ちなみに**このダイアログを表示するにはWindowsの管理者権限が必要**ですのでご注意。

![2_02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/27af7cc2-c580-78f1-0352-1e4a8ed4f431.png)

マシン名(↑このキャプチャ上の「PBPC0124」のことです。**適宜ご自身の環境に読み替えて**ください。)を使用しますので**コピペなどしてメモって**おきましょう。


### Orchestrator上でマシンを登録してマシンキーを取得

Orchestrator にログインし「マシン」画面に遷移。右肩のプラスをクリックして「標準マシン」を選択して新しいマシンを登録します。

![2_03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/b43f28c8-1a6d-e73c-01c8-a7bbc328db55.png)

マシン名は先ほどメモっておいたご自身のマシン名(キャプチャ上は「PBPC0124」)を指定します。最後に「プロビジョニング」をクリック。
![2_04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/fe27041d-4c67-53e2-f5cb-94de10691fe7.png)

マシンが登録されたようです。マシンに割り当てられたマシンキーを確認するため、一覧上の 右端の点々のボタン >> 編集 をクリックします。
![2_05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/21a912d7-1283-d686-aa72-7ef57d4cb6fc.png)

マシンキーが確認出来ます。右のボタンでクリップボードにコピーするなどして控えておきましょう。
![2_06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/a0bbe30c-1304-d679-a8bd-480dd43cac84.png)


### Orchestrator上でロボットを作成

つづいて**ログインしているWindowsアカウントにUiPath Studioのライセンスを割り当てるため**に、OC上にロボットを作成します。

OCのロボット画面を表示し、右肩のプラスをクリックして「標準ロボット」を選択します。
![2_07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/32e362b2-55a8-8f1f-7d7f-e366fc3f029a.png)


マシン名はプルダウンになっているので各自のマシン名を指定します。
![2_08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/dd57727c-347c-9d3f-5ebb-cd8bc5c8dc02.png)

**名前は任意なので、とりあえず「マシン名_ROBO」**(キャプチャでは「PBPC0124_ROBO」) としました。
**タイプは「Studio」を指定**します[^1]。Studio以外を指定した場合はUiPath Studioが起動出来ないなど、ライセンスの種類による制御が行われています。
ドメイン\ユーザ名は、ドメインユーザを使用する場合は**今ログインしている(Windowsの)「ドメイン名\ユーザ名」**としてください。ローカルアカウントであれば「ユーザ名」を指定してください。
パスワードはUnattendedロボを利用するときに使用するんですが、とりあえず入れておきましょう。

[^1]: (かつてはDevelopmentと表示されていましたがわかりやすくなりました!) 

入力したら 「作成」 をクリック。
![2_09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/4ed3db54-0f2a-174f-b555-02930cd86ee5.png)

作成できたようですね！
![2_10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/fa1c397f-25b4-8294-88b9-86f373007500.png)


### PC上で、マシンキーを使ってOCへ接続し、アクティベーションしてもらう

ふたたびPC上で、右クリックから「設定...」を選択。

![2_01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/61011341-d3a0-b3e7-47b9-d89d6806b880.png)

ダイアログが表示されるとおもいます。

またスタートメニューから、UiPath Studioを起動しておきます。**アクティベーションされていない状態だと、おなじみの「アクティベーションしてね」画面が表示**されると思います。

マシン名が先ほどOCに登録したマシン名と一致していることを確認しつつ、
**OrchestratorのURL**と、**先ほどメモっておいたマシンキーを入力**し「接続」をクリックします。

>2019/12現在のOrchestrator Community Edition だと **URLは https://platform.uipath.com/[AccountLogicalName]/[ServiceName]/** となるようです。ん？？って感じですが、ようするに**今表示しているOCのURLとなる**っぽい。キャプチャの例だとhttps://platform.uipath.com/kinooqmollho/kinoorgDefault/ です。**わかりにくいです**ね。(昔はhttps://platform.uipath.com/ だけでわかりやすかった)


参考:[Orchestrator へのロボットの接続](https://docs.uipath.com/orchestrator/lang-ja/docs/connecting-robots-to-orchestrator)

あらためて、必要事項を入力し「接続」をクリックします。
![2_11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/db1c8e3e-fd44-d2fb-f690-dcb580d7c8a5.png)


接続ボタンが「切断」にかわり、接続できたようですね。下のステータス表示も「接続中、ライセンス済み」となりました。ということで**「Orchestrator からライセンスを取得」**をクリックしてみましょう。**Studioのアクティベーションができた**かとおもいます。
![2_12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/13ad3ebd-8e2e-8544-a315-77b9f8720de5.png)

ヘルプを見てみると、ライセンスのプロバイダーが「Orchestrator」になっていますね。。
![2_13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/5368702a-0736-86cb-9e0c-68f01b70e2e0.png)

またタスクトレイのアイコンも、OCへの接続を意味するアイコンが「青」になっています[^2]。
![2_14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/45dc6478-c38b-4cf8-00e9-5db2dfb560b0.png)

[^2]: この色を見ると安心します。コーポレートカラーはこの色の方が好きでした。。

OCの画面上でもライセンスを確認してみましょう。右肩のアイコンをクリックして「ライセンス」を選択します。
![2_15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/74586cbd-8c07-5c96-b31b-7369b0ef95ee.png)

Studioのライセンスをひとつ消費していることがわかります。
![2_16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/ef5557bd-e748-fcd7-8c54-cd8350c456fd.png)

以上で、**OCのCommunity Editionからライセンスをもらう形でアクティベーションする**ことができました！

## 4.UiPath StudioからのPublishと、Publishしたワークフローの実行

では、UiPath Studioで作成したワークフローをOC経由で配布して実行するまでをやりましょう。


### 事前準備。ロボットグループの作成

これから作成するワークフローを紐付けるためのロボットグループの作成です。右肩のプラスボタンをクリック。
![g001.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/ca2a65fd-9417-0900-68dc-03de1ed5b81e.png)

グループ名は「GROUP01」としました。
![g002.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/df9874ae-965a-8b02-17a9-81eed542c161.png)

このロボットグループに属させるロボットを指定します。ロボットは複数指定出来ますが、各自のロボットを指定してください。最後に「更新」をクリック。
![g003.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/9e3bbe49-6754-249f-cdf9-afe59de8bb47.png)

グループの作成が完了しました。
![g004.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/a9e28af7-540a-0986-7b25-dddd12a0a3c3.png)


### Studioでワークフローの作成

UiPath Studioを起動し、ワークフローを作成します。名前はなんでもよいですがココでは「HelloUiPathFriends20191205」としました。
![s01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/8ec0eba5-9c9a-9b12-a383-3c9f6e9c7586.png)

ワークフローはなんでもよいので、とりあえずMessageboxを出すようにしておきます。一応実行しておくと、
![s02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/c21dd6de-00d0-718e-575a-a1bfb9c1236f.png)

よさそうですね。
![s03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/52c82e35-1227-fbe3-2408-4498034922df.png)


### StudioからのPublish

さて StudioからOCへPublishしていきましょう。右上の「パブリッシュ」をクリックします。
![s04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/fdf40aea-7abe-442b-5c3c-921ca015f357.png)
UiPath StudioがOCに繋がっていないときは、ローカルにnupkgが出力されていましたが、OC接続時は**パブリッシュ先にOCを指定**できるので、そのようにして、ついでにバージョンも確認しつつ「パブリッシュ」をクリックします。
![s05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/9cbb34ef-4f8a-b233-bb35-d29168946d6c.png)

正常にパブリッシュ出来たようですね！
![s06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/e6eebb21-c592-3bc4-0ce5-6a4f3e51a409.png)

(OCに未接続の状態で)ローカルにnupkgを出力した場合、このままワークフローを実行可能だったと思いますが、**OCにパブリッシュした場合はすぐにはワークフローは利用可能にならないことに注意**して、次に進みます。
![s07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/b234534f-e918-8687-5238-53b6b9989f6d.png)


### OC画面でのリリース作業

さて、各ロボットでワークフローを実行できるようにするため、リリース作業を行います。リリース作業とは**Publishされたワークフローとロボットグループを紐付けること**です。概要で説明したとおり、**プロセスを作成することで、そのロボットグループに属しているロボットは該当するワークフローを実行できるようになる**ということですね。

まずはパッケージ画面で、さきほどPublishしたワークフローを確認しておきます。確かにありそうです。
![s08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/5b89ea00-4a8b-e7e6-5e62-0302ffa3c335.png)

念のためバージョンも確認します。たしかに先ほどStudioで確認したバージョン「1.0.7276.19589」が表示されています。
![s09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/34b519f8-bf55-c15a-180e-ce693fdbf60a.png)

パッケージの確認はココまで。つづいてプロセス画面にうつります。プロセスは**「ロボットグループとパッケージ(とバージョン)の組み合わせ」**のことでした。

プロセスはまだ作成していないので空です。右上のプラスボタンからプロセスを作成します。
![s10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/8fd7e635-dece-dca9-83cb-0b3301d16ce6.png)

プロセスは「ロボットグループとパッケージ(とバージョン)の組み合わせ」なので、「パッケージ」「パッケージのバージョン」「ロボットグループ」を選択していきます。
パッケージにさきほどの「HelloUiPathFriends20191205」を選択。
![s11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/842d8696-ef86-2a74-aa13-3b7eda4c2b57.png)

バージョンは「1.0.7276.19589」、そのワークフローを動かしてよいロボットグループに「GROUP01」を指定し、「作成」をクリック。
![s12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/8492619a-ab27-243b-23fa-8ff6828daaab.png)

プロセスの作成が完了しました。
![s13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/4b49c5c3-9cc6-dad0-3e3e-89d8d70abb7f.png)


### ロボットからの実行

**業務利用する場合は、StudioのライセンスではなくAttended/UnattendedなRoboのライセンスを使う必要がある**のですが、今回はテストってことでStudioライセンスのまま実行します。


タスクトレイからロボットをみてみると、先ほどのワークフローが表示されていますね。**まだ配布が行われていないので「更新」のアイコンでワークフローをダウンロード**します。
![s14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/2eaed11e-6383-cfee-b605-e04e455fa056.png)

ダウンロードが完了すると実行可能なアイコンになりますので「開始」をクリックします。
![s15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/714e1c08-2a97-8ac3-acc4-ef2772aa618f.png)

ジョブが実行開始されたようですね、、、しばらくすると
![s16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/45c8b2b0-fed2-c1b5-3b8e-071fb6257585.png)

ワークフローを実行することができました。
![s17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/d23ec2d9-32c2-b1db-0977-a792637e06e0.png)


以上で、StudioからPublishしたワークフローを、OCで配布することでロボット上で実行することが出来ました。今回はUiPath Studioと実行環境であるRobotが同じPC上でしたが、**OCを経由することで別のPCにもワークフローの配布が容易にできる**ことがわかりました。


## つづき1:ワークフローの更新と再配布

つづいてStudioでワークフローを更新したとき、それらがどのように各PCへ再配布されるかをみてみましょう。

### ワークフローの更新

Studioでワークフローを更新して(Hello....1205_01 → Hello....1205_02 ) 、再びパブリッシュをクリック。
![v01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/0f28da0d-5c4e-27ac-4c50-435eb821beed.png)
バージョンが新しくなってることを確認して(「1.0.7276.19589」→「1.0.7276.24770」)、パブリッシュをクリックします。
![v02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/1388549a-bd1a-3dcc-b575-4195abf0a821.png)
パブリッシュが完了しました。
![v03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/35f6ac3b-92d8-c6fa-3369-896735c06e5d.png)

この時点では**新バージョンの配布は行われていないので、OC上でバージョンアップ作業**を行います。


### OC画面でのバージョンアップ

OCのパッケージの画面をみてみます。あたらしいバージョン「1.0.7276.24770」のワークフローがアップロードされていることがわかります。
またそちらのバージョンは「非アクティブ」になっていますね。**どのプロセスからも使用されていない**ということを意味しています。
![v04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/d09d63ab-60b9-22ab-cf5f-0318e359d8bf.png)

つづいてプロセスの画面です。ダウンロードっぽいアイコンで**「あたらしいバージョンのワークフローがあるよ」**と知らせてくれています。
![v05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/f010be1a-4b55-7700-278d-780ce14f71a1.png)

さて該当行の、右部のメニュー >> プロセスの表示 を選択して、**バージョンを選択する画面**を開きます。
![v06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/8b848e90-489e-3b6a-2504-555a9ca71142.png)

開きました。**このプロセスが使用しているバージョンには「使用中」**と出ています。まだ古いバージョン「1.0.7276.19589」が使用されているとのことなので、あたらしい「1.0.7276.24770」の「使う」アイコンをクリックします。
![v07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/fa8fcb93-33bb-a481-2613-57bd12913297.png)
「HelloUiPathFriends20191205_GROUP01」という**プロセスが使用するパッケージをバージョンアップしちゃうよ？と聞かれる**ので「はい」を選択。
![v08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/194af190-cfab-c451-e52e-f02a8ada7894.png)
使用中のアイコンが表示されているバージョンが変わり、**バージョンアップが完了**しました。
![v09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/22360917-831c-624e-75bd-eb0fc660cb6e.png)


### ロボットからの実行

さて、PC上のロボットを見てみます。OC上でワークフローがバージョンアップされたことをあらわす「更新」アイコンになっているので、クリックしてダウンロードします。
![v10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/7261db71-0aa1-04b3-0ee9-842fed89d740.png)
**新しいバージョンにバージョンアップされた**ようです。実行してみると、、、
![v11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/147af0d8-e9a4-9dc3-e8cb-2ca5148ece96.png)

あたらしいワークフローが実行されたことが確認出来ました。
![v12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/871bcde8-2a7f-3b3d-0701-701b4eb1b6f4.png)


## つづき2:Unattended Robotでの実行

さいごに、ジョブ機能をつかって**ワークフローをリモート実行**してみます。

### ライセンスをStudio → Unattendedへ変更

**リモート実行はRobotのライセンスがUnattendedである必要がある**ので、ライセンスを変更します。
OC画面の 管理>>ロボット画面(監視のほうではないので注意)で、該当ロボットの右メニュー >> 編集 を選択します。
![u01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/e802b4e7-2d02-c4a1-f9ae-d0b732496830.png)

ライセンスのタイプが「Studio」になっているので、プルダウンを選択して、
![u02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/fb39689a-e700-ab8e-6c5f-46f18aa2412e.png)
Unattended に変更します。
![u03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/ae541a40-4853-165c-6260-ff5d49cb2e8c.png)
反映されました。
![u03_.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/7264b148-aacd-d6ee-b876-cedcec1e4b53.png)


### Unattended Robotで実行

さて、リモート実行です。ジョブ画面を表示して、右肩のボタンをクリック。
![u04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/9a660014-5b78-dbe6-c916-409cc2241594.png)

プロセスを選択して、実行するロボットを選択し「開始」をクリックします。すると、、指定したロボットで、、、
![u05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/0c4ed8ba-0b35-4ca3-da6a-5a55e4713131.png)

ワークフローが実行されました。
![u06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/73777/a25945af-2066-8e87-3c54-930e8c69a232.png)


今回のハンズオンでは「WEB画面を操作するPC」と「ワークフローを実行するPC」が同じなので、あまりリモート実行された臨場感がないのですが、実際は**「ワークフローを実行するロボット」はWindowsが起動しているだけでよく(ログインしている必要すらない)、他のPCからOC画面を操作して、ワークフローを実行することが可能**です。

## つづき3:スケジュール実行

OCのトリガー画面より実施します。。「プロセス」と「実行するRobot」と「スケジュール間隔」を指定しますが、詳細は勉強会にて。


## まとめ

今回の勉強会で、UiPath Orchestratorの基本をハンズオンしましたが、いかがでしたでしょうか？UiPath Orchestratorにはほかにも様々な機能がありますが、それらについてはニーズに応じて「第二回ハンズオン」を開催していきたいと思います。また、今回のハンズオンも多数の方がキャンセル待ちとなってしまいましたので「第一回ハンズオン」の二回目なども検討したいです。などなど、ご要望については、アンケートに書いてくださると幸いです。


## 謝辞
今回の件でご協力いただいた UiPath Friendsの運営メンバーの方、またUiPathの中の方々、またもちろん、参加してくださった方々に感謝いたします。Orchestratorまわりを盛り上げていければとおもいますので、みなさま今後ともよろしくお願いします。


以上、おつかれさまでしたー。。。


## 関連リンク

- [UiPath Friends 東京 Orchestratorハンズオン勉強会](https://uipath-friends.doorkeeper.jp/events/100587) 
- [UiPath Orchestrator Community Edition](https://platform.uipath.com/)
- [その他いろいろ備忘的な記事](https://qiita.com/search?q=user%3Amasatomix+tag%3Auipath&sort=created)