- 基本情報
- はじめる前に
- 使い方
- 通知
- アプリをデザインする
- イベントとルール
- アプリで RPA を活用する
- アプリ内でエンティティを活用する
- アプリ内でキューを活用する
- アプリケーション ライフサイクル管理 (ALM)
- 基本的なトラブルシューティング ガイド
バックグラウンド情報
コントロールの [データ ソース] フィールドと [値のバインド] フィールドは双方向のバインドです。つまり、どちらも、そのコントロールにバインドされているルート データを更新できます。
理解を深めるために、簡単な例を使用できます。アプリにラベルとテキストボックスを追加して、アプリ変数を作成することができます。テキストボックス コントロールの [値のバインド] プロパティとラベル コントロールの [テキスト] プロパティを変数に割り当てます。アプリのプレビュー時に、テキストボックスの値を変更すると、アプリ変数も更新されることに注意してください。一方、[テキスト] プロパティは一方向のバインド フィールドで、更新できないデータのみを表示します。
例
この例では、プロセスで得られたカスタム リストから複数の項目を選択できるアプリを作成します。
この例では、以下を構築します。
- オートメーション プロセス
- UiPath Apps を使用するアプリ
ワークフローを構築する
この例の最初のステップは、UiPath Studio でワークフローを構築することです。これは、いくつかの引数で構成される簡単なワークフローです。
-
Studio を開いて、新しいプロセスを作成します。
-
次の引数を作成します。
引数名 方向 引数の型 既定値 out_DataTableOut データ テーブル - in_SelectedItemsIn データ テーブル new DataDablefiltered_SelectedItemsOut データ テーブル - -
ワークフロー デザイナーに [シーケンス] をドラッグします。
-
[シーケンス] コンテナーに、[データ テーブルを構築] アクティビティを追加します。
-
[データ テーブル] フィールドに
out_DataTable引数を追加します。 -
[選択済み] という名前の列を追加します。
-
下図に示すように表を設定します。
-
-
[データ テーブルを構築] アクティビティの下に [条件分岐 (if)] アクティビティを追加し、以下の手順に従って設定します。
-
[条件] フィールドに
in_SelectedItems.Rows.Count > 0を追加します。 -
Configure Then and Else as displayed below.
Then
-
Drag a Sequence inside the Then container.
-
[シーケンス] コンテナー内に [代入] アクティビティを追加します。
-
Add filtered_SelectedItems in the To field.
-
Add (from r In in_SelectedItems.Select() Where r("Selected").Equals(true) Select r).CopyToDataTable in the Value field.
- [代入] アクティビティの下に [メッセージをログ] アクティビティを追加します。
-
Set LogLevel to
Info. -
Add
filtered_SelectedItems.ToStringin the Message field.
Else
-
[Else] コンテナー内に [シーケンス] をドラッグします。
-
[代入] アクティビティの下に [メッセージをログ] アクティビティを追加します。
-
Set LogLevel to
Info. -
Add
"First run or empty"in the Message field.
-
-
結果
最終的に、ワークフローは下図のようになります。
プロセスの入力または出力で複雑な .NET オブジェクト (DataTable など) を使用している場合、App Studio は、既定ではそのオブジェクトのフィールドを認識できません。フィールドを指定するには、次の 2 つの方法があります。
- Run your process before adding it to your app. If a process uses an object, Apps will check its Job History to automatically detect the schema/fields of that object.
- プロセスの入出力用のオブジェクト フィールドを手動で指定します。プロセスにジョブの履歴がない場合は、プロセスがアプリに追加された後に、アプリで使用するためにフィールドを手動で指定する必要があります。
手動でプロセスに追加したパラメーターは、プロセスを更新すると削除されます。
アプリを構築する
After publishing the workflow build during the Building the workflow procedure to your Orchestrator, it's time to build the app itself.
-
新しいアプリを作成します。
-
上記で構築されたプロセスを参照します。
-
1 つの [カスタム リスト] コントロールと 1 つの [表] コントロールをアプリに並べて追加します。
-
表の [データ ソース] フィールドで、プロセスから
Out: out_DataTableを追加します。 -
[チェックボックス] コントロールと [テキストボックス] コントロールをカスタム リストに追加し、次のように設定します。
- チェックボックス コントロールの [ラベル] フィールドに、プロセスの
Out: out_DataTableセクションのOut: Item項目を追加します。 - チェックボックス コントロールの [値のバインド] フィールドに、プロセスの
Out: out_DataTableセクションのOut: Selected項目を追加します。 - テキストボックス コントロールの [値のバインド] フィールドに、プロセスの
Out: out_DataTableセクションのOut: Quantity項目を追加します。
- チェックボックス コントロールの [ラベル] フィールドに、プロセスの
-
[ボタン] コントロールを追加し、
Runという名前を付けます。[クリック時] ルールを次のように設定します。-
[プロセスを開始] ルールを追加します。
-
[ジョブ名] フィールドに名前を追加し、[Attended] としてマークします。
-
[入力の上書き] フィールドに
in_SelectedItemsとOut.out_DataTableを追加します。
-
-
ボタンの下にコンテナーを追加します。
-
2 つの [ラベル] コントロールを並べて追加します。
- 1 つ目のラベルの [テキスト] フィールドに、プロセスの
Out: filtered_SelectedItemsセクションのfiltered_SelectedItems.Item項目を追加します。- 1 つ目のラベルの [テキスト] フィールドに、プロセスの
Out: filtered_SelectedItemsセクションのfiltered_SelectedItems.Quantity項目を追加します。
- 1 つ目のラベルの [テキスト] フィールドに、プロセスの
- 1 つ目のラベルの [テキスト] フィールドに、プロセスの
結論
アプリをプレビューするときに、プロセスで得られたカスタム リスト内の項目を選択できます。
この例の鍵は、データ ソース、値のバインド、および入力の違いをよりよく理解することです。
- データ ソースと値のバインドは双方向のバインドです。つまり、どちらも、コントロールにバインドされているルート データを更新できます。
- 入力の上書きを使用すると、プロセスのデータ テーブルや Data Service のエンティティなどの他のソースからのオブジェクトを渡すことができます。