Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];

Вниз

Глюки фильтра TClientDataSet   Найти похожие ветки 

 
DelphiN! ©   (2004-11-04 16:25) [0]

Никто никогда не замечал что TClientDataSet.Filter глючит?

Ото я составляю правильный фильтр, а результаты мне выдаються неправильные! Фильтр составляю типа:
"(DATE >= 01,01,2004 and DATE <= 01,01,2010) and (COMP >= 1 and COMP <= 999) and (SUMMA > 0) and (PERIOD >= 1 and PERIOD <= 999)"

Данные такого типа(подходящие под данное условие) в таблице 100% есть, но фильтр показывает мне что таких данных нет

В чем дело?


 
sniknik ©   (2004-11-04 16:38) [1]

оччень правильный фильтр! ну прямо идеал.
(DATE >= 01,01,2004 and DATE <= 01,01,2010)

и постоянно у тебя виноват - компонент/другой/ктото но не я...


 
Silver Alex ©   (2004-11-04 16:43) [2]

используй лучше OnFilterRecord


 
DelphiN! ©   (2004-11-04 16:50) [3]

sniknik ©   (04.11.04 16:38) [1]
А что неправильно в (DATE >= 01,01,2004 and DATE <= 01,01,2010)
?


 
Johnmen ©   (2004-11-04 17:37) [4]

>01,01,2004

Что за числа перечислены ?


 
Mike Kouzmine ©   (2004-11-04 17:48) [5]

Johnmen ©   (04.11.04 17:37) [4] 01 01 2004


 
Johnmen ©   (2004-11-04 17:53) [6]

>Mike Kouzmine ©   (04.11.04 17:48) [5]
>01 01 2004

Что за инвентарный номер ?
:)


 
Mike Kouzmine ©   (2004-11-04 17:55) [7]

Johnmen ©   (04.11.04 17:53) [6] Ну хочеться ему так..


 
Mike Kouzmine ©   (2004-11-04 18:01) [8]

DelphiN! Почитай про запросы с параметрами. Будет и надежнее, и быстрее чем с фильтрами.


 
DelphiN! ©   (2004-11-05 06:27) [9]

>>Mike Kouzmine ©   (04.11.04 17:48) [5]
Какие числа перечислены, обычная дата как дата, как правильно тогда? Если написать в фильтре Date = 01,01,2004 то все работает ...

>Mike Kouzmine ©   (04.11.04 18:01) [8]
Не порекомендуешь ли ченить хорошее почитать?


 
DelphiN! ©   (2004-11-05 08:09) [10]

Даже без указания даты в фильтре таблица фильтруется неправильно, например в таблице есть поля, в столбце summa, значения которых: 150,100,80,60,50,30,40,1. Я делаю фильтр : (COMP >= 1 and COMP <= 999) and (SUMMA < 100) and (PERIOD >= 1 and PERIOD <= 999)

По идее должны выводиться все поля таблицы, где сумма < 100. Такие значения как 80,60,50,30,40,1 подходят, но выводятся поля столбца summa, только со значениями 0 и 1, а поля со значениями 80,60,50,30,40 не выводятся!

Почему и что делать?


 
sniknik ©   (2004-11-05 08:27) [11]

> По идее должны выводиться все поля таблицы, где сумма < 100.
по идее так и будет если исключить влияние остального и сделать только фильтр = SUMMA < 100


 
DelphiN! ©   (2004-11-05 08:30) [12]

>sniknik ©   (05.11.04 08:27) [11]

Остальные поля тоже по условию подходят все поля в столбцах COMP и PERIOD входят в диапазон от 1 до 999


 
sniknik ©   (2004-11-05 08:51) [13]

а проверить? чудес не бывает, у всего есть логическое обьяснение. (голословные заявления это не доказательство)


 
DelphiN! ©   (2004-11-05 15:37) [14]

Все разобрался, оказывается проблемма была в том что у таблицы все поля были типа string, проставил все поля по типам и все OK, Кстати как в фильтр передавать дату. У меня есть поле типа tDateTime и я кидаю фильтр скажем такой: date > 01.01.2004 он мне говорит неправильный фильтр, пробовал и 23:00 01.01.2004 и 01,01,2004 и как только не пробовал, так как дату и время в фильтр передать?


 
sniknik ©   (2004-11-05 16:14) [15]

"01.01.2004" со временем "01.01.2004 23:00:000" (вроде бы так, если национальные настройки не повлияют) кавычки обязательны


 
Rem ©   (2004-11-05 16:52) [16]

>>У меня есть поле типа tDateTime

var
 Date1: TDateTime;
 Date2: TDateTime;

"DATE>=" + IntToStr(Trunc(Date1)) + " AND DATE<=" + IntToStr(Trunc(Date2))


 
DelphiN! ©   (2004-11-06 06:51) [17]

Всем огромное спасибо за помошь!


 
Anatoly Podgoretsky ©   (2004-11-06 08:13) [18]

sniknik ©   (04.11.04 16:38) [1]
А кто же еще :-)



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.845 c
3-1099465064
onix
2004-11-03 09:57
2004.12.05
Картинки в БД


1-1100878838
hgd
2004-11-19 18:40
2004.12.05
Загрузка hlp


1-1100968084
lp
2004-11-20 19:28
2004.12.05
Grid


3-1099946296
Rusty
2004-11-08 23:38
2004.12.05
Filter в TTable или TQuery?


3-1099480069
dolmat
2004-11-03 14:07
2004.12.05
Запрос по двум базам





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский