【UiPath】バージョン「24.4」Community版まとめ

# はじめに
この投稿は、RPAツール「UiPath」で 2024年4月29日にリリースされた、バージョン「24.4」Community版について「個人的に」 まとめたものです。

# 情報ソース
以下の「UiPath公式リリース」を元にしています。

https://forum.uipath.com/t/uipath-community-2024-4-release/737303

動作確認は「Studio 24.4.0」で行っています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/b4f274e1-49e7-c3a8-9823-241d6649b6eb.png)


# 目次
今回紹介する内容は下記になります。
```
# 1）セマンティック アクティビティ
# 2）AIがテキストからワークフローを作成（AutoPilot／Studio）
# 3）AIが式を修正（AutoPilot／Studio）
# 4）フローチャートのデザイン変更（Studio）
# 5）実行エラー時のユーザ確認（UiAutomation）
# 6）アプリのステート確認でアプリ指定なし（UiAutomation）
# 7）新アクティビティ）ポップアップを閉じる（UiAutomation）
# 8）新アクティビティ）ランタイム ブラウザーを設定（UiAutomation）
# 9）検索ウィンドウが上部に移動（Assistant）
# 10）インストール表示（Assistant）
# 11）イベントトリガーの改善（UiAutomation）
# 12）Mac をサポートする Chrome MV3 拡張機能
# 13）オブジェクトリポジトリの改善
# 14）UI 要素検出の改善（コンピュータビジョン）
# 15）DocumentUnderStanding の改善
# 16）コード化されたワークフローの改善
# 17）モバイルデバイスマネージャーパネルのテキストコピー
```

# 1）セマンティック アクティビティ
セレクタ指定せずに「画面上の意味合い」で要素特定するアクティビティが登場しました。

セマンティックとは「情報の意味を解釈すること」の意で、「セマンティックアクティビティ」は、**要素の指定をせずに 画面上の文脈からデータを取得/入力**できるものです。

　※ 2024.04現在ではクロスプラットフォームのプロジェクトで使用可能。

現在は、以下の3つが提供されています。（アイコン右下に星マークが表示されます）

| アイコン | アクティビティ名 | 種類<br>説明 |
|:-:|:-|:-|
| ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/1a20d163-2ba9-7e15-c5b6-6c79c5541ad2.png)  | フォームデータを抽出<br>（Extract Form Data）  | UiPath.Semantic.Activities.NExtractFormDataGeneric<br>AIを使用して、フォームデータをシームレスに抽出します。 |
| ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/5912c6fd-1823-8447-7c92-7c76865fb85d.png)  | フォームに入力<br> (Fill Form)  | UiPath.Semantic.Activities.NFillForm<br>AI を使用して、指定したデータ ソースから抽出した情報を指定したフォームにシームレスに入力します。 |
| ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/249f435b-b442-c5d5-4619-2504e2e029b3.png)  | 値を設定<br>(Set Value)   | UiPath.Semantic.Activities.NSetValue<br>AI を使用して、シームレスにフィールドに値を設定します。 |

### 1.1）**フォームデータを抽出（Extract Form Data）** アクティビティ

画面上のフォームから入力データを取得します。セレクタの指定は不要です。
取得したデータは「FormData型」で変数にセットされ、キー名で参照できます。

![uianime20.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/47ab29bd-5f72-ca72-573a-77008fa166a0.gif)

### 1.2）**フォームに入力(Fill Form)** アクティビティ
「Version 23.12」で追加されていました。
クリップボードAI相当のアクティビティで、DictionaryやJson、DataTable型などの変数を使って「列名と画面要素で 意味合いが一致する入力欄」に自動入力します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/6f52d7fe-7680-b845-a564-188287198e84.png)

### 1.3）**値を設定(Set Value)** アクティビティ
セレクタを使用せずフォームに値をセットしてくれます。要素を指定すると「画面上の意味合い」が記録されます。
![uianime21.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/918b4d3a-a2bf-7e1a-b07c-ac470507b924.gif)

Xamlを開いてみると「SemanticElementType／SemanticTextArgument」等に「要素の意味合い」がセットされていて、この値で画面の読込結果とマッチした要素に値をセットするようです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/318a7788-bddc-4565-b297-0cc97708edb9.png)


# 2）AIがテキストからワークフローを作成（AutoPilot／Studio）
プラスボタン押下で表示される検索ウィンドウに文章を入力すると「Autopilotで生成」が表示され、ダブルクリックでAIが「実装イメージのシーケンス」を提示してくれます。その後の画面でOKを押すと（少し時間が経った後で）実際のアクティビティが出力されます。

※ 処理の大枠・流れが提案されるイメージです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/60941063-15cb-2abf-610e-4720351a42ea.png)

# 3）AIが式を修正（AutoPilot／Studio）
式エディタ上でエラーがある場合、右上の「AutoFix」ボタンを押下で、エラーを修正してくれます。例えば括弧や引用符を揃えたりなど。
![uianime22.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/08d090dc-d559-10dd-7ea3-22c91f0e97f6.gif)

# 4）フローチャートのデザイン変更（Studio）
Studioのフローチャートのデザインが変わりました。

