| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > Проблема с фильтрацией по дате |
| Автор: Chechaco 31.10.2005, 04:20 |
| Здравствуйте, проблема такая: мне нужно отфильтровать таблицу по полю с датой, Необходимую дату я беру из DateTimePicker в формате 31.10.2005. Пишу следующую строку: Table1.Filter := 'FieldDate = ' + DateToStr(DateTimePicker1.Date); На что мне выдается нецензурный ответ, мол используется неправильный символ '.' (точка). В умной книжке вычитал что именно так и нужно писать,но почему-то не срабатывает. Если написать в Edit выражение вида FieldDate = 31.10.2005, а затем Table1.Filter := Edit1.Text то проходит на ура. Видимо результат DateToStr(DateTimePicker1.Date) все таки не воспринимается как текст. Объясните пожалуйста, в чем моя ошибка, или есть ли какие-либо другие пути решения? |
| Автор: Albinos_x 31.10.2005, 06:18 |
| код в студию... |
| Автор: Chechaco 31.10.2005, 06:37 |
| Не надо кода, функция QuotedStr() решила проблему, то есть выражение получилось такое: Table2.Filter := 'FieldDate = ' + QuotedStr(DateToStr(DateTimePicker1.Date)); Как я и предполагал фильтр не воспринимает результат функции DateToStr(DateTimePicker1.Date) как текст, так как нет кавычек. |