STRUCTURED_QUERY_RESOLVE_OPTION 열거형(structuredquery.h)
조건 트리로 데이터를 확인하는 옵션입니다.
Syntax
typedef enum STRUCTURED_QUERY_RESOLVE_OPTION {
SQRO_DEFAULT = 0,
SQRO_DONT_RESOLVE_DATETIME = 0x1,
SQRO_ALWAYS_ONE_INTERVAL = 0x2,
SQRO_DONT_SIMPLIFY_CONDITION_TREES = 0x4,
SQRO_DONT_MAP_RELATIONS = 0x8,
SQRO_DONT_RESOLVE_RANGES = 0x10,
SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS = 0x20,
SQRO_DONT_SPLIT_WORDS = 0x40,
SQRO_IGNORE_PHRASE_ORDER = 0x80,
SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES = 0x100,
SQRO_ADD_ROBUST_ITEM_NAME = 0x200
} ;
상수
SQRO_DEFAULT 값: 0 Windows 7 이상 기본 플래그입니다. |
SQRO_DONT_RESOLVE_DATETIME 값: 0x1 이 플래그를 설정하지 않는 한 pConditionTree 의 상대 날짜/시간 식은 pstReferenceTime이 가리키는 참조 날짜/시간에 대해 확인된 절대 날짜/시간 범위로 바뀝니다. 예를 들어 AQS 쿼리에 상대 날짜/시간 식 "date:this month"가 포함되어 있고 참조 날짜/시간이 2006년 9월 19일 10:28:33인 경우 확인된 조건 트리에는 2006년 9월 1일 00:00:00부터 시작하여 2006년 1월 1일 00:00:00(UTC 표준 시간대)에 끝나는 날짜/시간 범위가 포함됩니다. |
SQRO_ALWAYS_ONE_INTERVAL 값: 0x2 이 플래그를 설정하지 않는 한 상대 날짜/시간 식을 확인하면 OR 간격이 여러 번 발생할 수 있습니다. 예를 들어 AQS 쿼리에 "date:Monday"가 포함되어 있고 참조 날짜/시간이 2006년 9월 19일 10:28:33(화요일)인 경우 확인된 조건 트리에는 2006년 9월 11일 월요일에 해당하는 3개의 24시간 범위 의 OR 이 포함됩니다. 2006년 9월 18일과 2006년 9월 25일, 어떤 월요일이 참조되었는지 명확하지 않기 때문입니다. 이 플래그가 설정되면 결과는 항상 단일 날짜/시간 범위가 됩니다(이 예에서는 날짜/시간 범위가 9/18/2006 00:00:00에서 시작하여 2006년 9월 19일 00:00:00에 종료됨). |
SQRO_DONT_SIMPLIFY_CONDITION_TREES 값: 0x4 이 플래그를 설정하지 않으면 결과 조건 트리에 적용할 수 있는 단순화가 적용됩니다. |
SQRO_DONT_MAP_RELATIONS 값: 0x8 이 플래그가 true가 아니면 여러 속성에 매핑되는 가상 속성이 있는 리프 노드는 실제 속성을 포함하는 리프 노드의 OR 로 대체됩니다. 예를 들어 AQS 쿼리 "to:Bill"은 명명 System.StructuredQuery.Virtual.To 된 속성이 실제로 두 속성 및 System.Message.ToName 에 매핑되는 리프 노드를 생성할 수 있으므로 확인된 조건 트리에는 해당 두 속성 System.Message.ToAddress 에서 "Bill"을 찾는 OR이 있을 수 있습니다. |
SQRO_DONT_RESOLVE_RANGES 값: 0x10 date/time 식(예: "20..40")에서 생성된 범위는 먼저 punkVal 멤버가 IInterval 인터페이스를 구현하는 VT_UNKNOWN 값이 있는 리프 노드로 확인됩니다. 이 플래그를 설정하지 않는 한 반환된 조건 트리는 COP_GREATERTHANOREQUAL 및COP_LESSTHAN 같은 간단한 비교의 AND로 추가로 확인됩니다. 예를 들어 2006년 9월 19일 10:28:33에 대해 확인된 AQS 쿼리 "date:this month"의 경우 이 플래그가 설정되지 않은 경우 결과 조건 트리는 System.ItemDate COP_GREATERTHANOREQUAL 9/1/2006 00:00:00 및 System.ItemDate COP_LESSTHAN 10/1/2006 00:00:00입니다. 이 플래그가 설정되면 결과 조건 트리는 System.ItemDate를 IInterval::GetLimits 메서드가 ILK_EXPLICIT_INCLUDED, 9/1/2006 00:00:00, ILK_EXPLICIT_EXCLUDED 및 2006년 1월 1일 00:00:00을 반환하도록 System.ItemDate를 IInterval과 연결합니다. |
SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS 값: 0x20 무제한 키워드(keyword) 조건을 완료하는 값과 연결되지 않은 키워드(keyword). 예를 들어 다음 AQS 쿼리에서 "From"으로 표시된 속성은 무제한 키워드(keyword) 간주됩니다. "Kind:email Subject:"My Resume" From:". 이 플래그가 설정된 경우 이러한 속성은 결과 조건 트리에 COP_IMPLICIT 작업, 빈 문자열 값 및 System.StructuredQueryType.Value의 의미 체계 형식이 있는 리프 노드로 표시됩니다. 그렇지 않으면 완전히 제거됩니다. |
SQRO_DONT_SPLIT_WORDS 값: 0x40 이 플래그를 설정하면 공백으로 구분되지 않은 단어 그룹이 단일 리프 노드에 함께 유지됩니다. 이 플래그를 설정하지 않으면 그룹이 별도의 리프 노드로 분할됩니다. 결과 트리가 추가 단어 분리를 수행해야 하는 코드에 의해 추가로 처리될 경우 애플리케이션에서 조건 트리를 확인할 때 이 플래그를 설정할 수 있습니다. |
SQRO_IGNORE_PHRASE_ORDER 값: 0x80 AQS 쿼리의 구가 큰따옴표로 묶인 경우 이 플래그가 설정되지 않는 한 해당 구의 단어는 단일 리프 노드( SQRO_DONT_SPLIT_WORDS 설정 여부에 관계 없이)로 이동하며, 이 경우 별도의 리프 노드로 끝나고 순서는 더 이상 중요하지 않습니다. 애플리케이션이 여러 단어로 리프 노드를 올바르게 처리할 수 없는 경우 이 플래그를 설정할 수 있습니다. |
SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES 값: 0x100 |
SQRO_ADD_ROBUST_ITEM_NAME 값: 0x200 단어 분리기에서 알려진 문제를 해결하여 필요에 따라 PKEY_ItemNameDisplay 조건을 추가합니다. |
설명
STRUCTURED_QUERY_RESOLVE_OPTION 형식은 다음과 같이 StructuredQuery.h에 정의됩니다.
typedef int STRUCTURED_QUERY_RESOLVE_OPTION;
요구 사항
지원되는 최소 클라이언트 | WINDOWS XP SP2, Windows Vista, Windows 7 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
머리글 | structuredquery.h |
재배포 가능 파일 | WDS(Windows 데스크톱 검색) 3.0 |