1 / 29

Databázové aplikácie – vývojové prostredie Delphi

Databázové aplikácie – vývojové prostredie Delphi. DB aplikácie v Delphi Architektúra DB Aplikácie v delphi Borland Database Engine (DBE) Prístup k databáze a dátam Tvorba GUI Tvorbu tlačových zostáv a export dát. Architektúra aplikácie v delphi.

iokina
Télécharger la présentation

Databázové aplikácie – vývojové prostredie Delphi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Databázové aplikácie – vývojové prostredie Delphi DB aplikácie v Delphi Architektúra DB Aplikácie v delphi Borland Database Engine (DBE) Prístup k databáze a dátam Tvorba GUI Tvorbu tlačových zostáv a export dát

  2. Architektúra aplikácie v delphi • Súborová databázová aplikácia – aplikácia pracuje nad databázami typu Paradox, Dbf, Xls,..., ku ktorým pristupuje priamo, pričom umožňuje využiť rozhrania s podporou SQL • Architektúra Klient/Server • Klient – aplikačný program, ktorý odosiela príkazy databáze cez odpovedajúce rozhranie, prijíma dotazované výsledky • Server – databáza, prijíma požiadavky vo forme SQL príkazov, spracuje ich a vysiela výsledok ku klientovi • Viacvrstvové databázové aplikácie – Aplikácia zložená z prezentačnej, výkonnej vrstvy a SQL databázy

  3. Štruktúra databázovej aplikácie UI Dataset • UI~ užívateľské formuláre – interaktívne rozhranie medzi užívateľom a aplikáciou • Dataset – množina záznamov z databázy • Data-Aware – časti UI vizualizujúce dáta • Data source – prepojenie medzi UI ~ Dataset • Data connection- mechanizmuspre získanieinformácie z databázového servera, súboru na disku, inej dataset komponenty. • Data module – kontajnér pre dátové komponenty

  4. Borland Database Engine • Knižnica, ktorá je zástupcom databázy pre aplikáciu • Implementuje priamy prístup k lokálnym DB súborom (dBase, Paradox, ASCII, FoxPro, MS Access) • Umožňuje pomocou SQL-Link/ODBC rozhrania komunikáciu s databázovým serverom • Poskytuje jednotné rozhranie pre prístup do databázy • Vykonáva riadenie toku dát

  5. Aplikácia založená na BDE Strana servera Strana klienta Borland Database Engine Súbor RDBMS SQL-Links Užívateľská aplikácia Databázové komponenty DB Databázový klient ODBC Ovládač

  6. Komponenty BDE • Nevizuálne komponenty pre prácu s databázou a spracovanie dát • Sada tried, ktoré využívajú funkčnosť BDE a zjednodušujú vývoj aplikácie • Obsahuje komponenty: • Dataset - TTable, TQuery, TStoredProcedure • Data connection – TDatabase, TSession • Podporné – TBatchMove, TUpdateSQL

  7. Hierarchia BDE Dataset

  8. Základné BDE DataSet triedy • TDataSet - Abstraktná trieda obsahujúca základné vlastnosti, metódy a udalosti pre prácu s dátami • TBDEDataSet - Definuje BDE funkcionalitu pre DataSet • TDBDataSet – Definuje konektivitu pre databázy (popis, vytvorenie a udržiavanie databázového spojenia)

  9. Komponent Table • Poskytuje priamy prístup k všetkým záznamom a poliam príslušnej databázovej tabuľky • Pracuje iba nad jednou tabuľkou, s možnosťou prepojenia na index • Implementuje metódy pre sprístupnenie (pohyb), vyhľadávanie, pridávanie, editáciu a mazanie záznamov, ďalej metódy pre vytvorenie a zrušenie tabuľky • Poskytuje metódy pre filtráciu, triedenie záznamov • Spracovávanie dát sa vykonáva na strane klienta • Komponent využiteľný najmä pre prácu s lokálnou súborovou databázou (dBase, Paradox, FoxPro...) • Použitie pri databázovom systéme nevyžaduje zadávanie SQL • Je doporučená pre prácu s malými tabuľkami

  10. Komponet Query • Komponet založený na báze SQL • Sprístupňuje dáta jedneho alebo viacerých databázových objektov (tabuliek, pohľadov...) použitím SQL príkazu • Pracuje zo vzdialenými databázami ako aj lokálnymi súborovými databázami typu Paradox, FoxPro, ASCII • Podporuje používať heterogénne dotazy • Implementuje metódy pre lokálne spracovanie záznamov ako v prípade komponentu Table • Poskytuje metódy pre zadanie a spustenie DDL a DML príkazov • Umožňuje sprístupniť a spracovať výsledok SQL dotazu • Automatická možnosť editácie záznamov pre tzv. „Live“ dotazy (metódami ako v prípade Table) • Má podporu pre vykonanie modifikácie záznamov v DBS • Je dôležitým komponentom pre vývoj aplikácii pracujúcich nad vzdialenými databázami v prostredí klient/Server

  11. Komponent StorageProc • Komponent zastupuje uloženú procedúru na databázovom serveri • Poskytuje metódy pre: • zadávanie vstupných parametrov • Spustenie procedúry na databázovom serveri • Získanie výstupnej hodnoty prípadne spracovanie návratovej množiny záznamov (ako pri príkaze SELECT)

  12. Komponent UpdateSQL • Poskytuje možnosť, prostredníctvom SQL editovať tzv. read-only objekty databázy reprezentované komponentmi Query a StorageProc • Pre objekt sa definujú parametrické príkazy pre modifikáciu INSERT, UPDATE, DELETE • Objekt triedy TUpdateSQL sa prepája s príslušným dataset objektom • Komponent poskytuje metódy pre nastavenie parametrov editovacích príkazov • Nastavenie a samotné spustenie príkazov sa vykonáva pri vzniknutí udalosti ApplyUpdate v príslušnom dataset objekte • Použitie komponenty je možné v prípade nastavenia vlastnosti dataset objektu CachedUpdate

  13. Komponent TDatabase • Rozhranie pre riadenie spojenia nad jednou databázou • Poskytuje: • Perzistentné databázové spojenie • Prispôsobiť prihlasovanie do databázy • Riadenie transakcii • Definovanie parametrov spojenia s databázou (zadanie ovládača, lokálizáciu databázy...)

  14. Ostatné BDE komponenty: • TBatchQuery – komponent pre vykonávanie operácie nad skupinou záznamov alebo celou tabuľkou (pridávanie záznamov, mazanie záznamov, kopírovanie dátovej sady) • TSession – komponent pre globálne riadenie skupiny databázových spojení z aplikácie (štandardne komponenty používajú session definovanej BDE administrátorom)

  15. Zobrazenie a riadenie dát: Data-Aware komponenty • Komponenty pre zobrazenie a interaktívne riadenie dát databázy z aplikácie • Vizuálne komponenty, slúžia na tvorbu užívateľských formulárov • Poskytujú prostriedky pre formátovanie výstupu • Majú definované udalosti, ktoré možno ošetriť • Každá komponenta sa prepája z dátovým zdrojom, nad ktorým bude pracovať (TDataSource) • Rôzne komponenty, môžu pracovať s rovnakým zdrojom – rôzne pohľady na dáta

  16. Tabuľka – DBGrid • Umožňuje zobrazovať a editovať dáta v tabuľkovej forme • formátuje výstupné hodnoty (písmo, farba, zarovnanie...) • Poskytuje množstvo volieb ovplyvňujúce správanie komponenty v aplikácii (zobrazenie mriežky, zobrazenie indikátora, rolovacích líšt...) • Umožňuje pohyb po záznamoch – posun v rámci dátového zdroja (scrollovanie) • Označovanie záznamov (výber iba jedného záznamu, viacnásobné označenie) • Udalosti pre ošetrenie vstupu na úroveň bunky (OnCellClick, OnTitleClick, OnColEnter, OnColExit,...) • Možnosť vlastného zobrazenia bunky (vykreslenie obrázku) • Zobrazovanie stĺpcov dátového zdroja je vykonávaná automatický na základe metadát alebo voliteľne definovateľné

  17. Navigácia – DBNavigator • Sada navigačných tlačidiel, umožňujúca interaktívne vykonávať posun po záznamoch dátového zdroja - nasledujúci, predchadzajúci, prvý, posledný záznam • Tlačidla, ktorá prepínajú mód dátového zdroja do módu Insert, Edit, Browse (New, Edit, Post, Cancel) • Tlačidlo pre odstránenie záznamu (delete) • Tlačidlo pre znovunačítanie dátového zdroja (refresh) • Povolenie a zakázanie prístupu k tlačidlám je riadenie automatický • Zobrazenie tlačidiel je nastaviteľné

  18. Data-Aware komponenty pre text • Komponenty pre zobrazenie hodnoty jedného stĺpca aktuálneho záznamu z dátového zdroja • DBEdit – Edit box pre zobrazenie a editáciu stĺpca aktuálneho záznamu • DBLabel – Zobrazenie hodnoty stĺpca vo forme voľného textu z aktuálneho záznamu

  19. Data-Aware komponenty s výberom hodnôt • Komponenty zobrazujú hodnotu jedného stĺpca, pre editáciu umožňujú dosadiť hodnotu výberom zo zoznamu • DBComboBox/ DBListBox –výber a dosadenie hodnoty z preddefinovaných konštantných hodnôt • DBLookupComboBox/DBLookupListBox – výber dosadenie hodnoty zo sekundárneho zdroja dát (prepojenie cez kľúč)

  20. Data-Aware komponenty pre prácu s BLOB hodnotami • Komponenty umožňujú spracovať BLOB hodnoty a dlhé reťazcové hodnoty • DBMemo – reprezentuje viacriadkový edit box pre spracovanie textu • DBRichEdit - reprezentuje viacriadkový edit box pre spracovanie formátovaného textu (rich text) • DBImage – reprezentuje grafický obrázok uložený v databáze ako BLOB. Štandardne umožňuje vkladať obrázky prostredníctvom shránky

  21. Podporné Data-Aware komponenty • DBChart – Komponent pre zobrazenie dát z dátového zdroja do grafu • DBCtrlGrid – opakovane zobrazuje záznamy z dátového zdroja podľa voľného rozloženia formulárových komponentov (vo forme tabuľky). Komponenta DBCtrlGrid sa napája na dátový zdroj a umiestnené komponenty sa viažu k tomuto zdroju

  22. Tvorba tlačových zozstáv: Quick Report komponenty • QuickReport balík je sada komponentov určená pre tvorbu tlačových zostáv • Poskytuje komponenty: • Pre definovanie rozloženia a riadenia – rozvrhnutia položiek na papieri • Komponenty pre tlač • komponenty pre export

  23. Komponent QuickRep • je kontajnerom pre všetky tlačové komponenty, ktoré participujú v zostave • predstavuje papier, kde je definované rozvrhnutie položiek • Je prepojená s príslušnou dátovou sadou • Tlačový priestor sa delí na logické oddiely – zóny (bands), v ktorých je definované riadenie a rozvrhnutie tlačových komponentov • Obsah tlačovej zostavy môže byť členený na stĺpce (štandardné sa používa jednostĺpcová zostava) • Zóny (bands) sú samostatné kontajnerové komponenty rôznych typov. Typ určuje pravidla pre generovanie obsahu v danej časti (zóne) tlačovej zostavy

  24. Zóny zostavy • QRBand – všeobecný typ pre zónu. Pri návrhu, po uložení komponenty sa určí je typ – rola v zostave • QRSubDetail – slúži pre tvorbu master/detail zostavy • QRStringsBand – Poskytuje mechanizmus na zobrazenie dát bez použitia DataSet. Obaľuje triedu TString, uchovávajúca zoznam reťazcov, ktorú sú zdrojom dát • QRGroup – slúži pre zoskupovanie záznamov na základe definovaného výrazu. Záznam bude vytlačený, vždy keď sa dôjde zmene jeho hodnoty • QRChildBand – slúži pre rozšírenie existujúcej zóny. Jej obsah bude vždy uložený pod obsahom rodičovskej zóny.

  25. QRBand – typy zón • rbPageHeader – Tlačí sa vo vrchnej časti každej stránky (tlač na prvej stránky je možné zrušiť) • rbPageFooter – Tlačí sa v spodnej časti každej stránky (tlač na poslednej je možné zrušiť) • rbTitle – Tlačí sa na prvej stránke zostavy po vytlačení hlavičky • rbColumnHeader– Tlačí sa nad každým stĺpcom a na každej stránke vo viacstĺpcovej zostave. V jednostĺpcovej zostave sa tlačí raz po hlavičke stránky • rbGroupHeader – Hlavička pre zónu TQRGroup alebo TQRSubDetail. Hlavička sa tlačí pred príslušnou zónou • rbGroupFooter - Päta pre zónu TQRGroup alebo TQRSubDetail. Tlačí sa pod príslušnou zónou • rbDetail – Tlačí sa pre každý záznam z pripojenej dátovej sady. • rbSummary– Tlačí sa na konci zostavy po vytlačení všetkých zón typu rbDetail a rbGroupFooter

  26. Tlačové komponenty pre zostavy • QuickReport tlačové komponenty sú ekvivalentné štandardnými komponentmi požívané pre tvorbu formulárov • Komponenty sú ukladané do QuickRep zón (Bands) • Data-aware QuickReport komponenty: • TQRDBText – Ekvivalent k TDBText – používa sa na zobrazenie obsahu poľa (text, číslo, dátum,...) zo záznamu pripojenej dátovej sady. • TQRDBRichText – slúži pre zobrazenie formátovaného textu uloženého v poli typu BLOB (RTF formát) • TQRDBImage - slúži pre zobrazenie grafického obrázku uloženého v poli typu BLOB • TQRExpr – zobrazenie výrazu vytvoreného z hodnôt poli záznamu z databázy • QRExprMemo – zloženie QRMemo a QRExpr. Umožňuje to textu vkladať hodnoty vo forme {výrazu}

  27. QuickReport doplnkové tlačové komponenty • QRLabel – statický text na stránke • QRSysData – zobrazenie systémových údajov (aktuálny dátum, čas, číslo stránky...) • QRMemo– ekvivalent k TMemo, zobrazuje statický viacriadkový text • QRRichText – zobrazuje formátovaný • QRShape – „dekoračný“ komponent pre zobrazenie geometrických útvarov (ekvivalent k TShape) • QRImage – zobrazuje statický grafický obrázok na stránke (ekvivalent k TImage)

  28. Komponenty pre prezeranie, skladanie a exporovanie • QRCompositeReport – zjednocuje separátne tlačové zostavy pre spoločnú tlač. • QRPreview – komponent umožňujúci vložiť do programu podporu pre predbežné prezeranie výstupu zo zostavy • Exportné filtre – QuickReport paleta má tri komponenty, podporujúce export obsahu zostavy do súboru. Exportovať zo zostavy je možné iba obsah komponent, ktoré produkujú text: TQRLabel, TQRDBText, TQRExpr, TQRMemo, TQRSysdata a TQRExprMemo • QRTextFilter – exportuje obsah zostavy do ASCII, kde jednotlivé hodnoty sú oddelené medzerou • QRCSVFilter – exportuje obsah zostavy do CSV formátu (Comma Separated Variables). • QRHTMLFilter – exportuje obsah zostavy do HTML formátu • QRChart – komponent pre vytvorenie grafu v zostave (odvodený od TChart)

More Related