UiPath Documentation
apps
latest
false
Apps ユーザー ガイド
重要 :
Studio Web のアプリ プロジェクトについては、Studio Web ガイドの「アプリ プロジェクト」セクション (https://docs.uipath.com/ja/studio-web/automation-cloud/latest/user-guide/apps-in-studio-web) をご覧ください。 このコンテンツの一部は機械翻訳によって処理されており、完全な翻訳を保証するものではありません。 新しいコンテンツの翻訳は、およそ 1 ~ 2 週間で公開されます。

クエリ ビルダー

クエリ ビルダーとそのフェッチベースの条件構文を使用して、コントロール内の Data Service のエンティティ レコードをフィルター処理、並べ替え、ページネーションします。

クエリ ビルダーを使用すると、定義済みの構文に従って、Data Service のエンティティからのデータをフィルター処理できます。

重要:

Fetch、FetchOne、GetChoiceSet、および GetChoiceSetValue 関数は非同期であり、チェーンをサポートしていません。

コントロールにエンティティ レコードを表示するには、アプリの変数と [値を設定] ルールを使用します。

クエリ ビルダーを使用して、コントロールのデータ ソースをエンティティにバインドすることもできます。

実際の使用例について詳しくは、「Fetch 関数を使用する」をご覧ください。

ヒント:

ページの読み込み時またはボタンのクリック時にエンティティ変数を更新するには、[値を設定] ルールを追加します。[値を設定] ルールでクエリ ビルダーを開き、フィルター条件として UpdateTime <= now( ) を追加します。

クエリ ビルダーを使用する​

クエリ ビルダーは、Fetch() 関数を使用して Data Service のエンティティを評価して並べ替えます。

前提条件として、アプリ内の既存の Data Service エンティティを参照する必要があります。クエリ ビルダーを使用するには、次の手順を実行します。

  1. 目的のコントロールで、VB が有効なプロパティを選択します。これらの種類のプロパティは、[全般] タブの [VB データ ソース] フィールドで識別できます。

  2. [クエリ ビルダー] を選択します。[クエリ ビルダー] ウィンドウが開きます。

  3. クエリを構築するエンティティを選択します。

  4. [条件] タブで、以下をクリックします。

    オプション説明
    条件を追加単一の条件を追加します。
    グループを追加複数の条件をグループ化します。

    条件を 2 つ以上追加すると、クエリは AND または OR 演算子に基づいてデータを評価して返します。

    • AND - すべての条件を満たす場合にデータを返します。
    • OR - いずれかの条件を満たす場合にデータを返します。
  5. データのクエリ元となるエンティティ フィールドを選択します。

  6. 評価演算子を選択します。

  7. 値 - 条件の値を入力します。値の型は、フィールドの型と同じである必要があります。たとえば、Text 型のフィールドには文字列を使用し、Number 型のフィールドには整数を使用します。

  8. 必要に応じて、[その他の設定] タブで、クエリされるデータに対してルールを設定します。

  9. [保存] を選択して、クエリを保存します。

その他の設定​

[その他の設定] タブで、クエリされるデータに対してルールを設定できます。

次の表で、[その他の設定] タブの各要素について説明します。

要素 説明
ページの開始インデックス (スキップ)

結果を返す前にスキップするレコードの数を定義できます。

たとえば、「10」と入力すると、クエリは 11 番目のレコードから開始されます。

[ページの開始インデックス] を設定すると、サイズの大きいデータセットを使用する場合にページネーションを行うのに役立ちます。

ページの上限

返すレコードの最大数を設定できます。

たとえば、「50」と入力すると、クエリは最初の 50 行を返します。

[ページの上限] を設定すると、クエリのサイズを制御するのに役立ちます。

並べ替えフィールドを追加

並べ替えフィールドを追加します。このフィールドを使用して、クエリされたデータの並べ替えルールを設定できます。

[フィールドで並べ替え] 要素と [昇順で並べ替え] 要素が表示されます。

フィールドで並べ替え データの並べ替えに使用するフィールドを入力できます。
昇順で並べ替え True の場合、クエリされたデータを昇順に並べ替えます。
プロジェクション 結果セットにのみ含める必要がある、エンティティの特定のフィールドを定義できます。

  • [プロジェクション] を使用すると、出力データを簡略化できます。
  • [プロジェクション] は、[値を設定] ルールからクエリ ビルダーを開いた場合にのみ利用できます。

Fetch 関数​

クエリ ビルダーは、Fetch() 関数を使用してエンティティ データを取得して操作します。Fetch() 関数は非同期であり、チェーンをサポートしていません。

Fetch() 関数には、次のパラメーターがあります。

パラメーター説明
FilterGroupData Service のフィルターのグループです。
PaginationPropsページ サイズとスキップするレコードの数を指定します。
SortOption[] sortOptions並べ替える列と並べ替えの順序を指定します。
string[] selectedFields返す必要があるエンティティ フィールドを指定します。
ExpansionFieldOption[] expansionFieldOptionsリレーションシップ エンティティのどの列を展開して返すかを指定します。 Apps ではレベル 1 の展開が可能です。つまり、リレーションシップ フィールドがある場合、式では 1 レベルのプロパティがアクセス可能であると予期します。 これらのプロパティはクエリ ビルダーによって自動的に追加され、非システム エンティティの場合は必須です。

The FetchOne() function​

Fetch() は、リスト コントロールと同じ型である ListSource<T> を返しますが、FetchOne() は T 型のレコードを 1 つ返します。

Fetch() 関数と同様に、FetchOne() 関数は非同期であり、チェーンをサポートしていません。

以下のシナリオの場合、結果をさらにカスタマイズするには、Fetch() 関数を手動で変更する必要があります。

簡易取得​

エンティティ (例: SystemUsers) のレコードの数を取得します。

Fetch(of SystemUsers)()
Fetch(of SystemUsers)()

フィルター条件で取得​

Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10))
Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10))

フィルター条件と並べ替え順序 (昇順) で取得​

Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10), new SortOption(){addSortOption("Date")})
Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10), new SortOption(){addSortOption("Date")})

フィルター条件と並べ替え順序で取得 (降順)​

Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10), new SortOption(){addSortOption("Date", true)})
Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10), new SortOption(){addSortOption("Date", true)})

静的な PaginationProps を使用して取得する​

Fetch(of SystemUsers)(Nothing, new PaginationProps(0, 100))
Fetch(of SystemUsers)(Nothing, new PaginationProps(0, 100))

コントロールがバインドされた PaginationPropsで取得する​

たとえば、編集グリッド コントロールの場合は次のようになります。

Fetch(of SystemUsers)(Nothing, new PaginationProps(MainPage.EditableGrid.PageStart, MainPage.EditableGrid.PageLimit))
Fetch(of SystemUsers)(Nothing, new PaginationProps(MainPage.EditableGrid.PageStart, MainPage.EditableGrid.PageLimit))

プロジェクションを使用して取得する​

Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10), Nothing, new string(){"Name"})
Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10), Nothing, new string(){"Name"})

このページは役に立ちましたか?

接続

ヘルプ リソース サポート

学習する UiPath アカデミー

質問する UiPath フォーラム

最新情報を取得