- リリース ノート
- 基本情報
- セットアップと構成
- オートメーション プロジェクト
- 依存関係
- ワークフローの種類
- ファイルの比較
- オートメーションのベスト プラクティス
- ソース管理との連携
- デバッグ
- 診断ツール
- ワークフロー アナライザー
- 変数
- 引数
- インポートされた名前空間
- 制御フロー
- オブジェクト リポジトリ
- オブジェクト リポジトリについて
- オブジェクト リポジトリを作成する
- オブジェクトと UI ライブラリを再利用する
- ログ
- ScaleCoordinates 移行ツール
- ScreenScrapeJavaSupport ツール
- Studio Pro
- 拡張機能
- トラブルシューティング
The Object Repository works with the UiPath.UIAutomation.Activities or the MobileAutomation.Activities package versions 20.10 and higher in projects with Modern Design Experience enabled.
オブジェクト リポジトリは、以下から収集した要素をアプリケーション、バージョン、画面ごとにグループ化したものです。
- ローカル プロジェクト、すなわちローカル リポジトリ。
- ライブラリ、すなわち現在のプロジェクトに対する UI ライブラリの依存関係。
ローカル リポジトリは、以下のいずれかの方法で作成できます。
- 「要素をキャプチャ」レコーダーを使用して UI の説明をキャプチャします。
- [オブジェクト リポジトリ] パネルで直接、アプリケーション、画面、要素を手動で作成します。
UI ライブラリは以下の方法で作成できます。
-
任意のプロジェクトからライブラリ プロジェクトにローカル リポジトリを抽出し、NuGet パッケージとしてパブリッシュします。
-
新しいライブラリから開始し、そこでリポジトリを構築し、NuGet パッケージとしてパブリッシュします。
その後、UI ライブラリの NuGet パッケージを使用し、依存関係としてプロセスに追加することができます。
重要:「要素をキャプチャ」レコーダーでは、プロジェクト内で再利用するためにオブジェクトが記録されるだけであり、[デザイナー] パネル内にワークフローが生成されることはありません。
要素をキャプチャしてリポジトリを作成する
In a library or process, click the Capture Elements
button in the Object Repository to start recording objects.
The Capture Elements recorder uses the Unified Target technology from inside the UIAutomation.Activities pack version 20.10 and higher, to capture targets and anchors with a certain degree of accuracy for each selector, image, or anchor.
UI 要素はセレクター、あいまいセレクター、画像とともにキャプチャされ、それぞれにある程度の精度が確保されます。これらのターゲット要素を 1 つだけ維持するか、すべて維持するかを選択できます。同じことが、アプリケーション内の各 UI 要素に関連するアンカー要素にも当てはまります。
記述子のプロパティ
オブジェクト リポジトリ内で認識しやすくなるよう、「要素をキャプチャ」レコーダーで、アプリケーション、画面、および要素に、それらの内容が分かるような名前を付ける必要があります。
要素の種類
アプリケーション内のセレクターは、ボタン、チェックボックス、テキスト フィールド、トグル、リスト ボックスなど、ロボットと対話可能なあらゆる種類の要素を表すことができます。キャプチャ済みの要素は「要素をキャプチャ」レコーダーで定義できます。
[種類] ドロップダウン リストから、各要素に適した種類を検索して選択することができます。オブジェクト リポジトリ内では、要素に種類別のアイコンが付けられるため、オブジェクトを区別しやすくなります。
要素をキャプチャした後で、[オブジェクトをライブラリに保存] ボタンをクリックすると、オブジェクトがオブジェクト リポジトリに追加されます。
- 要素を追加するには、リポジトリ内の画面または要素を右クリックし、[要素を作成] を選択します。画面を追加するには、アプリケーションを右クリックし、[画面を作成] を選択します。
- アプリケーションまたは画面の下に直接オブジェクトを記録するには、任意のアプリケーションまたは画面を右クリックし、[要素をキャプチャ] を選択します。
オブジェクト リポジトリ パネルからリポジトリを作成する
[オブジェクト リポジトリ] パネル内でアプリケーション、各画面、要素を手動で定義することにより、独自のリポジトリを作成できます。
UI アプリケーションを作成する
[オブジェクト リポジトリ] パネルの [記述子] タブのプラス記号をクリックするか、同じタブのプロジェクト記述子を右クリックして [アプリケーションを作成] を選択します。[アプリケーションを作成] ウィンドウが表示されます。
一意のアプリケーション名、バージョン、説明を入力します。[アプリケーションを作成] をクリックします。アプリケーションが、[記述子] タブの [プロジェクト UI 記述子] の下に表示されます。
画面を作成する
[記述子] タブでアプリケーションを選択してプラス記号をクリックするか、アプリケーションを右クリックして [画面を作成] を選択します。[画面を追加] ウィンドウが表示されます。
画面の一意の名前、および説明を追加します。自動化する画面を指定し、キャプチャした要素を統合ターゲットで編集します。
-
必要に応じて、アプリケーション パスを変更します。
-
アプリケーション引数を追加します。
完了したら、[画面を作成] をクリックします。
UI 要素を作成する
[記述子] タブでアプリ画面を選択してプラス記号をクリックするか、画面を右クリックして [要素を作成] を選択します。[要素を追加] ウィンドウが表示されます。
[記述子の種類] セクションで、[要素を指定] をクリックします。統合ターゲットを使用して画面から要素を指定し、キャプチャします。
直観的に理解できる名前を [要素名] フィールドに追加し、[種類] ドロップダウン リストから要素の種類を選択します完了したら [保存] をクリックします。
- オブジェクト リポジトリで要素を編集するには、対象の要素を右クリックして [要素を編集] を選択するか、ツリー内の要素をダブルクリックします。
- 要素の記述子を編集するには、[要素を編集] ウィンドウの [記述子を編集] オプションを使用するか、ツリー内の要素を右クリックして [記述子を編集] を選択します。
レコーダーでオブジェクト リポジトリを使用する
If the Object Repository is enforced in your instance of Studio (as per instructions in the About Object Repository page), when using the App/Web Recorder, the generated activities do not automatically reference descriptors from the repository.
アクティビティのレベルで、オブジェクト リポジトリに記述子を追加するか既存の記述子を使用するよう、情報提供用のツールチップで通知されます。
To do so, click on the icon inside the activity, and follow the steps for adding or reusing descriptors, or select Options
> Add to Object Repository to add the element to the Object Repository.
要素をアクティビティからリポジトリに追加する
オブジェクト リポジトリを作成した後は、[デザイナー] パネルから直接 UI 要素を追加できます。
[デザイナー] パネルでは、[クリック] や [文字を入力] など、セレクターをサポートするアクティビティを追加します。追加したアクティビティが [アプリケーション/ブラウザーを使用] アクティビティ内にあることを確認してください。
アクティビティの本体内で、オブジェクト リポジトリ アイコンをクリックして [選択オプション] ウィンドウを開きます。要素をキャプチャし、[確認] を選択すると、[要素をオブジェクト リポジトリに追加] ウィンドウが開きます。要素に名前を追加し、[保存] をクリックします。[オブジェクト リポジトリ] パネルに要素が追加されます。
現在のプロジェクトでオブジェクトを使用する
オブジェクト リポジトリから、アプリケーション、画面、または要素をワークフロー内のアクティビティの上部にドラッグ アンド ドロップします。オブジェクトの画像、引数、その他詳細が自動的にアクティビティに追加されます。
以下は、[アプリケーション/ブラウザーを使用] アクティビティの上部に MyAppScreen オブジェクトをドラッグした例です。アプリケーション パスがアクティビティに自動的に追加されています。
あるいは、ワークフロー内のプラス記号の上にオブジェクトをドラッグすると、対応するアクティビティのリストが開きます。アクティビティを選択すると、オブジェクトが自動的に追加されます。プロセス内で、アクティビティはアクティビティ名 + オブジェクト名のラベルを受け取ります。
オブジェクトが追加された後、アクティビティは、そのアクティビティの [プロパティ] パネルに表示される記述子のプロパティをオブジェクト リポジトリから受け取ります。
-
To edit the descriptor, click Show at the top of the Properties panel to go to the Object Repository where you can use the Edit Descriptor option.
-
アクティビティとオブジェクト リポジトリ間のリンクを削除するには、[プロパティ] パネルの上部にある [リンクを解除] をクリックします。オブジェクト リポジトリが適用されている場合、リンクを解除することによってターゲットがアクティビティから削除されます。
オブジェクトがワークフローに追加されると、[オブジェクト リポジトリ] パネルの [UI アクティビティ] タブに、アクティビティとそれに含まれるオブジェクトが階層順に表示されます。表示されない場合は、プロジェクトを保存し、再度確認してください。
ワークフローは次のようにマークされます。
- ワークフロー ファイル内の少なくとも 1 つのアクティビティが [オブジェクト] パネルの UI 記述子を参照している場合は、グレーのドット
- ワークフローのすべてのアクティビティが [オブジェクト] パネルの UI 記述子を参照している場合は青のドット
UI アクティビティは、次のようにマークされます。
- ワークフローのアクティビティが [オブジェクト] パネルの UI 記述子を参照していない場合は白のドット
- アクティビティが [オブジェクト] パネルの UI 記述子を参照している場合は青のドット
記述子を編集する
記述子はオブジェクト リポジトリから、「オンライン編集」あるいは「オフライン編集」のいずれかの方法で編集できます。
- オンライン編集 - 現在のマシン上でアプリケーションまたはブラウザーにアクセスできる場合。アプリケーション/ブラウザーが画面上に表示され、要素を再度選択したり、変更したりできます。
- オフライン編集 - アプリケーションがインストールされていないか、マシンがオフラインになっているため、現在のマシンではアプリケーション/ブラウザーにアクセスできない場合。要素のセレクターが表示され、要素を変更することができます。
オンライン編集
[記述子] タブで、要素を右クリックし、[記述子を編集] を選択します。選択画面が開き、別の要素をキャプチャしたり、セレクターやアンカーを編集したりできます。
[要素を編集] ウィンドウの [記述子を編集] ボタンをクリックしても、同じことができます。
アクティビティがそうした UI 記述子を参照している場合、[オブジェクト リポジトリ] パネルで UI 記述子が解決されます。
オフライン編集
オンライン編集と同じ手順が、ここでも適用されます。[記述子] タブで、画面または要素を右クリックし、[記述子を編集] を選択します。
オフライン編集では、要素記述子の設定を直接変更することができます。ただし、新しい要素を指定することはできません。新しい要素を指定するには、アプリケーション/ブラウザーが正しいステートにあることを確認してください。
UI 記述子を解決する
既にオブジェクト リポジトリで参照されている画面または UI 要素を指定すると、プロジェクト UI 記述子または UI ライブラリのいずれかで一致するものが自動的に検出され、以下のウィンドウが表示されます。
次のオプションを使用できます。
- 再利用 - 一致する記述子をオブジェクト リポジトリから現在のアクティビティに追加します。
- 新規作成 - 新しい画面/要素の作成、またはオブジェクト リポジトリ内の既存の画面/要素の更新を行うオプション ウィンドウを開きます。
- キャンセル - リポジトリ内のオブジェクトに一切変更を加えずに、アクティビティ内で現在示されているセレクターを保持します。
画面を指定すると、対応する UI 記述子が検出される一方、ターゲット要素を指定すると、一致する UI 記述子が検索されます。レコーダーを使用している場合は、画面と要素の一致するものが、ローカル UI ライブラリのプロジェクト UI 記述子または UI ライブラリのインポートされた依存関係の中から検索されます。
アクティビティが実行時に UI 記述子を参照している場合、[オブジェクト ブラウザー] パネルで解決されます。
記述子の変数
再利用性を向上させるために、記述子の変数を使用できます。
ターゲットを編集し、変数を追加して、オブジェクト リポジトリに追加するか、既存の画面または要素のセレクターにオブジェクト リポジトリから変数を追加することができます。変数を含む記述子をプロセスに追加するときは、必ずプロセス内に変数を作成してください。そうしなければ、式を読み取ることができません。
記述子セレクターに変数を追加するには、オブジェクト リポジトリ内の要素を右クリックして [記述子を編集] を選択し、[選択オプション] ウィンドウから変数を追加します。
セレクターに追加した変数は二重中括弧で囲む必要があります。たとえば下の図に示すように、<name='{{VarNumber}}'/> とすると、変数 VarNumber の値がセレクターの name 属性に追加されます。
以下の例では、[アプリケーション/ブラウザーを使用] アクティビティの [ブラウザーの URL] フィールド内で変数を使用し、ターゲットを画面オブジェクトとしてオブジェクト リポジトリに追加しました。このようにして、URL が変更になるケースが記述子で考慮されるようにします。
要素を強調表示する
アプリケーションがマシン上で起動しているか、ブラウザーに Web ページが開いている場合は、[オブジェクト リポジトリ] パネルで画面または要素を右クリックし、[強調表示] を選択してアプリケーション内の要素を強調表示します。