| 
| 
 | Вопрос # 5 792/ вопрос решён / | 
 |  Доброго времени суток, уважаемые эксперты!Подскажите, как при помощи фильтра выделить диапазон данных
 по двум полям ‘дата’ и ’время’, например, с 01.01.12   20:00 по 20.12.12  18:00,  .
 Приведенный код фильтрует, но не так как надо.
 
 AdoTable.filter:='дата >='+quotedstr(formatDateTime('dd.mm.yy',(dateTimePicker5.Time)))+' and '
 +'время >='+quotedstr(FormatDateTime('hh:00',(dateTimePicker6.Time)))+' and '+'дата <='+quotedstr(formatDateTime('dd.mm.yy',(dateTimePicker7.Time)))+' and '
 + 'время <='+quotedstr(FormatDateTime ('hh:00',(dateTimePicker9.Time)));
 
|  |   Вопрос задал: alexsandr (статус: Посетитель)Вопрос отправлен: 2 декабря 2011, 16:01
 Состояние вопроса: решён, ответов: 1.
 |  Ответ #1. Отвечает эксперт: Вадим К Здравствуйте, alexsandr!Условие должно правильно учитывать промежуток.
 давайте, что бы не перегружать мозк, введем обозначения - дс - дата старта, дк - дата конца, вс и вк. дс к примеру будет равен чему то такому formatDateTime('dd.mm.yy',(dateTimePicker5.Time)) (ну и дальше по Вашей логике). д и в - дата и время.
 Результирующее условие будет такое
 ((д = дс и в > вс) или (д>дс)) и ((д < дк) или (д = дк и в < вк))
 и = and
 или = or
 
|  | Ответ отправил: Вадим К (статус: Академик)Время отправки: 2 декабря 2011, 18:55
 Оценка за ответ: 5
 |  
 Мини-форум вопросаВсего сообщений: 7; последнее сообщение — 3 декабря 2011, 19:17; участников в обсуждении: 3. 
|   | alexsandr (статус: Посетитель), 2 декабря 2011, 19:15 [#1]:Благодарю Вадим, попробую отпишусь. |  
|   | Вадим К (статус: Академик), 2 декабря 2011, 19:17 [#2]:это был сарказм? оценка 1 ??? Галочка "подтверждения прочтения" - вселенское зло. |  
|   | alexsandr (статус: Посетитель), 2 декабря 2011, 19:55 [#3]:Нет!!! Вадим ни в коем разе, досадная ошибка, прошу прощения. Как исправить?
 Своевременная и нужная помощь 5 !!!
 |  
|   | Ерёмин А.А. (статус: *Администратор), 2 декабря 2011, 20:35 [#4]:alexsandr: а каким местом вы думали, когда ставили 1? Там по-русски написано, что изменить оценку нельзя. |  
|   | alexsandr (статус: Посетитель), 3 декабря 2011, 11:23 [#5]:Вадим, большое спасибо за помощь, всё получилось. 
 Ещё раз прошу прошения за мою неуклюжесть.
 |  
|   | Ерёмин А.А. (статус: *Администратор), 3 декабря 2011, 14:09 [#6]:Оценка изменена с единицы на пятёрку, но в будущем не ляпайте что попало. |  
|   | alexsandr (статус: Посетитель), 3 декабря 2011, 19:17 [#7]:Спасибо. Тема закрыта.
 |  3 декабря 2011, 19:44: Статус вопроса изменён на решённый (изменил модератор Ерёмин А.А.): Вот теперь закрыта. Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |