UiPath Orchestratorメモ

##Orchestratorにパブリッシュしたプロセスのロールバック（任意のバージョンに変更）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/be7cfdd7-a2f0-22d9-b6a2-cf7aa6a94b8b.png)
プロセスを表示を押下
![test.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/d7d12327-8808-c797-91a7-3b9a67f1203c.png)
赤丸部押下で１つ前のバージョンにロールバックされます。
黄丸部押下で任意のバージョンにロールバックされます。


##Orchestratorの基本
UiPath Academyの`UiPath Orchestratorコース`を受講したらええと思います。

###
###ライセンス表示
ライセンスボタン押下
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/e573c19e-3beb-19aa-70cd-d29e6dff7468.png)
ライセンス確認できる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/36f389ac-d803-9794-bede-80b7aa63adcc.png)
###ダッシュボード
ロゴ押下
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/542f90c5-aedc-0197-ad41-0c94c0324ba8.png)
OCに登録されたロボットのステータス
開始済みのジョブ
トランザクションステータスの変化状況
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/a1fcb376-1e2f-290b-6555-10087083bdbe.png)

###マシンのプロビジョン
**PC**を**OC**に登録すること
*注）provision [名] 供給・支給・ストック・貯蔵品　
###ロボットの作成（登録）
**ロボット**を**OC**に登録すること
作成より登録の方が分かりやすいのに。。。
###ロボットとPCの紐づけ
```
OC上で登録したPCとロボットを紐づける
PCとロボットは１対１
１台のPCにロボットを複数登録できない
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/a35799dd-edc0-14b3-f545-cc4c7b03b15f.png)


###プロセスとジョブ

```:プロセスとジョブ
『プロセス』・・・指定の『ロボットグループ』によって指定の『パッケージ』を実行可能な状態を定義するエンティティ。
『ジョブ』・・・１つのロボットによる『プロセス』の実行を表すエンティティ。
『プロセスを作る』行為・・・「プロセスをデプロイする」という。（パッケージとロボットGを紐づける行為）

*注）deploy [動]配置する、展開する
```
### プロセス
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/519613ac-31fe-4a81-8af8-a324e71ea1db.png)
### ジョブ

```:ジョブとは
『ジョブ』・・・１つのロボットによる『プロセス』の実行を表すエンティティ。

##ジョブの実行
・スケジュール自動実行
・[ジョブ]ページから手動実行
・[ロボットトレイ]から手動実行
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/7889254c-a4fb-cdbf-ecb1-2fdd38d38753.png)



###ジョブの停止

```:ジョブの停止
#
#概要

#
#停止の方法
・[強制終了 (Kill)]
・[停止 (Stop)]：[停止すべきか確認 (Should Stop)] がワークフローに配置されていない場合は、Orchetratorからジョブを停止することができません
```

```:スケジュール
・有効、無効、削除を簡単に切り替えられる
・一定時間経過後にジョブ停止
・指定日時でトリガーを無効
```

###パッケージ

```:パッケージ
OCにアップロードしたパッケージはダウンロード可能
パッケージアップロード方法は２つ
・手動
・

```

###入出力パラメータの活用方法

```:入出力パラメータの活用方法
・入出力パラメータとは・・・Main.xamlの[引数]パネルで使うパラメータのこと
・ARは、入出力パラメータを使えない。ワークフロー内でインタラクティブするしかない。
・UARは、Main.xamlの[引数]パネルで準備しておく。
#
#パラメータ設定方法
[プロセス]で設定
[ジョブ]で設定
[スケジュール実行]で設定

#
#パラメータの優先順位
[ジョブ]
[プロセス]
[UiPath Studio]
```

###ログ・アラートの拡張
```:
#
#概要
・ログレベルを設定すると、レベル以上のログしか出力されない

#
#設定方法
[OC]の[ロボット]画面の[設定]タブでログレベルの設定：設定以上のログしか出ない
[ロボットトレイ]の[設定]ボタンでログレベルの設定：

#
#優先順位
[OC]の[ロボット]画面の[設定] が優先。 [ロボットトレイ]の[設定]は優先されない。

```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/a0ea5079-5fd1-bb20-5bab-40007e43988f.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/b8f3a463-9550-734d-992e-89a5b4cb41b9.png)

###アセット

```:アセット
[ロボット毎][全ロボット共通]に別の値のアセットを設定できる
[ロボットグループ毎][マシン(PC)毎]にアセットを設定できないみたい

```
###キュー

```:
キューアイテムが[実行中]のまま２４時間経つと[破棄済み]となる
[自動リトライ]が有効の場合、[アプリケーション例外]で処理失敗したキューアイテム＝＞設定分回数分リトライする
[失敗]のキューアイテム　＝＞[レビュー中]に変更できる＝＞
[失敗]のキューアイテム　＝＞[レビュー担当者割当]できる＝＞
[レビュー担当者割当]中
キューアイテムのレビューが終わる＝＞手動で[リトライ] or [検証済み]とする
[検証済み]キューアイテムは[リトライ]できない
```
##Orchestratorのセッティング
Orchestratorからロボットを起動させるのに、各アプリのセッティングにとまどったのでまとめる

