множественный поиск в документах домино - PullRequest
0 голосов
/ 06 февраля 2019

В событии onclick кнопки я хотел бы найти документ заметок с несколькими условиями с помощью ssjs.

У меня есть форма с несколькими полями.Теперь я хотел бы найти документ с примечаниями, где поле a = "123" и поле b = "456", поле c = "789" и поле d> "A123456", а затем я хотел бы прочитать содержимое поля e.

Если бы это был поиск в представлении, я бы использовал что-то вроде:

var tmpArray = new Array("");
var cTerms = 0;
if(viewScope.fong != null & viewScope.fong != "") {
tmpArray[cTerms++] = "(FIELD Site = \"" + viewScope.fong + "\")"
}
if(@Text(viewScope.sDate) != null & @Text(viewScope.sDate) != "") {
tmpArray[cTerms++] = "(FIELD StartDate = \"" + @Text(viewScope.sDate) + "\")"
}
qstring = tmpArray.join(" AND ").trim();
viewScope.queryString = qstring;
return qstring 

Если бы у меня было только 1 условие, я бы использовал @DbLookup (и все же, как выбирать документы> "A123456"?)

Какой лучший способ сделать это в ssjs?

UPDATE

пробовал с помощью FTSearch, но, похоже, в поисковом ключе" FIELDd> A123456 ", похоже, не работает

ДРУГОЕ ОБНОВЛЕНИЕ

var dc = db.FTSearch (" FIELD a = 123 и FIELD b = 456 и FIELDd = A123456 ");кажется, работает, но

var dc = db.FTSearch ("FIELD a = 123 и FIELD b = 456 и FIELD d> A123456");не делает.Выдает ошибку: возникла исключительная ситуация при вызове метода NotesDatabase.FTSearch (string) null

1 Ответ

0 голосов
/ 08 февраля 2019

Если вы хотите использовать операторы сравнения> и <, вам нужно использовать метод <a href="https://www.ibm.com/support/knowledgecenter/en/SSVRGU_9.0.1/reference/r_domino_Database_search.html" rel="nofollow noreferrer"> NotesDatabase.Search вместо FTSearch.Поиск медленнее и не может получить доступ к данным в полях без сводки (т. Е. В расширенном тексте), но у него есть все те же возможности, которые вы можете использовать в формуле выбора представления.

...