1

Тема: Search и Ftsearch. Поиск по коллекции документов в LotusScript.

db.Search - ищет медленно, Нестрогий поиск.
Пример:

formula$ = |@Contains(@lowercase(PoleDoc); @lowercase({| & uidoc.FieldGetText("PoleUI") & |}))|
Search(formula$,Nothing,0)

db.FTSearch - быстрый поиск по индексу базы, по ричтекст полям. Строгий поиск.
Пример:

formula$ ={[PoleDoc] CONTAINS "} & uidoc.FieldGetText("PoleUI")& {"}
FTSearch(formula$,0)

Поделиться

2

Re: Search и Ftsearch. Поиск по коллекции документов в LotusScript.

Вот пример правильного поиска с возможностью точного и неточного вхождения искомого слова в поле.
SearchFlag - флаговое поле для выбора типа поиска.

If uidoc.FieldGetText("SearchFlag")<>"" Then ' точный и неточный поиск
        Set dc=MUNdb.FTSearch(formula$,0)  ' точный - колекц. что нашли в базе МЮ недв
    Else
        Set dc=MUNdb.FTSearch(formula$,0,FT_DATE_DES,FT_STEMS+FT_FUZZY)  ' неточный поиск   
    End If

Поделиться

3

Re: Search и Ftsearch. Поиск по коллекции документов в LotusScript.

1. Поиск по дате  с индексом

formula$ = formula$+{ & [Adatereg] <=  }  & uidoc.FieldGetText("Date2")    
Set dc=MUdb.FTSearch(formula$,0)

           
2. Поиск без индекса           

formula$ = formula$+{ & @Date(Adatereg) <=  [}  & uidoc.FieldGetText("Date2") & {]}    
Set dc=MUdb.Search(formula$,Nothing,0) 

Поделиться