Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.25;
Скачать: CL | DM;

Вниз

Изменение данных в справочнике, отображение в таблицах.   Найти похожие ветки 

 
kengura   (2002-07-04 20:02) [0]

Вроде должен был уже вопрос обсуждаться, но не нашел. Есть справочник, есть связанные с ним таблицы (работаю с ними через TIBQuery). После измененения данных в справочнике приходиться переоткрывать эти запросы - Close, Open. Есть ли возможность перечитать только нужные записи в связанных таблицах?


 
Viewer   (2002-07-04 20:24) [1]

И как Вы себе это представляете ?
Вы изменили в справочнике запись поле с "Пупкин" на "Ступкин".
В связанной таблице есть записи 2,34,567,123456 ссылающиеся на
id c этим "Пупкиным-Ступкиным".
Что же может определить необходимость изменения отображения именно этих записей кроме как переоткрытия запроса ?


 
kengura   (2002-07-04 20:43) [2]

Viewer.
Никак себе не представляю, поэтому и спрашиваю. :)
Тем не менее переоткрывание 123456 с плюсом записей после изменений "Пупкин-Ступкин" кажется излишним, тем более если связанных таблиц несколько. Вот работает же как-то TIBUpdateSql через свойство RefreshSQL для отображения измененной записи без переоткрытия всего набора данных.


 
kaif ©   (2002-07-05 03:27) [3]

На самом деле TIBUpdateSql тоже переоткрывает запрос, но только для текущей строки набора. Видимо, Вы хотите избавиться не столько от переоткрытия, сколько от Fetch всех записей.
Если Вас устраивает механизм Refresh, применяемый TIBUpdateSql, то можно его воспроизвести. Можно вместо TIBQuery поставить TIBDataSet, прописать текст RefreshSQL. Потом просканировать имеющийся набор и сделать Refresh тех строк, где имеется данное значение ссылки на справочник. Чтобы не было мелькания в сетках можно заключить этот цикл в
IBDataSet.DisableControls
цикл сканирования набора с Refresh нужных строк
IBDataSet.EnableControls
Не знаю, что из этого выйдет, но можно попробовать...
Все зависит от соотношения количества и времени Refresh к общему времени просто переоткрытия запроса. Если конкретное значение справочника встречается редко, то можно получить выигрыш по скорости, если часто - то скорее значительный проигрыш.


 
Johnmen ©   (2002-07-05 09:31) [4]

По поводу kaif © (05.07.02 03:27) :
Короче - используй TIBDataSet и метод RefreshSQL



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

Текущий архив: 2002.07.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.015 c
14-81466
AlekseyK
2002-06-27 17:25
2002.07.25
Где можно взять прогу открывающую qrp файлы (файлы отчетов)


14-81422
Pag
2002-06-22 01:00
2002.07.25
подключение клиент сокета через прокси-сервер


3-81161
Sergey_
2002-07-04 09:06
2002.07.25
Помогите кто знает. Как задекларировать в Delphi переменные ...


3-81190
Link
2002-06-29 13:06
2002.07.25
фильтрация по дате


8-81387
Devid
2002-03-12 18:00
2002.07.25
Как заисать