フィルター構造 - iOS
Filter 構造は、REST エンドポイント クエリの返される結果で返すデータを定義するフィルターを構成する機能を提供します。
Filter - init(criteria criteriaList: [Criteria], sortBy: [Sort]? = nil, queryCategory: String? = nil)
OR 化された 1 つ以上のフィルター基準に基づいてフィルターを作成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| 条件 | アレイ | OR コネクタでグループ化するためのトップレベルの条件。 |
| sortBy | 文字列 | オプション。返される結果のソート順。 可能な値:
デフォルト:asc |
| クエリカテゴリ | 文字列 | オプション。クエリカテゴリの名前。 デフォルト:なし |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、3 つの独立した基準を作成し、渡されたときにこれらの基準のいずれかが満たされた場合に、レコードが返される結果で返されることを示しています。
// All of criteria1 conditions must be met
let criteria1 = Criteria(conditions: …)
// OR all of criteria2 conditions must be met
let criteria2 = Criteria(conditions: …)
// OR all of criteria3 conditions must be met
let criteria3 = Criteria(conditions: …)
let filter = Filter(criterias: [criteria1, criteria2, criteria3])
Filter - init(conditions: [QueryProviding], sorts: [Sort]? = nil)
指定されたすべての条件に基づいてフィルターを作成します ([AND] まとめて列挙)
| 名前 | タイプ | 説明 |
|---|---|---|
| 条件 | クエリ提供 | AND コネクタを使用してグループ化するための条件。可能な値:
|
| 種類 | 文字列 | オプション。返される結果のソート順。 可能な値:
デフォルト:asc |
| タイプ | 説明 |
|---|---|
| なし |
次のコード例は、この関数を呼び出す方法を示しています。
// Where the record is active
let condition1 = Condition.boolean(field: "active", .is(true))
// AND the date value of the SLA due field is on "today" or any date after today.
let condition2 = Condition.dateTime(field: "sla_due", .atOrAfter(0, .daysAgoStart))
let filter = Filter(conditions: [condition1, condition2])
Filter - init(query: String, queryCategory: String? = nil)
指定されたエンコードクエリを使用してフィルターを作成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| クエリ | 文字列 | エンコードされたクエリ テーブルから返すレコードをフィルタリングするために使用するエンコードされたクエリ。 |
| クエリカテゴリ | 文字列 | オプション。クエリに使用するクエリカテゴリの名前。 |
| タイプ | 説明 |
|---|---|
| なし |
次のコード例は、この関数を呼び出す方法を示しています。
let query = "active=true^short_descriptionLIKEbroken"
let filter = Filter(query: query)
Filter - init(キーワード: 文字列? = nil, 条件: [条件], sortBy: [ソート]? = nil)
AND 化された特定のキーワードと条件に基づいてフィルターを作成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| キーワード | 文字列 | オプション。検索する特定の単語またはフレーズ。 デフォルト:nil - 特定の単語検索はありません。 |
| 条件 | 文字列 | AND コネクタを使用してグループ化するための条件。可能な値:
|
| sortBy | 文字列 | オプション。返される結果のソート順。 可能な値:
デフォルト:asc |
| タイプ | 説明 |
|---|---|
| なし |
// Keyword that must be found in the record
let searchTerm = "…"
// AND the specified condition must be met
let condition1 = Condition.email(field: "state", .changesFrom("4"))
let filter = Filter(keywords: searchTerm, condition: condition1)