Article View: pl.comp.lang.delphi.bazy-danych
Article #243Re: TQuery a TTable (aktualizacja) - pilne!
From: Radek Wroblewski
Date: Wed, 14 Apr 1999 09:34
Date: Wed, 14 Apr 1999 09:34
45 lines
2935 bytes
2935 bytes
>> Chce teraz, zeby program po kliknieciu przez uzytkownika na >> wybranym rekordzie w DBGrid'zie automatycznie ustawil w TTable >> dla TABLE_ZAM ten sam rekord jako biezacy. >> (...) > >Proponuje użyć metody Locate. Wystarczyło by chyba tak: Ze tez na to nie wpadlem. Dzieki! Ale... To niestety nie rozwiazuje problemu. Wlozylem to do zdarzenia AfterScroll dla TQuery. Niestety to zdarzenie wywolywane jest nie tylko przy zmianie aktualnego rekordu, ale rowniez podczas wykonywania zapytania SQL. Nie bede pisal cos sie dzieje przy Locate dla kazdego kolejnego rekordu zwroconego z zapytania :-( Pytanie, czy jest moze jakies property, dzieki ktoremu mozna sprawdzic, ze zapytanie juz zostalo wykonane ? Wtedy w AfterScroll mialbym tylko warunek sprawdzajacy czy zapytanie jest wykonane i dopiero wtedy wywolywalbym Locate. A dokladniej cala sprawa wyglada tak: Jest DataModule. Tam jest TTable z TDataSrc oraz TQuery z TDataSrc. Jest okno glowne programu, ktory uzywa komponentow nie-DBGrid tylko zwyklych TEditow i innych (akurat tak musialem). Dla TTable mam zdarzenie AfterScroll, ktore aktualizuje pola tych Editow na glownej formie. To dziala. Jest jednak i drugie okienko z DBGrid'em, ktore w zaleznosci od wyboru wyswietla albo TTable w pelnej postaci albo to co jest wynikiem zapytania dla TQuery. To dziala ok. Chce jednak, zeby po wykonaniu zapytania i wyswietleniu w DBGrid jego wynikow, wybieranie wierszy z DBGrida powodowalo ustawienie rekordu w TTable na rekord z TQuery aktualnie wybrany w DBGrid, a co za tym idzie wypelnienie pol na glownej formie. To tez jest proste do zrobienia poprzez AfterScroll dla TQuery, lecz moj problem polega na tym, ze AfterScroll dla TQuery jest wywolywany dla kazdego rekordu dodawanego do DBGrida podczas wykonywania zapytania. Jak wiec zabezpieczyc sie przed tym? A moze jest jakis inny sposob na synchronizacje rekordow z TQuery i TTable ? Acha, TTable i TQuery odwoluja sie do tej samej bazy danych (Paradox). Prosze o pomoc... Pozdrawiam, Radek
Technical Details
Message-ID:
<3714641b.0@news.vogel.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!agh.edu.pl!news.wnaft.agh.edu.pl!news.memax.krakow.pl!cyfronet!security.net.pl!news.vogel.pl!pb217.krakow.ppp.tpnet.plReferences:
<371372ac.0@news.vogel.pl> <01be85ea$7e42c8a0$037f8080@modem>Show Full Headers
Complete Article Headers
From: "Radek Wroblewski" <radekw@friko3.onet.pl> Newsgroups: pl.comp.lang.delphi.bazy-danych References: <371372ac.0@news.vogel.pl> <01be85ea$7e42c8a0$037f8080@modem> Subject: Re: TQuery a TTable (aktualizacja) - pilne! Date: Wed, 14 Apr 1999 11:34:50 +0200 Lines: 47 MIME-Version: 1.0 X-Newsreader: Microsoft Outlook Express 4.72.2106.4 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.2106.4 NNTP-Posting-Host: pb217.krakow.ppp.tpnet.pl X-NNTP-Posting-Host: pb217.krakow.ppp.tpnet.pl Message-ID: <3714641b.0@news.vogel.pl> X-Trace: 14 Apr 1999 11:47:07 +0100, pb217.krakow.ppp.tpnet.pl X-Complaints-To: Usenet@vogel.pl Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!agh.edu.pl!news.wnaft.agh.edu.pl!news.memax.krakow.pl!cyfronet!security.net.pl!news.vogel.pl!pb217.krakow.ppp.tpnet.pl Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit