Help us understand the problem. What is going on with this article?

UiPath Orchestratorでパッケージとライブラリを管理・利用する

初めて記事を書きます。

2020年5月15日 UiPath Friends 東京 Orchestrator ハンズオン勉強会 パート2
https://qiita.com/masatomix/items/cb9c265f1d8010bed50b
に参加させていただき、たくさんの刺激を受けました。

こういった場で学んだ知識はどこかに残していくべきだと思い、他の方たちと同様、Qiita上で記事を書くことにしました。
また、職場のメンバーの人材育成やUiPathに関する知識の継承をどのように行っていくべきか常日頃悩んでいたのですが、インターネット上に書いておくと情報はなくならないな、と思ったこともきっかけの一つです。
Qiitaの記事を、このまま、研修や引継ぎに利用していけるように意識して書いてみました。

なお、私はUiPathアカデミー上級コースは修了済ですが、UiPath開発経験は皆無と言っていいです。(2020年5月16日現在)
間違っている部分もあるかもしれませんので、皆様、大目にみてください。。。

以下の記事は、RPAの大規模展開を見据えたときに、RPA開発・保守の効率性が最も大切だと私なりに考え、情報収集した結果や様々な方に教えていただいた内容を整理したものとなります。

それでは、「パッケージ(プロセス)」と「ライブラリ」をOrchestratorで管理し、利用していく方法について、解説していきます。

1.はじめに

1.1「プロセス」とは

  • 自動化する業務ごとに作成します。(Robotに実行させたいジョブの単位に作成)
  • 「プロセス」を作成した場合、Main.xamlが内包されたフォルダが作成されます。
  • Orchestratorへパブリッシュすると、「パッケージ」として管理されます。

1.2「ライブラリ」とは

  • UiPath Studioにて複数の「プロセス」を作成する際、例えば「システムへのログイン」などの工程に関する各種アクティビティ("クリック"や"文字を入力"など)を毎回設定していては開発に時間がかかります。また、xamlファイル単位に行う単体テストも毎回行う必要があります。
  • これらを省力化するために「ライブラリ」を作成し、各ワークフローにて「共通部品」として使用(Studio内でアクティビティとして使用)できます。
  • 「ライブラリ」を作成した場合、NewActivity.xamlが内包されたフォルダが作成されます。
  • Orchestratorへパブリッシュすると、「ライブラリ」として管理されます。

2.Studioで「プロセス」を作成⇒Orchestratorへパブリッシュ⇒Robotでジョブを実行

2.1「プロセス」を作成

image.png
image.png

↓作成されたフォルダ
image.png

↓フォルダ内の状態
image.png

2.2 ワークフローを作成し、パブリッシュする

image.png
image.png
image.png
image.png

2.3 Orchestratorを確認し、「プロセス」を追加する

↓「パッケージ」としてOrchestratorにアップロードされた状態
image.png
image.png

↓この時点におけるRobotの状態
image.png

↓「プロセス」を登録
image.png
image.png
image.png

↓「プロセス」登録後のRobotの状態
image.png
image.png

3.Studioで「ライブラリ」を作成⇒Orchestratorへパブリッシュ⇒Studioで共通部品として利用

【注意】Community Editionの場合は、以下のとおりOrchestratorの設定変更を事前に行ってください。また、StudioのインストールされているPCを一度再起動しておいてください。

Orchestratorの設定変更
image.png

image.png
image.png

↑事前設定はここまで

image.png
image.png

↓作成されたフォルダ
image.png

↓フォルダ内の状態
image.png

3.1 名前を変更する

image.png
image.png

3.2 ワークフローを作成し、パブリッシュする

UiPathアカデミーからダウンロードできる「UiDemo.exe」へログインする共通部品を作成してみます。

↓UiDemoログイン画面(UsernameとPasswordを入力してLog Inをクリック)
image.png

↓ワークフローの作成
image.png
image.png
image.png
image.png
image.png
image.png

3.3 Orchestratorを確認し、Studioでパッケージ管理する(取り込む)

image.png
image.png

↓ 2章で作成した「XXX申請書入力業務」のプロセスでこのライブラリを使用する
image.png
image.png
image.png
image.png
image.png
image.png

3.4 ログアウトの共通部品も作成し、アクティビティとして利用してみる

「UiDemo.exe」からログアウトする共通部品も作成してみます。

↓UiDemoログアウト画面(Exitをクリック)
image.png

↓ワークフローの作成
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png

これで、ログインからログアウトまでの一連の動作を自動化することができました。

4. Orchestratorからパッケージをダウンロードし、Studioで再利用する

【注意】以下に記載する方法については「プロセス」(パッケージ)のみが対象です。
(「ライブラリ」(アクティビティ化したもの)はパブリッシュ時にxaml形式からdll形式に変換されているため、Studioでは再利用できません。)

image.png
image.png
image.png
image.png
image.png

5. 最後に

いかがでしたでしょうか。
バージョン管理ができ、また、共通部品をアクティビティとして利用できるのはOrchestratorの魅力的な部分だと思います。
RPAを大規模で展開していく場合、フォルダ上で「プロセス」や「共通部品」のバージョンを管理していくのはいずれ限界が来ると思います。Orchestratorは積極的に利用していくべきですね。
それにしても4章の注意事項にも記載していますが、一度パブリッシュした「ライブラリ」についてxaml形式に復元ができないのは、少し残念です。共通部品はフォルダ管理を続けていくしかなさそうです。
(xamlのままパブリッシュする方法も選択できればいいのですが。。。)

【2020年5月17日追記】
「共通部品はフォルダ管理を続けていくしかない」と記載しましたが、Gitなどを用いることで正しく管理できることを知りました。
(当方、プログラミング経験もシステム開発経験もありませんので、Gitというものを利用することで管理できることを知りませんでした。コメントをいただきありがとうございます。)
一元管理、という意味で、OrchestratorでもGitのような開発ファイルのバージョン管理機能があればいいな、と改めて感じました。

masaru9624
職場でAI-OCR、RPA等の導入推進をしています。 デジタルトランスフォーメーション、BPRといった言葉が好物です。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした