Delphi ANY-DAC MS SQL początki

0

Witam

Jestem na początku uczenia się Delphi, Any-DAC i MS SQL, między innymi dzięki pomocy użytkowników forum udało mi się stworzyć aplikacje która poprzez darmowy ANY DAC łączy się z baza na serwerze MS-SQL2005 – przeróbka aplikacji z DBF.
Przy starcie aplikacji otwieram wszystkie DataSety (największy ma około 300 tyś rekordów)
A następnie w aplikacji do grida pobieram dane wg odpowiednich selektów.

Jednakże napotkałem problem z odświeżeniem zawartości danych.

Na pierwszym kliencie dokonuje wpisu do tabeli (akceptacja zapisu post) i teraz gdy uruchamiam nową aplikacje na drugim kliencie to widzę zmiany wprowadzone na pierwszym.

Natomiast gdy obie aplikacje pracują jednocześnie to na pierwszym kliencie nie widzę zmian wprowadzanych na drugim i na odwrót.
Gdy uruchomię trzecia to widzę zmiany wprowadzone w dwóch poprzednich.

Proszę o pomoc jak rozwiązać powyższy problem.

0

Ciekawe dlaczego co nie?

Otoz jesli aplikacja nr 1 dokona zmian to wymagane jest odswiezenie query ktorego uzywasz do wyswietlania w gridzie. Uruchamiajac aplikacje nr 2 query jest otwierane i ladowane sa juz nowe rekordy itd itd. Po dokonaniu zmian wykonaj qruery.refresh lub query.close a potem query.open;

0

o ile dobrze pamiętam to DBGrid też posiada metodę Refresh
bez względu na łączenie z DBF czy serwerem SQL

0

@woolfik
szybszy o 123 ms :)) [browar]

0

Witam

Dziękuje za informacje. Do obsługi dbf używałem komponentu Advantage i nie miałem problemu z odświeżaniem danych, blokowaniem rekordów itp.

Refresh umieściłem w Onshow grida i wszystko jest OK.
I tu wyszedł nowy temat, iż Refresh muszę używać każdorazowo gdy pobieram jakiekolwiek dane z tabeli potrzebne do wyliczeń czy wydruków.

Jeszcze raz dziękuje za odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1