```
・1）キャンバス形式になり、上下左右の範囲が無限に
・2）移動時に縦線ナビゲーションが付き、位置揃えが楽に
・3）接続線の右クリックで削除・名称変更が可能に
・4）開始・スイッチ・条件分岐のデザイン変更
・5）条件分岐のif/else線が左右以外にも可能に
・6）キャンバス整理の機能が追加（旧：自動整列）
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/12eb9fc7-aab3-d171-9efd-bb09ce9683d4.png)

:::note info
**メリット**
・横に書きやすい（縦幅を取らずに書ける）
・縦位置を揃えやすい（ドラッグ時にグリッド線サポートあり）
:::

:::note warn
**デメリット**
・今までキレイに書いていても、2024.4以降で開くと崩れる
⇒ 右クリック「キャンバス整理／DeclutterCanvas」で整列されるが、手直しは必要
:::

# 5）実行エラー時のユーザ確認（UiAutomation）
セレクタエラー発生時にダイアログが表示され、手動で再指定が出来るようになりました。
（セレクタエラーで終了させないで、続行することができる）

　※ プロジェクト設定で「Ask user on runtime error」がTrueの場合
　※ プロジェクト設定で「有人オートメーション（AR）」の場合またはデバッグ実行の場合
 
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/b0221982-e063-1b60-8de2-963b4b89157c.png)

# 6）アプリのステート確認でアプリ指定なし（UiAutomation）
「アプリのステート確認」アクティビティで、上位の「アプリブラウザを使用」で指定の画面セレクタに属さない画面要素を指定できるようになりました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/5c786651-9d4e-2497-65a7-905c62104003.png)

https://docs.uipath.com/ja/activities/other/latest/ui-automation/n-check-state

# 7）新アクティビティ）ポップアップを閉じる（UiAutomation）
指定秒数内にポップアップが表示された場合に、指定のボタンをクリックする、または例外をスローするアクティビティです。稀にポップアップが表示される位置にアクティビティを配置することで、予期せぬ停止を避ける事ができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/cfdc3cb5-d1e6-c93b-0895-ee126d9be794.png)

https://docs.uipath.com/ja/activities/other/latest/ui-automation/n-close-popup

# 8）新アクティビティ）ランタイム ブラウザーを設定（UiAutomation）
実行ブラウザをアクティビティで変更できるようになりました。プロジェクト設定の「ランタイムブラウザー」での設定でも同じことが出来ますが、１つのプロジェクトで複数ブラウザの動作確認を連続でしたいときなどに活用できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/486f9131-c191-1e56-f10b-3e0839f6fb9d.png)

https://docs.uipath.com/ja/activities/other/latest/ui-automation/n-set-runtime-browser

# 9）検索ウィンドウが上部に移動（Assistant）
アシスタントの下部にあった検索バナーが上部に移動し、検索しやすくなりました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/e4d27d48-427e-c3d0-1a86-838157a77237.png)

# 10）インストール表示（Assistant）
更新が必要なパッケージの場合、右側パネルに説明欄が表示されるようになりました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/88ff50f1-52e9-7f90-1fe1-c9577b366cd2.png)

# 11）イベントトリガーの改善（UiAutomation）
以下の点で、改善されました。
・Webトリガーで「Edge IE モード」をサポート
・UI 要素の「クリック」と「キー押下」イベントのトリガー追加

https://docs.uipath.com/ja/activities/other/latest/ui-automation/n-native-event-trigger

# 12）Mac をサポートする Chrome MV3 拡張機能
Mac をサポートするために Chrome 用の MV3 UiPath 拡張機能が更新されました。延期されていたMV3以降ですが、再開され、早ければ 2024 年 6 月の Chrome 127 以降で、Manifest V2 拡張機能を無効になります。

https://developer.chrome.com/blog/resuming-the-transition-to-mv3?hl=ja#the_phase-out_timeline

# 13）オブジェクトリポジトリの改善
以下の点で、改善されました。
・同期（取り込み）機能の追加
・設定確認画面の簡略化
・要素指定画面でオブジェクトリポジトリと自動同期
・Uiライブラリとの切り離し選択

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/154139/064bd9db-59e8-244f-7d6b-d74d2a00152f.png)

# 14）UI 要素検出の改善（コンピュータビジョン）
AI モデルが新しくなり、検出精度がより向上しました。GPU 要件が高いため、UiPath クラウド サーバーのみに展開とのことです。

https://docs.uipath.com/ja/ai-computer-vision/automation-cloud/latest/user-guide/release-notes-2024

# 15）DocumentUnderStanding の改善
以下の点で、改善されました。
・Action Center 用の3つの新しいアクティビティ（分類検証タスク作成・待機・再開）
・Validator Notes の追加（最大200文字）
・自動検証（generative extractorとの比較）

https://forum.uipath.com/t/uipath-community-2024-4-release-document-understanding-activities/736362

# 16）コード化されたワークフローの改善
以下の点で、改善されました。
・検証系メソッドの細分化（testing.VerifyXXX）
・ワークフロー呼び出し時のファイル名指定（workflows.XXX）
・名前空間の自動インポート（使用パッケージに関連してimportが自動追加）
・コード内のOR参照自動更新（項目名変更時にコード上の参照名も自動変更）

# 17）モバイルデバイスマネージャーパネルのテキストコピー
MDM（モバイルデバイスマネージャー）は、モバイルテストプロジェクトで使用するデバイスとアプリの管理ツールですが、ログパネル内の内容をクリップボードにコピーできるようになりました。

https://docs.uipath.com/ja/test-suite/automation-suite/2023.4/user-guide/configuring-mobile-device-manager

# 終わりに
以上、24.4 Community版 のリリース内容まとめ でした。