2022.06.06
UiPath RPA

【UiPath】よく使う処理の共通化

【UiPath】よく使う処理の共通化

ワークフローを作成していると同じような処理が何度も登場することがありますよね。

UiPathでは、処理のまとまりをグループ化しコピーをすることで再利用できますが、修正が入った場合にはグループひとつひとつを修正する必要があり手間がかかります。

そんなときは「ワークフローファイルを呼び出し」アクティビティを使ってよく使う処理を別のワークフローとして切り出し、共通化して使っていきましょう。

ワークフローファイルを呼び出しとは?

特定の処理のまとまりを別のワークフローとして切り出し、必要がある度にメインのワークフローから呼び出して使うことができるアクテビティです。

メインのシナリオ

呼び出すワークフロー

繰り返し同じワークフローを呼び出すことはアクティビティの数を減らすことにも繋がります。

メンテナンスが簡単になるだけでなく、メインシナリオとは別のエリアにワークフローが表示されるので、シナリオの見た目もスッキリしますよ。

ワークフローファイルを呼び出しの使い方

①呼び出したい処理を作成し、任意の場所に配置します。今回はMain.xamlと同じフォルダに保存します。

②シナリオに「ワークフローファイルを呼び出し」を配置し、ワークフローファイル名の項目に、呼び出したいワークフローが保存してあるパスを設定します。

これで呼び出すワークフローの作成と、メインワークフローでの呼び出しが完了です。

引数をインポートについて

呼び出すワークフローはメインシナリオの外に配置しましたが、メインシナリオと呼び出すワークフローの間で、指定の値を受け渡しすることも可能です。
そのためには、呼び出すワークフローに引数を設定することが必要です。
応用すれば呼び出し毎に処理する値を変えて使うことができます。

■引数

入力、出力、入出力の3種類あり、それぞれの特徴は以下のようになります。

・入力:メインシナリオから、呼び出すワークフローに渡す値

・出力:呼び出すワークフローから、メインシナリオに渡す値

・入出力:メインシナリオから、呼び出すワークフローに値を渡し、引き渡された変数を変更して、メインシナリオに渡す値

■引数の使い方

呼び出すワークフローに引数を設定することで、メインシナリオと値の受け渡しができます。
「引数」タブをクリックし、「引数の作成」項目をクリックすると新しく引数を作成できます。
「方向」項目については、用途に応じて方向を設定します。

出力用の引数には、「代入」アクティビティで、値を設定します。
入出力用の引数も同様に、「代入」アクティビティで、値を設定します。メインシナリオから受け取った値が一度「io_argument3」の引数に格納されるため、値を変更して出力します。

呼び出すワークフローが作成出来たらワークフローを保存します。
メインシナリオの「ワークフローファイルを呼び出す」アクティビティの「0」の数字がオレンジ色になったら、「引数をインポート」をクリックします。

「引数をインポート」をクリックすると、自動的に呼び出すワークフローで設定した引数が表示されます。

・入力用の変数には、呼び出すワークフローへ渡す値もメインシナリオで設定します。

・出力用の引数には、呼び出すワークフローから出力された値を格納する変数を設定します。

・入出力用の引数には、呼び出すワークフローから出力された値を格納する変数を設定します。

・入出力用の変数には、呼び出すワークフローへ渡す値もメインシナリオで設定します。

以上が引数のインポート方法となります。

ワークフローファイルを呼び出しの活用例

ワークフローファイルを呼び出しの活用例として、実行ログを記録させる処理を紹介します。

前処理の最後とメイン処理の最後、メール送信処理の最後にログを記録するワークフローです。
ログへ記録する処理を別のワークフローにすることで、何度も同様の処理が行われます。
ワークフローファイルを呼び出しの際には、ログ内容を引数に設定することで違った内容を記録させています。
のちにメンテナンスが必要になった場合を想像すると、別のワークフローに処理をまとめておくのが賢い選択と言えますね。

 

いかがでしたか?

今回はUiPathの便利機能「ワークフローファイルを呼び出し」についてご紹介しました。

「ワークフローファイルを呼び出し」アクティビティを使うことで、ワークフローがすっきりして見やすくなるだけでなく、使用するアクティビティの数が少なくなることで、メンテナンスのしやすいロボットを作ることにもつながります。

ぜひ参考にしていただき、「ワークフローファイルを呼び出し」を活用してみてくださいね!

弊社ではUiPathの開発支援をはじめ、研修、保守サポートも対応しております。
少しでも気になった方はぜひ一度弊社にご相談ください