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

Вниз

фильтрация в dbf   Найти похожие ветки 

 
lety   (2002-07-26 22:19) [0]

Задается условие для фильтрации TTable в обработке onFilterRecord. Дальше Filtered:=true;
А дальше условие для фильтрации меняется.
Для парадоксовских таблиц я делала Table1.Refresh или
Table1.Filtered:=false;
Table1.Filtered:=true;

а для dbf (FoxPro 2.5) новая фильтрация уже не делается. Т.е. ее можно отменить, а если сделать Table1.Filtered:=true; то ни одной записи уже не показывается.
Работает только если закрыть-открыть таблицу.

Что можно сделать?


 
NNH   (2002-07-27 11:55) [1]

А разве трудно написать: закрыть таблицу, присвоить фильтр, открыть таблицу?
Может и коряво, но если работает, то какая разница?


 
Anatoly Podgoretsky   (2002-07-27 12:30) [2]

Вообще то, что то у тебя не то, что то недоговариваешь, может привести более подробный код, Refresh должен работать, дополнительно желательно сделать .First, сообственно достаточно только его или любого перемещения, может у тебя кроме onFilterRecord используется еще и .Filter

В принципе ты можешь для каждого вызова onFilterRecord применять новое правило, только спровоцируй вызов, это перемещение по таблице. А вот для .Filter могут быть особенности. Есть еще одна вещь, настройки BDE может кешируется, попробуй поставить Local Share = true

Во всяком случае за 7 лет работы я не встретил никаких проблем с onFilterRecord



 
LOM153   (2002-07-27 18:11) [3]

Сталкивался я с этим:) Оптимальный выход - ставить пару строк:
Table1.Filter:=nil;
Table1.Filter:=XXXXXXX; // -нужный тебе фильтр
А иначе оно ищет по ОТФИЛЬТРОВАННЫМ записям, что тоже иногда полезно:)))))


 
LOM153   (2002-07-27 18:20) [4]

А вот может кто подскажет оптимальный выход для фильтрации по LookUp полям в dbf? Обычный фильтр тут не спасает, пришлось создать функцию,которая по значению поля находит значение LookUp поля (причем по новой!-при фильтрации значение лукапаов неопределимо:((() - сравнивает с нужным и возвращает ответ,который уже и используется для Accept. Но как все это долго работает! Тем паче когда у меня таблица со многими такими полями, да еще и связи 3-4 порядка.....



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

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

Наверх





Память: 0.45 MB
Время: 0.007 c
3-47946
Mad Mike
2002-07-22 20:09
2002.08.15
Как посчитать номер записи?


1-48195
Evyshka
2002-08-02 15:54
2002.08.15
Kernel32.dll


3-47920
awaken
2002-07-25 03:29
2002.08.15
Проблема при выполнении большого запроса через ADO


14-48250
blackman
2002-07-19 11:14
2002.08.15
Была сделана примитивная задачка.


14-48255
Дремучий
2002-07-18 13:26
2002.08.15
первая лпасточка... UBPFD off-line Сlient





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