バックグラウンド情報
コントロールの [データ ソース] フィールドと [値のバインド] フィールドは双方向のバインドです。つまり、どちらも、そのコントロールにバインドされているルート データを更新できます。
理解を深めるために、簡単な例を使用できます。アプリにラベルとテキストボックスを追加して、アプリ変数を作成することができます。テキストボックス コントロールの [値のバインド] プロパティとラベル コントロールの [テキスト] プロパティを変数に割り当てます。アプリのプレビュー時に、テキストボックスの値を変更すると、アプリ変数も更新されることに注意してください。一方、[テキスト] プロパティは一方向のバインド フィールドで、更新できないデータのみを表示します。
例
この例では、プロセスで得られたカスタム リストから複数の項目を選択できるアプリを作成します。
この例では、以下を構築します。
- オートメーション プロセス
- UiPath Apps を使用するアプリ
ワークフローを構築する
この例の最初のステップは、UiPath Studio でワークフローを構築することです。これは、いくつかの引数で構成される簡単なワークフローです。
- Studio を開いて、新しいプロセスを作成します。
- 次の引数を作成します。
Argument name | Direction | Argument type | Default value |
---|---|---|---|
out_DataTable | Out | DataTable | - |
in_SelectedItems | In | DataTable | new DataDable |
filtered_SelectedItems | Out | DataTable | - |
- ワークフロー デザイナーに [シーケンス] をドラッグします。
- [シーケンス] コンテナーに、[データ テーブルを構築] アクティビティを追加します。
- [データ テーブル] フィールドに
out_DataTable
引数を追加します。 - [選択済み] という名前の列を追加します。
- 下図に示すように表を設定します。
- [データ テーブル] フィールドに

- [データ テーブルを構築] アクティビティの下に [条件分岐 (if)] アクティビティを追加し、以下の手順に従って設定します。
- [条件] フィールドに
in_SelectedItems.Rows.Count > 0
を追加します。 - 以下の表に示すように、[Then] と [Else] を設定します。
- [条件] フィールドに
Then | Else |
---|---|
1. Drag a Sequence inside the Then container. 2. Add an Assign activity inside the Sequence 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.3. Add a Log Message activity below the Assign activity. Set LogLevel to Info .Add filtered_SelectedItems.ToString in the Message field. | 1. Drag a Sequence inside the Else container. 2. Add a Log Message activity below the Assign activity. Set LogLevel to Info .Add "First run or empty" in the Message field. |
結果
最終的に、ワークフローは下図のようになります。

重要:
プロセスの入力または出力で複雑な .NET オブジェクト (DataTable など) を使用している場合、App Studio は、既定ではそのオブジェクトのフィールドを認識できません。フィールドを指定するには、次の 2 つの方法があります。
- アプリに追加する前にプロセスを実行します。プロセスがオブジェクトを使用する場合、Apps によってジョブの履歴が確認され、そのオブジェクトのスキーマ/フィールドが自動的に検出されます。
- プロセスの入出力用のオブジェクト フィールドを手動で指定します。プロセスにジョブの履歴がない場合は、プロセスがアプリに追加された後に、アプリで使用するためにフィールドを手動で指定する必要があります。
- 手動でプロセスに追加したパラメーターは、プロセスを更新すると削除されます。
アプリを構築する
After publishing the workflow build during the Building the workflow procedure to your Orchestrator, it's time to build the app itself.
- 新しいアプリを作成します。
- 上記で構築されたプロセスを参照します。プロセスを参照する方法について詳しくは、「[Orchestrator からプロセスを参照する](https://docs-legacy.uipath.com/apps/lang-ja/lang-ja/docs/connecting-your-app-to-an-orchestrator-tenant)」をご覧ください。
- 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 のエンティティなどの他のソースからのオブジェクトを渡すことができます。
6 か月前に更新