Mapování s databázemi: Kurz DB

Ve většině moderních databázových aplikací nějaký druh grafické znázornění dat je výhodnější nebo dokonce požadovaná. Pro tyto účely Delphi obsahuje několik komponent citlivých na data: DBImage, DBChart, DecisionChart atd. DBImage je rozšíření komponenty Image, která zobrazuje obrázek uvnitř pole BLOB. Kapitola 3 tohoto dokumentu databázový kurz diskutovali o zobrazování obrázků (BMP, JPEG atd.) v databázi Access s ADO a Delphi. DBChart je datová grafická verze komponenty TChart.

Naším cílem v této kapitole je představit TDBChart ukázáním, jak integrovat některé základní grafy do vaší aplikace založené na Delphi ADO.

TeeChart

Komponenta DBChart je výkonný nástroj pro vytváření databázových grafů a grafů. Je to nejen silné, ale také složité. Nebudeme zkoumat všechny jeho vlastnosti a metody, takže s tím budete muset experimentovat, abyste zjistili vše, co je schopno a jak nejlépe vyhovuje vašim potřebám. Pomocí DBChart s TeeChart grafový modul umožňuje rychle vytvářet grafy přímo pro data v datových sadách, aniž byste potřebovali jakýkoli kód. TDBChart se připojuje k libovolnému Delphi DataSource. Sady záznamů ADO jsou nativně podporovány. Není třeba žádný další kód - nebo jen trochu, jak uvidíte. Editor grafů vás provede kroky pro připojení k vašim datům - nemusíte dokonce chodit do Inspektoru objektů.

instagram viewer

Knihovny Runtime TeeChart jsou součástí verzí Delphi Professional a Enterprise. TChart je také integrován do QuickReportu s vlastní komponentou TChart na paletě QuickReport. Delphi Enterprise obsahuje ovládací prvek DecisionChart na stránce Decision Cube na paletě Component.

Příprava na graf

Naším úkolem bude vytvořit jednoduchý formulář Delphi s grafem vyplněným hodnotami z databázového dotazu. Chcete-li pokračovat, vytvořte formulář Delphi následujícím způsobem:

1. Spusťte novou aplikaci Delphi - ve výchozím nastavení je vytvořen jeden prázdný formulář.

2. Umístěte další sadu komponent ve formuláři: ADOConnection, ADOQuery, DataSource, DBGrid a DBChart.

3. Pomocí Inspektoru objektů propojte ADOQuery s ADOConnection, DBGrid s DataSource s ADOQuery.

4. Vytvořte propojení s naší demo databází (aboutdelphi.mdb) pomocí ConnectionString komponenty ADOConnection.

5. Vyberte součást ADOQuery a přiřaďte další řetězec k vlastnosti SQL:

VYBERTE TOP 5 zákazníků. Společnost,
SUM (orders.itemstotal) AS SumItems,
COUNT (orders.orderno) AS NumOrders
Od zákazníka, objednávky
WHERE customer.custno = objednávky.custno
SKUPINA PODLE zákazníka. Společnost
OBJEDNÁVKA PODLE SUMU (orders.itemstotal) DESC
Tento dotaz používá dvě tabulky: objednávky a zákazníka. Obě tabulky byly importovány z databáze (BDE / Paradox) DBDemos do naší demo databáze (MS Access). Výsledkem tohoto dotazu je sada záznamů s pouze 5 záznamy. První pole je název společnosti, druhé (SumItems) je součet všech objednávek provedených společností a třetí pole (NumOrders) představuje počet objednávek, které společnost provedla. Všimněte si, že tyto dvě tabulky jsou propojeny ve vztahu master-detail.
6. Vytvořte trvalý seznam databázových polí. (Chcete-li vyvolat Editor polí, klikněte dvakrát na komponentu ADOQuery. Ve výchozím nastavení je seznam polí prázdný. Klepnutím na Přidat otevřete dialogové okno se seznamem polí načtených dotazem (Společnost, NumOrders, SumItems). Ve výchozím nastavení jsou vybrána všechna pole. Vyberte OK.) I když pro práci s komponentou DBChart nepotřebujete trvalý soubor polí - vytvoříme ji nyní. Důvody budou vysvětleny později.

7. Nastavte ADOQuery. Aktivní na Pravda v Inspektoru objektů a zobrazí výslednou sadu v době návrhu.