• 🚨 Ещё можно успеть на курс «OSINT: технология боевой разведки» от Академии Кодебай

    🔍 Изучите методы разведки с использованием открытых источников (OSINT) для проведения успешных атак.
    🛠️ Освойте ключевые инструменты, такие как Maltego, TheHarvester и другие.
    🧪 Пройдите практические лабораторные работы, имитирующие реальную разведку.
    🧠 Развивайте навыки, которые помогут вам стать экспертом в области информационной безопасности.

    Запись открыта до 23 мая Подробнее о курсе ...

Поиск в Xpage

  • Автор темы Автор темы susinmn
  • Дата начала Дата начала
S

susinmn

Поделитесь, как у вас организован поиск во вью по частичному совпадению.
Сделал поиск как здесь, а интересует именно поиск по частичному совпадению.

XPages View Control - Add Full Text Search


Заранее, спасибо.
 
эммм.... а что мешает использовать в поиске условие @Contains?
 
эммм.... а что мешает использовать в поиске условие @Contains?

мешает незнание, как использовать @Contains вот в этой конструкции(

var tmpArray = new Array("");
var cTerms = 0;
if (sessionScope.searchFIO != null & sessionScope.searchFIO != "") {
tmpArray[cTerms++] = "(Field FirstName = \""+sessionScope.searchFIO+"\")";
tmpArray[cTerms++] = "(Field LastName = \""+sessionScope.searchFIO+"\")";
tmpArray[cTerms++] = "(Field MiddleName = \""+sessionScope.searchFIO+"\")"
}
qstring = tmpArray.join(" Or ").trim();
return qstring
 
Тю....
Ну попробуй так

Код:
var tmpArray = new Array("");
var cTerms = 0;
if (sessionScope.searchFIO != null & sessionScope.searchFIO != "") {

tmpArray[cTerms++] = "(@Contains( FirstName; \""+sessionScope.searchFIO+"\")";
tmpArray[cTerms++] = "(@Contains( LastName; \""+sessionScope.searchFIO+"\")";
tmpArray[cTerms++] = "(@Contains( MiddleName; \""+sessionScope.searchFIO+"\")"
}
qstring = tmpArray.join(" Or ").trim();
return qstring
 
Тю....
Ну попробуй так

Код:
var tmpArray = new Array("");
var cTerms = 0;
if (sessionScope.searchFIO != null & sessionScope.searchFIO != "") {

tmpArray[cTerms++] = "(@Contains( FirstName; \""+sessionScope.searchFIO+"\"))";
tmpArray[cTerms++] = "(@Contains( LastName; \""+sessionScope.searchFIO+"\"))";
tmpArray[cTerms++] = "(@Contains( MiddleName; \""+sessionScope.searchFIO+"\"))"
}
qstring = tmpArray.join(" Or ").trim();
return qstring

так пробовал, - *Веб-узел не может отобразить страницу*(
 
а звездочка после значения, т.е. searchFIO+"\"*)", как в фт-поиске, в коде из Сообщение #3. так не покатит из-за кавычек?
 
OKEN точно
Вот так будет работать. Перебор всех возможных совпадений по всем полям
Код:
var tmpArray = new Array("");
var cTerms = 0;
if (sessionScope.searchFIO != null & sessionScope.searchFIO != "") {
tmpArray[cTerms++] = '(Field FirstName = "*' + sessionScope.searchFIO + '*")';
tmpArray[cTerms++] = '(Field LastName = "*' + sessionScope.searchFIO + '*")';
tmpArray[cTerms++] = '(Field MiddleName = "*' + sessionScope.searchFIO + '*")';
}
qstring = tmpArray.join(" Or ").trim();
return qstring
Правда с ридерс и авторс полями не получилось
 
Правда с ридерс и авторс полями не получилось
а что не получилось? что надо было получить, а что получили. ну, имена там измените, ессно, просто задачу опишите на примерах...
ридерс-авторс - там или по аббревиатурной или по канонической искать надо, я вот не помню. (что-то мне кажется, что по аббревиатурной форме искало фт-поиском по БД - это без икспейджей, если что).
 
OKEN
Да мне лично не надо :welcome: Это я пытаюсь помочь :)
Человеку надо написать поиск по совпадению :) Я вот и предложил вариант
Только такой поиск не работает с ридерс и авторс полями.
 
Не находит.
Для ридерс-авторс полей нужен другой поиск
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!

Курс AD