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

Вниз

Фильтр на DataSet   Найти похожие ветки 

 
Sergey-ZZZ   (2004-02-14 12:15) [0]

Имеется dataSet на основе таблицы такой структуры Id (Int),FIO (VarChar(50)),ZP (VarChar(10)). Нужно на время отфильтровать этот набор данных по двум полям FIO и ZP. Кладу в свойство Filtr следующий фильтр (FIO="Иванов")AND((ZP="100")OR(ZP="200")). Выдает ошибку. Если я в ZP ставлю только одно условие - все нормально. Что делать и как это обойти. А мне нужно несколько условий. :(((
Помогите!


 
Hooch   (2004-02-14 12:22) [1]

какую ошибку выдает ? может кавычки не продублированы ?


 
Sergey-ZZZ   (2004-02-14 12:37) [2]

Кавычки тут ни при чем, тогда была бы ошибка и при одном условии на поле. А ошибка слудующая: "exception EOLEException. Аргументы имеют неверный тип, выходят за пределы допустимого деапозона или вступают в конфликт друг с другом."
Дело в том, что как только я убираю одно из условий:ZP="100" или ZP="200" все нормально.


 
sniknik   (2004-02-14 13:45) [3]

попробуй количество скобок уменьшить (были как проблемы с вложением скобок в фильтре), непомню конкретно что было но проверь так FIO="Иванов" AND (ZP="100" OR ZP="200")
гарантий что заработает как понимаеш никаких (уж больно смутно помю).
можно еще попробовать фильтр с in (в ADO работало) так
FIO="Иванов" AND ZP IN ("100", "200")


 
Sergey-ZZZ   (2004-02-14 14:46) [4]

Ни так FIO="Иванов" AND (ZP="100" OR ZP="200"),
ни так FIO="Иванов" AND ZP IN ("100", "200") не получается.
:(((


 
sniknik   (2004-02-14 15:16) [5]

(FIO="Иванов" AND ZP="100") OR (FIO="Иванов" AND ZP="200")
зато вот так проходит (проверил), странно да?


 
Sergey-ZZZ   (2004-02-14 15:35) [6]

Не то слово "странно". А прикинь если и по первому полю тоже надо несколько условий ставить. Красота...Как лучше сделать? Может другой какой-то метод есть? Уж больно не хочется еще раз данные с сервера тащить, а хочется отфильтровать уже существующие. Грущу и плачу :(((


 
sniknik   (2004-02-14 16:53) [7]

другой есть OnFilterRecord у DataSet.
а зачем еще раз тащить? перезапрос чтоли хочеш сделать?


 
Sergey-ZZZ   (2004-02-14 16:58) [8]

Ну да. Я уже перезапрос хотел делать, но благодаря тебе (или Вам) сделал как (FIO="Иванов" AND ZP="100") OR (FIO="Иванов" AND ZP="200") и работает. Но условий у меня много, это привел пример маленький, и текст фильтра формируется огого. А с OnFilterRecord как поступать?



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

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

Наверх





Память: 0.46 MB
Время: 0.014 c
14-43776
ИМХО
2004-02-18 14:53
2004.03.14
Описание RFC (на русском)


14-43856
reticon
2004-02-20 17:33
2004.03.14
Смена провайдера или непонимание глубины всех наших глубин


1-43568
ghg
2004-01-23 13:25
2004.03.14
matlab и Delphi


3-43331
Layner
2004-02-16 11:52
2004.03.14
Преоборазование БД ACCESS *.mdb в файл *.mde, или как зищитить


14-43799
Mike Kouzmine
2004-02-18 14:00
2004.03.14
Дежа вю





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский