Apps (アプリ)
2023.10
バナーの背景画像
Apps ユーザー ガイド
最終更新日 2024年4月19日

クエリ ビルダー

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

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

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

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

  1. 目的のコントロールで、VB が有効なプロパティを選択します。これらの種類のプロパティは、[全般] タブの [VB データ ソース] フィールドで識別できます。
    docs image
  2. [クエリ ビルダー] を選択します。[クエリ ビルダー] ウィンドウが開きます。
  3. クエリを構築するエンティティを選択します。
  4. [条件] タブで、以下をクリックします。
    オプション説明

    条件を追加

    単一の条件を追加します。

    グループを追加

    複数の条件をグループ化します。

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

    • AND - すべての条件を満たす場合にデータを返します。

    • OR - いずれかの条件を満たす場合にデータを返します。

  5. データのクエリ元となるエンティティ フィールドを選択します。
  6. 評価演算子を選択します。
  7. - 条件の値を入力します。値の型は、フィールドの型と同じである必要があります。たとえば、Text 型のフィールドには文字列を使用し、Number 型のフィールドには整数を使用します。
  8. [その他の設定] タブで、クエリされたデータの並べ替えルールを設定できます。
    オプション説明

    フィールドで並べ替え

    クエリされたデータを、選択したフィールドで並べ替えます。

    昇順で並べ替え

    True の場合、クエリされたデータを昇順に並べ替えます。

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

Fetch 関数

クエリ ビルダーは、Fetch() 関数を使用してエンティティ データを取得して操作します。
Fetch() 関数には、次のパラメーターがあります。

FilterGroup

Data Service のフィルターのグループです。

PaginationProps

ページ サイズとスキップするレコードの数を指定します。

SortOption [] sortOptions

並べ替える列と並べ替えの順序を指定します。

string[] selectedFields

返す必要があるエンティティ フィールドを指定します。

ExpansionFieldOption[] expansionFieldOptions

リレーションシップ エンティティのどの列を展開して返すかを指定します。

Apps ではレベル 1 の展開が可能です。つまり、リレーションシップ フィールドがある場合、式では 1 レベルのプロパティがアクセス可能であると予期します。

これらのプロパティはクエリ ビルダーによって自動的に追加され、非システム エンティティの場合は必須です。

The FetchOne() function

Fetch() は、リスト コントロールと同じ型である ListSource<T> を返しますが、FetchOne() は T 型のレコードを 1 つ返します。
以下のシナリオの場合、結果をさらにカスタマイズするには、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"})

Was this page helpful?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
UiPath ロゴ (白)
信頼とセキュリティ
© 2005-2024 UiPath. All rights reserved.