UiPath Apps でロボットを実行する

本記事は#UiPathブログ発信チャレンジ2024サマーの30日目の記事です。
ブログの詳細、参加方法については以下のブログを参照ください。
https://note.com/shumpei_w/n/n023a4401b040#e408f562-159f-4abc-82ad-e8d14e5bbb7e

このブログ情報は、2024/7/30 時点の情報です。

UiPath Appsで、ロボットを実行する方法をご紹介したいと思います。

UiPath Appsでは、ロボットからの入出力を取得しながら実行することが可能ですので、下記に入出力の手順をご紹介します。
アプリの作成は、通常App Studioの「コントロールを追加」から各種の「コントロール」を使用して作成しますが、
今回は、Autopilotで作成します。

　
１．ロボットを準備する。（Unattended、Attendedどちらでも可能です）
２．ロボットのMainの引数に入出力を設定する。
３．App Studioでアプリを作成する。
　　Autopilotで簡単に概略のフォームを作成することができます。
４．App Studioにプロセスを読み込む。
５．各項目に入出力の引数を設定する。
６．プレビューで確認
７．パブリッシュしてURLを共有
８．使用権限の設定


以下に順次説明します。

  　
１．用意したロボットは、家計簿入力ロボットです。

２．ロボットのMain.xamlに入出力の引数を設定します。

【Main.xamlの設定】

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/8f08c199-cbbe-4430-1b2a-ee2b28465828.png)

金額等も一旦、String型で設定しています。

　　
３．UiPath Appsのアプリ画面を作成する

今回は、Autopilotを使用してフォームを作成してみました。
入力内容は、以下を入力しました。

【入力内容】
「引数（入力：項目、単価、数量、出力：合計）で「MyKakeibo_total」プロセスを実行するフォームを作成」

Autopilotで作成されたフォームは以下でした。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/ed6d368c-fc70-5e69-fd09-bd61828be2a8.png)


項目は、引数として入力した４つの項目を作成してくれました。
ただ、私は以下のように自分好みで項目等を移動して下記のように変更しました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/ebca4a37-831a-a788-7bc2-fa20b4aaca1e.png)

  　　
４．App Studioにプロセスを読み込みます

■「コントロールを追加」の右横▼をクリックし、「プロセス」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/35dadafd-2f60-b08b-cd06-0b9563e13b16.png)

■ Orchestratorのテナントを選択し、「次へ」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/8de82175-2480-8c05-b54d-c8e8b765c8bc.png)

■「プロセスを追加」画面で、対象のプロセスを選択します。
引数が表示されていることが分かります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/82461d40-735c-a7dd-f443-d307ab692a52.png)

すると、次のような画面が表示されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/948dddd0-2ce4-f464-fbc6-06944848aef8.png)

これで、プロセスは追加されました。

　　
５．最後に各項目を設定します。

各項目の設定をする前に、
現状では、「Main Page」がアクティブになっていて、
コントロールを選択できないと思うので、
下記のように左枠内のアプリ名をクリックしてください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/17ba67f4-fc31-0ff1-161e-1c849407eb2b.png)

その後、ロボットの実行ボタンとなる「家計簿へ入力」ボタンを選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/a4ab74cf-c287-3ad2-4544-56c179c20eb2.png)

上記の「家計簿への入力」ボタンを選択して、App Studioの右側の設定内容を設定していきます。

設定画面の

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/f30e853d-8233-723c-f488-2e52616c883b.png)

■「イベント」→「ルールを作成」をクリックします。

■次の画面からスクロールして、「プロセスを開始」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/e95bd50e-0b48-3880-5da4-877b5ea4ff2d.png)

この画面になります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/d2e86292-be65-4518-b483-2057d3f190e5.png)

■ 引数を設定します。
上記の「入力の上書き」を選択し、

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/184d8ba7-77ee-f2d6-0bdc-8c71f61ac6dd.png)

赤枠内に引数と入力項目を設定します。

左辺は・・・プロセスの引数を設定します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/345e399c-5dd2-4fbd-a788-f2ea9d68484e.png)

右辺は・・・アプリ上の項目を設定します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/3bafa31d-f29b-8964-74b0-b57d21c893dc.png)

■ 出力を設定します。

設定する項目に「合計」の項目を、

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/3fdde51c-24cc-81c2-0751-08e462a00092.png)

値にプロセスの出力の引数を設定します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/68d194f1-fed0-d8e2-d1a1-94bbd0f9c7f4.png)

このような設定になります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/c2bdb524-62f6-b6a0-a956-5042ac1f245d.png)


これで、引数の設定が完了したので、
画面を「閉じる」で終了します。

　　
６．では、プレビューで見てみましょう！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/82611796-13bd-828c-77e6-0690b3a0f425.png)

下記のような画面が表示されましたので、
各項目に入力後、
「家計簿へ入力」ボタンをクリックすると・・・

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/c05165a2-5b6a-dc9e-0039-b5900bf3d35c.png)

以下のように、
入力項目を追加して、さらに合計を出力してくれました。

入力しているExcelは以下になります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/516972ee-fcac-919d-679d-bdf1cc03b6ee.png)

入力は、20行目に入力し、合計の出力は、E2セルの値を取得して表示しています。
　

７．プレビューで確認ができたら、パブリッシュをして完成です。
　　

８．最後に、プレビューで表示されたURLを共有し、使用権限を付与すれば、
Orchestratorにアカウントを登録しているユーザーであれば、このURLのアプリを実行できることになります。

権限の付与は、Apps画面に戻り、対象のアプリの「３点リーダー」から、「共有」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3046355/7385565f-2a53-61eb-d136-dd3b46ed4d4c.png)

下記のように表示されたら、
「ロールを割り当てる」→「ユーザーとグループを検索」の枠内に対象のユーザーのメールアドレスを入力し、「割り当て」をします。



UiPath Apps は、「コントロールを追加」のメニューに様々なフォームの要素が用意されていますし、フォーム上で関数も使用できますので、
アプリ上でダッシュボードが作成できると思います。

例えば、物流業務などでは、倉庫内で、タブレット等でも実行可能かと思います。
商品の入荷・在庫確認等、Appsを利用してアプリを作成し、ロボットを活用できるのではないでしょうか。

  
　　
【感想】
今回、ずっと気になっていたUiPath Appsを取り上げましたが、
これまで、アプリの作成に大変さを感じていたので、
テンプレートを作成して使用していましたが、2024年7月に追加されたAutopilotにより、アッという間に概略を作成してくれるので、より使いやすくなったと実感しています。
もっと、活用したいです。
ご参考になれば嬉しいです。