Ftsearch И Список Дат

leiba

Well-Known Member
Lotus team
18.06.2010
47
0
46
Москва
#1
В БД есть документы со списковым полем типа DateTime.
Если искать в базе с помощью db.Search, то можно отобрать все документы, содержащие в этом поле хотя бы одну дату это года:
Date_Doc >= [01.01.2012]
Возможно ли бы сделать аналогичное с помощью db.FTSearch? Запрос вида:
[Date_Doc] >= 01.01.2012
возвращает только документы, где в списке одно значение.

Буду благодарен за совет.
 

VladSh

начинающий
Lotus team
11.12.2009
1 248
2
Киев (Русь)
#7
leiba
1. Попробовать увеличить таймаут?
2. Перепроектировать приложение, чтобы в одном поле писать одну дату?
 

savl

Well-Known Member
Lotus team
28.10.2011
2 116
157
32
#8
А вот так нельзя?
[Date_Doc] *>= 01.01.2012
 

leiba

Well-Known Member
Lotus team
18.06.2010
47
0
46
Москва
#9
leiba
1. Попробовать увеличить таймаут?
2. Перепроектировать приложение, чтобы в одном поле писать одну дату?
1. База 1 млн. документов. Оценить, какой нужен таймаут и что делать при дальнейшем росте, сложно. В общем не наш метод.
2. Глобально да! Но, затратно - много на структуру приложения завязано.
Не вдаваясь в описание данной базы скажу, что все даты в этом поле лежат в диапазоне от даты создания документа до даты модификации его. Соответственно решил использовать [_RevisionDate] и [_CreationDate]. Далее перебором. Всё одно быстрее Search получается (двойное обращение с FTSearchRange за полминуты успевает, а с Search минут 10).

Добавлено:
А вот так нельзя?
[Date_Doc] *>= 01.01.2012
---------------------------
IBM Lotus Notes
---------------------------
Query is not understandable
---------------------------
ОК
---------------------------
 

nvyush

Well-Known Member
Lotus team
22.04.2009
2 317
0
48
Подмосковье
#10
Если я правильно понял, документы обрабатываются серверным агентом по расписанию. Может просто брать документы из представления, которому соответствующим образом настраивать формулу отбора?
 

savl

Well-Known Member
Lotus team
28.10.2011
2 116
157
32
#11
Ну да, глупость написал... Такие схемы нельзя использовать при FT.
В описании FT не говорится про множественные поля с датами, только про поле с одним значением.
И нашел немецкую переписку, где сказано, что FT не работает по множественным полям, в частности "дата".

Только если как-то объединять значения.

Добавлено: А если сделать FTSearch не по базе, а по вьюхе? NotesView.FTSearch?
А во вьюхе сделать формулу отбора как вам надо.
Вариант не очень, но может сработать.