今回の使ったのは、以下です。
UiPath Studio v2020.4.3
UiPath Assistant v2020.4.3 
無料のOrchestrator(UiPath Automation Cloud)
`*注意)StudioとAssistantは、普通にインストールすれば同じバージョン`


UiPath Automation Cloudのアカウント取得はここ:[UiPath Automation Cloud](https://www.uipath.com/ja/product/automation-cloud)

###Orchestratorの入り方
UiPath Automation Cloudにログインします。（UiPathのCommunity editionをインストールしたら）
![test1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/11d1c9ee-e170-8bd0-e9b4-8d08f21dcead.png)
赤丸を押下
![test2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/5d8e3baa-0f6f-99af-97a3-6b05163250a0.png)
めでたく、Orchestratorのダッシュボードに切り替わります


###Orchestratorのセッティング
Academy見ながらやったけど、苦労したとこを挙げてきます。
「UiPath Academyの説明動画のOrchestrator画面」と「現行バージョンのOrchestrator画面」がずいぶん違う。
Orchestratorはバンバン、バージョンアップされてます。
数週間使わんかったら、全然違う見栄えになってた。
####やること
Academyを見ると設定するところが多そうでうんざりしそうなんですが
結局、以下２つです。
・ロボットを動かす**PC**を設定
・どんなロボットのを動かすのかロボットに名前を付けて設定
当然のことながら設定するのはOrchestrator画面に対して行います。

####苦労したとこ１：設定を入力する項目ボタン[マシン]の場所が分からん！
Orchestratorのダッシュボード画面で下の赤丸を押下
![test2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/b7d36acd-edf5-5af9-b337-e73b6a948ddf.png)
下の画面に切り替わります
![test4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/779c4e08-7db8-480b-229b-01b19bdce408.png)
めでたく設定を入力する項目が出てきました。
**左から５番目**の青丸部が**「マシン」**を設定するボタンです。
設定項目はコンピュータ名１つだけなので簡単です。
下の絵の赤丸部を押下。
![test1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/9aaf44ce-d7b2-4223-42da-dde25fd52231.png)
下の絵の赤丸部が「標準ロボット」なので、まずはこっちを押下。
![test2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/4558b0b6-6d16-3aee-9558-172f5253159b.png)

####苦労したとこ２：設定を入力する項目ボタン[ロボット]の場所が分からん！
赤丸部を押下
![test3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/c0e5e869-e8bd-4fd9-faac-408d204e0a85.png)
赤丸部を押下
![test4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/07f327e0-e28e-63c7-de29-cacc1d7e20b0.png)
![test5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/17401a19-945f-2e3f-5623-ef920e18fec0.png)
![test6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/315a5cfe-24f2-14d6-83b4-48b1b57341a2.png)
![キャプチャ.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/2d31601c-e48a-6617-3589-1a99d328fc15.png)
`ユーザー名、パスワード`は、**普段端末にログインするときに入力するもの**を設定します。
`タイプ`は、Orchestrator前提なのでまずは**Unattended**で良いかと。。。
attendedも試してみたいとは思ってます。。。
#####ここでやったこと
Orchestratorで動かしたいロボットを片っ端から全部登録します。
登録しないとOrchestratorからどのロボットに指示を出してええのか分からないからです。

####苦労したとこ３：UiPath Assistant側の設定に苦労したとこ。
赤丸部を押下
![test7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/772c3918-116c-c529-1bc3-1685324f963a.png)
赤丸部を押下
![test9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/fa5775b8-87dc-c4b1-a65e-cd8843128510.png)
赤丸部のURLは注意です。ブラウザから直接URLをコピーすると後ろにいらんもん付いてきます。`/Default/orchestrator_`でとめときましょう。
青丸部は先に取ってきたマシンキーをセットします。
URLとマシンキーをセットしたら、緑丸部を押下。
![test10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/564690d4-9656-6eca-5423-ed8b14bd45da.png)
正しくセットできていればめでたく下になります。赤丸部のように`接続済み`になります。
![test11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/8a084112-b6e1-af8d-76e2-9896b3a0421d.png)
####ここでのまとめ
`苦労したとこ１`と`苦労したとこ３`は、何のためにこんな設定してるのか説明しときます。
わけわからんとAcademyのいうがままに設定して動いても、なんかトラブルあったときに対応できないと困りますね。
簡単です。。。作ったシナリオをOrchestratorに送るためです。このPCで作ったシナリオをOrchestratorに送るぞ～～って知らせるためです。

`苦労したとこ１`と`苦労したとこ２`は、何のためにこんな設定してるのか説明しときます。
簡単です。。。Orchestratorに控えているロボットに「お前、あのPCで仕事してこいよ～～」って指示を出すためです。ベンチを温めているサッカー選手を呼び出して、監督がピッチに送り出すイメージでしょうか？

###ロボットをOrchestratorから動かすには
ロボットを動かすには、以下のハンドリングが必要です
・OrchestratorにPCからシナリオを送る
・送られてきたシナリオをロボットに紐づける
####OrchestratorにPCからシナリオを送る
これがないと、Orchestratorはどんな仕事をロボットにさせたらええか分かりません。
まあ、イメージ出来ると思いますが。。。
やり方は簡単です。
UiPath Studioを立ち上げて、赤丸部を押下
![test12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/82910230-5ae5-789f-8dbe-c67c9dedd26b.png)
重要なのは下の赤丸部です。パブリッシュ先を`Orchestrator`に！！右下の`パブリッシュ`を押下。こんだけ。。。
![test13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/4978ff80-7ae5-22f8-eb6c-c4e7329f2232.png)
####OrchestratorでPCから送られてきたシナリオを確認しましょう
Orchestratorに戻ります
赤丸部を押下
![test14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/5eb82ee0-a856-16bd-a111-04bf6a30ee60.png)
赤丸部を押下
![test15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/ca7e89f9-f0f5-3234-ca72-924807139a29.png)
こんな感じにPCから送られてきたシナリオが出てきます。
![test16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/9de198be-1478-6cac-9a23-65c7f921aadd.png)
ちなみに、赤丸部を押下するとプロセスのバージョンを確認できるので便利です。
![test17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/f720af87-af84-0a0b-6a65-53fe741c4e3c.png)
こんな感じでパッケージのバージョンが出てきます。今回はVer.1.0.6だけをOrchestratorに送ったので１つしか出てこないですが。。。
![test18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/cb2b9423-550b-0268-2445-3633ab306a87.png)
青丸部を押下するとシナリオを確認できます。まあ、便利かも。。。
![test19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/52774273-10b6-ef32-46b7-981dea0068d8.png)
こんな感じです。
![test20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/2ed810a4-a6a7-ae83-826d-ecd7db9632fa.png)
####シナリオをロボットに紐づける
赤丸部を押下、次に青丸部を押下
![test21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/b015b652-b2d4-30ae-9405-ba3a929587ce.png)
赤丸部を押下
![test22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/a210ab9c-ba1a-5b78-ac22-5b0de5b3861c.png)
こんな画面が出てきます。赤丸部を押下すると、パッケージを選択するドロップダウンが出ます。選択するだけです。
![test23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/d668afe2-7fc1-b4b1-0e6f-119f3f03cdfd.png)
`パッケージ名`を選択すると`パッケージのバージョン`、`ロボットグループ`も自動で選択されます。
`パッケージのバージョン`、`ロボットグループ`もドロップダウンの選択を別なものにすれば、変更可能です。
![test24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/170d6424-66ad-f5c5-0b4f-ee0ac2bf6284.png)
#####ここまでのまとめ
`シナリオをロボットに紐づける`でやったことは、**プロセスの選択**です。
つまり、プロセスはバージョンを持っているので、**適切なバージョンをロボットに紐づける必要**があります。
例えば、最新バージョンでロボットに仕事をさせたい場合もあれば
はたまた、最新バージョンにバグがあるのでロールバックして下位バージョンで仕事をさせたい場合といった感じです。

####ロボットを動かそう
`ロボットが仕事をすること`を**ジョブ**といいます。（Academyではこんな取り澄ました表現を使います。SEさんの悪癖です。）
なので、Orchestrator上でもジョブといった文言を探します。
赤丸部を押下
![test25.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/a2ea3dfb-9908-e103-3c90-da0047850e8c.png)
赤丸部を押下。ジョブを実行する画面です。ちなみに、青丸部は`実行したジョブの履歴`です。
![test26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/0fb5b754-136b-2770-ee2c-68ba3696e175.png)
赤丸部を押下。
![test27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/25d121bc-f478-8858-3fcf-b8f2cf1e48fa.png)
赤丸部を押下して、実行したいプロセスを選択します。
![test28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/718e8c37-b212-d54e-eeef-8fa0d748f986.png)
赤丸部に実行したいプロセスが出てきたら、ロボットの候補が下に出てきます。
下の例では、青丸部にチェックを入れて、ロボット１を選択しました。
![test29.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/e5a9fece-0d95-8468-24c9-880aa577660f.png)
緑丸部の開始を押下すると、無事にロボットが指定の端末で仕事してくれるはずです！！

##　トランザクション
トランザクション（動詞）とは・・・キューに追加されたデータをロボットが処理すること

```:トランザクションの再試行
[トランザクション]ページで手動で再試行
[自動で再試行]プロパティが有効の場合、再処理可能
```

## マシン

```:マシン
#
#概要
・『マシン』とは・・・標準／テンプレートの２種類
・標準・・・PC固定
・テンプレート・・・PC
```

##　キュー

```:キュー
#
#概要
複数のロボットが処理するデータを保存する

```

## プロセスとジョブ

```:プロセスとジョブ
『プロセス』・・・指定の『ロボットグループ』によって指定の『パッケージ』を実行可能な状態を定義するエンティティ。
『ジョブ』・・・１つのロボットによる『プロセス』の実行を表すエンティティ。

```

```:トリガ
時間トリガ
キュートリガ
```
### プロセス
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/519613ac-31fe-4a81-8af8-a324e71ea1db.png)
### ジョブ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691463/7889254c-a4fb-cdbf-ecb1-2fdd38d38753.png)