D
DNT
Ищу документы в БД при помощи Set dc = db.FTSearch(FTQuery, 0, 64,16384), где FTQuery довольно таки большая строка в которой указываю поля и соответствующие им значения для поиска.
Всё бы ничего, но столкнулся с полем "День рождения" (БД предствляет собой адресную книгу) в котором указывается день/месяц/год. При построении запроса пользователь в поисковой форме указывает период за который нужно найти всех именинников.
Так вот чёто не соображу никак: как бы мне сравнивать поля без учета года?
Вот в таком виде (написан без включения мозга
):
FTQuery = FTQuery + { And [Birthday] >= } + Cstr(searchDoc.DateBegin(0))
FTQuery = FTQuery + { And [Birthday] <= } + Cstr(searchDoc.DateEnd(0))
скрипт отрабатывает естественно неправильно т.к поле Birthday (например) равно 15.04.1975, а для поиска используется диапазон 01.04.2007-30.04.2007, и ошибочно этот человек не находится.
Как победить? Спасибо.
Всё бы ничего, но столкнулся с полем "День рождения" (БД предствляет собой адресную книгу) в котором указывается день/месяц/год. При построении запроса пользователь в поисковой форме указывает период за который нужно найти всех именинников.
Так вот чёто не соображу никак: как бы мне сравнивать поля без учета года?
Вот в таком виде (написан без включения мозга

FTQuery = FTQuery + { And [Birthday] >= } + Cstr(searchDoc.DateBegin(0))
FTQuery = FTQuery + { And [Birthday] <= } + Cstr(searchDoc.DateEnd(0))
скрипт отрабатывает естественно неправильно т.к поле Birthday (например) равно 15.04.1975, а для поиска используется диапазон 01.04.2007-30.04.2007, и ошибочно этот человек не находится.
Как победить? Спасибо.