Ftsearch И Список Дат

leiba

Well-known member
18.06.2010
49
0
BIT
4
В БД есть документы со списковым полем типа DateTime.
Если искать в базе с помощью db.Search, то можно отобрать все документы, содержащие в этом поле хотя бы одну дату это года:
Date_Doc >= [01.01.2012]
Возможно ли бы сделать аналогичное с помощью db.FTSearch? Запрос вида:
[Date_Doc] >= 01.01.2012
возвращает только документы, где в списке одно значение.

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

VladSh

начинающий
Lotus Team
11.12.2009
1 797
158
BIT
232
leiba
1. Попробовать увеличить таймаут?
2. Перепроектировать приложение, чтобы в одном поле писать одну дату?
 

leiba

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

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

nvyush

Если я правильно понял, документы обрабатываются серверным агентом по расписанию. Может просто брать документы из представления, которому соответствующим образом настраивать формулу отбора?
 

savl

Lotus Team
28.10.2011
2 624
314
BIT
540
Ну да, глупость написал... Такие схемы нельзя использовать при FT.
В описании FT не говорится про множественные поля с датами, только про поле с одним значением.
И нашел немецкую переписку, где сказано, что FT не работает по множественным полям, в частности "дата".

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

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

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