XPages Точный поиск
Я использую элемент управления представлением в XPage и включил поиск с большим трудом.
У меня также есть выпадающий список, чтобы выбрать категорию, которая будет использоваться в качестве дополнительного фильтра при поиске.
Мой запрос сейчас:
sessionScope.searchTerm AND Field Category=" + sessionScope.categoryname + "
Наконец, все работает, за исключением того, что фильтр категорий находит неточные совпадения, например, "Управление" находит документы в категориях "Управление", но также и в "Управлении объектами". Это не приемлемо.
Я попытался установить searchExactMatch=true в свойствах View, но это дает трассировку стека, и в журнале появляется ошибка: "Ошибка поиска GTR: ошибка параметра с учетом регистра. Запрос не понятен"
Поэтому я предполагаю, что этот параметр предназначен для точных совпадений с регистром, а не для точных совпадений с поисковым термином, как это подразумевается. Не то, что написано в справке, но хорошо, я катаюсь с ударами, как обычно.
Если я использую "Фильтр по названию категории", фильтр категорий отлично работает без поискового запроса, и кажется, что поиск работает нормально, за исключением того, что параметр categoryFilter теперь игнорируется.
Похоже, это обычное поведение, когда все эти настройки работают нормально по отдельности, но никогда не в комбинации. Это то, что я нашел и для ключей просмотра.
У меня сейчас нет идей, кто-нибудь может предложить помощь?
2 ответа
Это немного хакерское решение, но у вас может быть дополнительное вычисляемое поле categorySearch с дополнительными разделителями контента, например, вы можете добавить дополнительные% символов: %Completed%, и тогда ваш поисковый запрос будет выглядеть так:
sessionScope.searchTerm AND Field categorySearch =% "+ sessionScope.categoryname +"%
Я ненавижу себя за предложение такого решения, но если эта работа тогда, возможно, я буду прощен.
Вы должны искать по этой статье: http://www-10.lotus.com/ldd/ddwiki.nsf/dx/Searching_for_Documents
В вашем случае сделайте следующее для категории:
"[Category] = \"" + sessionScope.categoryname + "\""