[ Pobierz całość w formacie PDF ]
.11.Następnie odszukaj aplikację RDB (która została uruchomiona przezmechanizm automatyzacji) i zamknij ją.Zignoruj komunikat o błędzie, któryzostanie wyświetlony, i kliknij Yes, aby zamknąć serwer aplikacji.646 Część IV12.Powróciwszy do RDC zauważysz, że możesz nadal pracować z załadowanymzestawem danych.Dokonaj w nich kilku zmian, a następnie zapamiętaj jelokalnie klikając przycisk btSave.13.Zamknij aplikację RDC, a następnie uruchom ją raz jeszcze.Spowoduje toponowne otwarcie serwera aplikacji RDB.Zauważ, że dokonane zmianyzostały utracone, ponieważ dane zostały na powrót pobrane z serwera bazydanych.14.Kliknij przycisk btLoad, aby załadować lokalną kopię danych.Terazpowinieneś zobaczyć swoje modyfikacje.15.Kliknij przycisk btSend, aby dokonane zmiany znalazły odzwierciedleniew serwerze.Jeśli teraz wyjdziesz z aplikacji i ponownie ją załadujesz, tospostrzeżesz, że zmiany, które pierwotnie zapamiętane były lokalnie, zostałyprzeniesione do kopii danych na serwerze.I to jest właśnie to, co mamy namyśli używając metafory aktówki - dane mogą być początkowo zapisywanezewnętrznie i dopiero pózniej, w dogodnej chwili, przenoszone, a mimo toprzez cały czas możemy pracować z nimi w sposób ciągły.Częściowe pakiety danychInną, wielce użyteczną cechą zaimplementowanej w Delphi technologii brokeradanych jest możliwość ściągania (download) do aplikacji klienckiej częściowychpakietów danych.Zamiast ładować cały zestaw danych rezultatu zapytania,projektant aplikacji może zdecydować się na pobieranie za jednym razem tylkomałego podzbioru rekordów.Jest to szczególnie i w pierwszym rzędzie korzystnew tych aplikacjach, które zwykle otrzymują jedynie niewielkie zestawy danych,takich jak aplikacje typu pozycja główna/szczegóły (master/detail).By zobaczyć,jak cecha ta uwidacznia się w praktyce, wykonajmy następujące kroki:1.Zakończ aplikację RDC, jeśli jeszcze działa.2.Umieść na formularzu komponent TStatusBar, który automatycznie doklei się do dolnej krawędzi formularza.3.Jego właściwość SimplePanel ustaw w Inspektorze obiektów na True.4.Kliknij komponent DataSource, a następnie w Inspektorze obiektówdwukrotnie jego zdarzenie OnDataChange.5.Do zdarzenie OnDataChange wpisz następujący kod:With DataSource1.DataSet doStatusBar1.SimpleText :=Format( %d / %d , [RecNo, RecordCount]);Rozdział 22 Poza granice modelu dwuwarstwowego 6476.Właściwość PacketRecords komponentu ClientDataSet ustaww Inspektorze obiektów na 5.Spowoduje to, że z serwera pobieranych będziepo pięć wierszy na raz.Ustawienie jej na -1 (domyślne) spowoduje pobieraniewszystkich wierszy, natomiast 0 pobiera jedynie informacje ze słownikadanych.7.Uruchom swoją aplikację.Podczas przewijania rekordów w komponencieDBGrid zauważysz, że aplikacja pobiera pięć nowych wierszy za każdymrazem, gdy przekroczysz wielokrotność pięciu dotychczas wyświetlanych.Tenpoziom sterowania pozwala w pełni określić, jaka część zestawu rezultatówbędzie sprowadzana do klienta za jednym razem.Może to mieć decydującywpływ na szybkość działania, zwłaszcza przy pracy z bardzo dużymi tablicamilub przy sięganiu do danych poprzez WAN.Na rysunku 22.1 pokazano, jak powinna wyglądać aplikacja RDC.Rysunek 22.1.Nasza aplikacjaklienta danychzdalnych w faziewykonania
[ Pobierz całość w formacie PDF ]