필터 구조 - iOS

  • 릴리스 버전: Washingtondc
  • 업데이트 날짜 2024년 02월 01일
  • 읽기3분
  • 필터 구조는 REST 엔드포인트 쿼리의 반환 결과에 반환할 데이터를 정의하는 필터를 구성하는 기능을 제공합니다.

    필터 - init(criteria criteriaList: [Criteria], sortBy: [Sort]? = nil, queryCategory: String? = nil)

    함께 OR인 하나 이상의 필터 기준에 따라 필터를 생성합니다.

    표 1. 매개변수
    이름 유형 설명
    기준 배열 OR 커넥터로 그룹화할 최상위 기준 조건입니다.
    Sortby 문자열 옵션입니다. 반환 결과의 정렬 순서입니다.
    가능한 값:
    • 오름차순: 오름차순
    • 설명: 전송 취소

    기본값: asc

    쿼리 범주 문자열 옵션입니다. 쿼리 범주의 이름입니다.

    기본값: 없음

    표 2. 반환
    유형 설명
    없음

    다음 예제에서는 세 개의 개별 조건을 만들고 전달될 때 이러한 조건 중 하나라도 충족되면 반환 결과에서 기록이 다시 전달되는 것을 보여 줍니다.

    // 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])

    필터 - init(conditions: [QueryProviding], sorts: [Sort]? = nil)

    지정된 모든 조건(AND'd 함께)을 기반으로 필터를 작성합니다.

    표 3. 매개변수
    이름 유형 설명
    조건 QueryProviding AND 커넥터로 그룹화할 조건입니다.
    가능한 값:
    • 부울
    • Datetime
    • 이메일
    • 정수 선택
    • 숫자
    • 참조
    • 문자열
    • 문자열선택
    종류 문자열 옵션입니다. 반환 결과의 정렬 순서입니다.
    가능한 값:
    • 오름차순: 오름차순
    • 설명: 전송 취소

    기본값: asc

    표 4. 반환
    유형 설명
    없음

    다음 코드 예제에서는 이 함수를 호출하는 방법을 보여 줍니다.

    // 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])

    필터 - init(query: String, queryCategory: String? = nil)

    지정된 인코딩된 쿼리를 사용하여 필터를 작성합니다.

    표 5. 매개변수
    이름 유형 설명
    쿼리 문자열 인코딩된 쿼리 테이블에서 반환할 기록을 필터링하는 데 사용할 인코딩된 쿼리입니다.
    쿼리 범주 문자열 옵션입니다. 쿼리에 사용할 쿼리 범주의 이름입니다.
    표 6. 반환
    유형 설명
    없음

    다음 코드 예제에서는 이 함수를 호출하는 방법을 보여 줍니다.

    let query = "active=true^short_descriptionLIKEbroken"
    let filter = Filter(query: query)

    필터 - init(키워드: String? = nil, conditions: [Condition], sortBy: [Sort]? = nil)

    함께 사용되는 특정 키워드와 조건을 기반으로 필터를 작성합니다.

    표 7. 매개변수
    이름 유형 설명
    키워드 문자열 옵션입니다. 검색할 특정 단어 또는 구입니다.

    기본값: nil - 특정 단어 검색이 없습니다.

    조건 문자열 AND 커넥터로 그룹화할 조건입니다.
    가능한 값:
    • 부울
    • Datetime
    • 이메일
    • 정수 선택
    • 숫자
    • 참조
    • 문자열
    • 문자열선택
    Sortby 문자열 옵션입니다. 반환 결과의 정렬 순서입니다.
    가능한 값:
    • 오름차순: 오름차순
    • 설명: 전송 취소

    기본값: asc

    표 8. 반환
    유형 설명
    없음

    // 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)