W większości nowoczesnych aplikacji bazodanowych jakiś rodzaj graficzna reprezentacja danych jest preferowany, a nawet wymagany. Do takich celów Delfy zawiera kilka komponentów obsługujących dane: DBImage, DBChart, DecisionChart itp. DBImage jest rozszerzeniem komponentu Image, który wyświetla obraz w polu BLOB. Rozdział 3 tego kurs bazy danych omówiono wyświetlanie obrazów (BMP, JPEG itp.) w bazie danych Access z ADO i Delphi. DBChart jest graficzną wersją komponentu TChart obsługującą dane.
Naszym celem w tym rozdziale jest wprowadzenie TDBChart poprzez pokazanie, jak zintegrować podstawowe wykresy z aplikacją opartą na Delphi ADO.
TeeChart
Składnik DBChart to potężne narzędzie do tworzenia wykresów i wykresów w bazie danych. Jest nie tylko potężny, ale także złożony. Nie będziemy badać wszystkich jego właściwości i metod, więc będziesz musiał z nim eksperymentować, aby odkryć wszystko, co potrafi i jak najlepiej dopasować do twoich potrzeb. Korzystając z DBChart z TeeChart silnik wykresów umożliwia szybkie tworzenie wykresów bezpośrednio dla danych w zestawach danych bez konieczności wprowadzania kodu. TDBChart łączy się z dowolnym źródłem danych Delphi. Zestawy rekordów ADO są natywnie obsługiwane. Nie jest wymagany żaden dodatkowy kod - lub tylko trochę, jak zobaczysz. Edytor wykresów poprowadzi Cię przez kolejne etapy łączenia się z danymi - nie musisz nawet przechodzić do Inspektora obiektów.
Biblioteki Runtime TeeChart są dołączone jako część wersji Delphi Professional i Enterprise. TChart jest również zintegrowany z QuickReport z niestandardowym składnikiem TChart na palecie QuickReport. Delphi Enterprise zawiera kontrolkę DecisionChart na stronie Kostka decyzyjna palety składników.
Przygotowanie do wykresu
Naszym zadaniem będzie stworzenie prostego formularza Delphi z wykresem wypełnionym wartościami z zapytania do bazy danych. Aby kontynuować, utwórz formularz Delphi w następujący sposób:
1. Uruchom nową aplikację Delphi - domyślnie tworzony jest jeden pusty formularz.
2. Umieść następny zestaw komponentów w formularzu: ADOConnection, ADOQuery, DataSource, DBGrid i DBChart.
3. Użyj Inspektora obiektów, aby połączyć ADOQuery z ADOConnection, DBGrid z DataSource z ADOQuery.
4. Skonfiguruj łącze z naszą bazą danych demonstracyjnych (aboutdelphi.mdb), używając ConnectionString komponentu ADOConnection.
5. Wybierz składnik ADOQuery i przypisz następny ciąg do właściwości SQL:
WYBIERZ TOP 5 klientów. Firma,To zapytanie wykorzystuje dwie tabele: zamówienia i klienta. Obie tabele zostały zaimportowane z bazy danych DBDemos (BDE / Paradox) do naszej bazy demonstracyjnej (MS Access). To zapytanie powoduje, że zestaw rekordów zawiera tylko 5 rekordów. Pierwsze pole to nazwa firmy, drugie (SumItems) to suma wszystkich zamówień złożonych przez firmę, a trzecie pole (NumOrders) reprezentuje liczbę zamówień złożonych przez firmę. Zauważ, że te dwie tabele są połączone w relacji główny-szczegółowy.
SUM (Orders.itemstotal) AS SumItems,
COUNT (zamowienia.orderno) AS NumOrders
OD klienta, zamówienia
GDZIE klient. Klient = zamówienia. Klient
GRUPUJ WEDŁUG klienta. Firma
ZAMÓWIENIE WEDŁUG SUMY (zamówień.itemstotal) DESC
6. Utwórz trwałą listę pól bazy danych. (Aby wywołać edytor pól, kliknij dwukrotnie komponent ADOQuery. Domyślnie lista pól jest pusta. Kliknij Dodaj, aby otworzyć okno dialogowe z listą pól pobranych przez zapytanie (Firma, NumOrders, SumItems). Domyślnie wszystkie pola są zaznaczone. Wybierz OK.) Nawet jeśli nie potrzebujesz stałego zestawu pól do pracy ze składnikiem DBChart - utworzymy go teraz. Powody zostaną wyjaśnione później.
7. Ustaw ADOQuery. Aktywuj na True w Inspektorze obiektów, aby zobaczyć wynikowy zestaw w czasie projektowania.