Microsoft Access umoňuje umisovat do formuláře objekty, které umoní zadávat obsah poloky výběrem z nabízených moností. Na obr. 45 jsou znázorněny tři monosti :
List box | umoní vybrat jednu z nabízených hodnot. Nabídka přípustných hodnot musí být uloena v samostatné tabulce (dotazu) jako první v pořadí (na levé straně). Pokud je přípustná prázdná hodnota poloky, musí být prázdná hodnota v nabídkové tabulce. |
Combo Box | umoní vybrat jednu z nabízených hodnot. Nabídka hodnot se provádí pomocí dotazu, můe tedy pocházet z libovolné tabulky, případně z ručně zadaného seznamu, který je součástí objektu. Můeme buď nalistovat poadovanou hodnotu nebo zapisovat do horního pole svoji hodnotu. Současně je psaná hodnota vyhledávána v seznamu hodnot. Vyhledává se vdy podle hodnot v prvním sloupci nabídky, do poloky je vak mono uloit hodnotu i z jiného sloupce nalezeného záznamu. Zda bude mono do poloky zadat také hodnotu, která v nabídce nevystupuje, se zadává jako vlastnost Combo Boxu. Např. v ukázce je to umoněno, pokud je zadán nový titul do adresáře, který se nevyskytuje v nabídce titulů (tabulka STituly), pak je tento nový titul zapsán do nabídky. Tuto kontrolu zajiuje makro, které se spoutí před změnou hodnoty poloky (vlastnost Before Update). |
Check box | samostatný Check Box umoňuje zadávat logickou hodnotu. Pokud máme několik hodnot, z nich se volí právě jedna, můeme vytvořit vzájemně provázanou skupinu Check Boxů. Nejprve vytvoříme skupinu kontrolních boxů (Option Group), její výsledek přiřadíme poadované poloce (vlastnost Control Source), pak do ní vloíme poadovaný počet výběrových boxů (objektů třídy Check Box, ale také Option Button nebo Toggle Button). V jejich vlastnostech Control Source bude Access automaticky umisovat hodnoty 1, 2 ... v pořadí jejich vkládání. Tyto hodnoty pak budou ukládány jako výsledek celé skupiny boxů. Access automaticky zajistí, e zmáčknutí jednoho boxu ruí zmáčknutí jiných boxů. Vdy je vybrán jen jeden z nich. Vracené hodnoty je mono nastavit podle poadavků uivatele, ale jen v číselné podobě. Pozn.: Je vhodné nastavit barvu podkladu (vlastnost Back Style) na hodnotu Normal, tím se zajistí, e se jednotlivé části objektu překrývají. Jinak by se prolínaly, např. přes text nadpisu by vedla čára rámečku apod. |
Obr.45. Výběrové objekty
Vloení grafu do formuláře je velmi jednoduché. Microsoft Access obsahuje silný nástroj pro tvorbu grafů - průvodce (Graph Wizard). Pro ukázku grafu vytvoříme pomocí průvodce graf znázorňující podíl doby strávené u jednotlivých zaměstnavatelů. Tento graf bude obsahovat informace vdy pro jednu osobu. Postup úkonů bude následující :
Obr.46. Výsledný graf
Graf je uloen v rámečku pro OLE (Object Linking and Embedding), který má některé významné vlastnosti :
Skupina vlastností Other Properties:
OLE Class | třída objektu (např. Microsoft Graph 5.0 Chart). |
Row Source Type | třída objektu, ze kterého pochází informace pro objekt, implicitně Table/Query. |
Row Source | název objektu ze kterého pochází nabídka hodnot objektu nebo SQL příkaz pro získání potřebných informací, např. : SELECT DISTINCTROW [Místo], SUM([QOsoba místo doba].[Doba]) AS [Doba] FROM [QOsoba místo doba] GROUP BY [Místo]; |
Link Chield Fields | pokud je nastavena vazba mezi formulářem a objektem, je zde název poloky objektu. |
Link Master Fields | pokud je nastavena vazba mezi formulářem a objektem, je zde název poloky formuláře. |
Display Type | způsob zobrazení - Content, Icon |
Update Options | způsob zobrazení, pokud jsou nadřízená data změněna (Automatic, Manual). |
OLE Type | způsob připojení objektu (Linked - spojený dynamicky, Embedded - konstantní, None). |
OLE Type Allowed | (Linked, Embeeded, Eithed). |
Class | třída objektu (např. MSGraph.Chart.5). |
Source Doc | soubor, který bude vyuit při události Action. |
Source Item | určuje data, která budou zobrazena při události Action. |
Column Count | počet sloupců zdrojové tabulky. |
Enabled | zadává se přístupnost do objektu (Yes - lze měnit obsah, No - nelze). |
Skupina vlastností Layout Properties:
Size Mode | způsob zobrazení objektu, který je větí ne rozměr rámečku (Clip - bude zobrazen výsek z levého horního rohu, který se vejde do rámečku, Stretch -- bude zobrazen celý objekt tak, aby vyplnil celý rámeček, Zoom - bude zobrazen celý objekt, jeho rozměry budou změneny stejnoměrně). |
Column Heads | první poloka zdrojové tabulky je pouita pro záhlaví (Yes) nebo ne (No). |
Visible | viditelnost objektu (Yes - viditelný, No - neviditelný). |
Display When | kdy má být objekt zobrazován (Always - vdy, Print Only - jen při tisku, Screen Only - jen na obrazovce). |
Left | poloha levého okraje objektu ve formuláři. |
Top | poloha horního okraje objektu ve formuláři. |
Width | ířka objektu ve formuláři. |
Height | výka objektu ve formuláři. |
Back Style | barva podkladu (Clear - tlumená, Normal - výrazná). |
Back Color | číslo barvy podkladu rámečku. Jednoduí nastavení je pomocí palety barev přímo ve formuláři. |
Special Effect | prostorové efekty pro zvýraznění objektu ve formuláři (Color - jen zvýraznění barvou, Raised - vystouplý, Sunken - zasunutý). |
Border Style | barva rámečku (Clear - tlumená, Normal - výrazná). |
Border Color | číslo barvy rámečku. |
Border Width | ířka čáry rámečku v počtu bodů (Hairline - vlasová čára). |
Border Line Style | druh čáry rámečku. |
Skupina vlastností Event Properties:
On Update | nastává při změně obsahu objektu. |
On Enter | nastává při vstupu do objektu (první přesunutí zaostření - Focus na objekt). |
On Exit | nastává při odchodu z objektu (po stisku klávesy Esc apod.). |
On Got Focus | nastává při zaostření na objekt. |
On Lost Focus | nastává při ztrátě zaostření (zaostření na jiný objekt). |
On Click | nastává při stisku Enter na objektu apod. |
On Dbl Click | nastává po dvojím stisku myi (Double Click) při práci s obsahem poloky. |
On Mouse Down | nastává při přechodu na dalí objekt myí. |
On Mouse Move | nastává při uchopení objektu myí. |
On Mouse Up | nastává při přechodu na předchozí objekt myí. |
Skupina vlastností Other Properties:
Name | jméno objektu. Podle tohoto jména se s objektem pracuje v programu apod. |
Auto Activate | při jaké události má proběhnout oprava obsahu objektu (Manual, Get Focus, Double-Click). |
Verb | číslo operace, která má být provedena, pokud je objekt deaktivován. |
Locked | uzamčení objektu proti změně hodnot (Yes) nebo ne (No). |
Tab Stops | zastavování tabelátoru povoleno (Yes) nebo zakázáno (No). |
Tab Index | velikost tabelačních odskoků v počtu znaků. |
Tag | uivatelské vlastnosti. |
Pokud chceme upravit vzhled grafu, případně jiného objektu OLE, pouijeme činnost menu Edit-Object-Edit nebo dvojí zmáčknutí myi na objektu (Double Click), tím vyvoláme editor objektu v závislosti na jeho typu. V naem případě to bude program Microsoft Graph, viz obr. 47.
Při nesprávné nebo nedokonalé instalaci programu Microsoft Access se stává, e editor objektu není nalezen. Nezbývá, ne buď oelet objekt nebo nainstalovat program znovu.
Obr.47. Editace obsahu grafu
S formulářem je mono pracovat ve dvou reimech, buď jako s tabulkou (Datasheet) nebo jako s formulářem (Form). Práce s tabulkou je stejná, jako práce se skutečnou tabulkou, proto se budeme věnovat dále jen práci s formulářem.
S formulářem pracujeme v okně, viz obr. 48. Jak vidíme, je typické, e formulář je doplněn uivatelským menu, hláení o prováděných činnostech je vypisováno do stavového řádku na dolním okraji. K formuláři je také připojena nápověda. Proto nemá smysl rozebírat činnosti ve standardním menu pro práci s formulářem. Jeho činnosti byly vysvětleny v kapitole věnované práci s tabulkou. Raději se budeme věnovat některým často pouívaným činnostem
Obr. 48. Prostředí programu při práci s formulářem
Při práci s formulářem jsou pro nás zajímavé předevím činnosti, jako vyhledávání a změna obsahu poloek. Činnost menu Edit-Find otevře okno, ve kterém specifikujeme hodnotu, kterou hledáme, viz obr. 49. Můeme přitom řídit činnost vyhledávání zadáním parametrů :
Search In | určuje, zda se má prohledávat jen v hodnotách poloky, ve které stojí kurzor (Current Field) nebo v hodnotách vech poloek (All Fields). |
Direction | směr prohledávání od aktuálního záznamu (Up - směrem k prvnímu záznamu, Down - směrem k poslednímu záznamu). |
Match Case | zohlednění velikosti písma (kříek - malá a velká písmena povaovat za rozdílná). |
Search Fields as Formatted | prohledávat poloky jako formátované (kříek - ano). |
Obr. 49. Okno pro vyhledávání hodnot poloek
Pokud chceme nejen vyhledávat, ale také měnit hodnoty poloek, pouijeme činnost menu Edit-Replace. Činnost probíhá v okně, viz obr. 50. Můeme zadat nejprve vyhledání dalí poloky vyhovující poadavku, přitom se bude ignorovat aktuální záznam i kdyby poadavkům vyhovoval (Find Next) a pak změnu hodnoty (Replace) nebo automatickou změnu u vech vyhovujících záznamů (Replace All).
Obr. 50. Okno pro změnu hodnot poloek
Ve formuláři můeme zpracovávat jen záznamy, které si vybereme nastavením filtru záznamů. Filtr záznamů se tvoří v okně, které otevřeme činností menu Records-Edit Filter/Sort, viz obr. 51.
Filtr se tvoří stejně jako dotaz (Query) typu Select, má jen některá omezení. Naznačuje to i omezený počet řádků popisujících jednotlivé poloky (sloupce) filtru. Při tvorbě filtru máme jen omezenou nabídku činností v menu. Předevím můeme filtr uloit jako dotaz (činnost menu File-Save As Query) nebo ho naopak načíst z ji vytvořených dotazů (činnost menu File-Load From Query), v tom případě nám Access nabídne seznam dotazů, které lze jako filtr pouít a z nich si vybereme, viz obr. 52.
Na obr. 51 je zobrazena tvorba filtru, který vybere záznamy, jejich poloka Titul začíná textem "Ing.*". Současně je provedeno setřídění vyhovujících záznamů (Sort), a to vzestupně, nejprve podle příjmení, pak podle jména.
Obr. 51. Okno pro tvorbu filtru záznamů
Obr. 52. Okno pro načtení filtru záznamů z dotazu
Filtr aplikujeme činností menu Records-Apply Filter/Sort. Ve formuláři budou zobrazeny jen záznamy vyhovující zadanému filtru. To nám vak nebrání přidat nový záznam, který nebude filtru vyhovovat. Tento záznam bude zobrazen tak dlouho, dokud znovu neprovedeme činnost menu Records-Apply Filter/Sort.
Okno pro tvorbu filtru se uzavírá automaticky při uzavření formuláře
Pro prezentaci údajů v databázi slouí výstupní sestavy. Ne přistoupíme k tvorbě nové sestavy, je dobré si uvědomit, e na její vzhled má vliv nastavení parametrů pro tiskárnu, jak vidíme na obr. 53. Zejména jsou to okraje, ale také velikost tiskové plochy, počet sloupců apod. Pomocí těchto nastavení můeme i ručně vytvořit sestavu pro tisk adresních títků.
Obr. 53. Nastavení parametrů pro tiskárnu
Pro tvorbu nové sestavy (New) nabízí Access opět pouití průvodce (Report Wizard), viz obr. 54. Současně zde volíme název zdrojové tabulky nebo dotazu.
Obr. 54. Tvorba nové sestavy
Pokud zvolíme nabídku Report Wizards, otevře se následně okno, ve kterém zvolíme poadovaný typ sestavy:
Single-Column | v sestavě jsou uvedeny jednotlivé záznamy, kadá poloka na jednom řádku. |
Groups/Totals | záznamy v sestavě jsou seskupovány do skupin. Je mono provádět výpočetní operace v rámci jednotlivých skupin záznamů nebo celé sestavy. |
Mailing Label | sestava je titěna ve formě adresních títků. |
Summary | sestava se součty ve skupinách záznamů. |
Tabular | v sestavě jsou poloky záznamů vdy vechny v jenom řádku. |
AutoReport | automatická definice sestavy podle zvyklostí programu. |
MS Word Mail Merge | dokument s tabulkou pro tisk adres v prostředí editoru MS Word. |
Zvolme sestavu s tvorbou skupin a součty ve skupinách (Groups/Totals). Následuje volba poloek, které mají být v sestavě zobrazeny. Je vhodné je vybírat v pořadí, v jakém chceme aby byly v sestavě uspořádány. Zapomenout nesmíme ani na poloky, podle kterých se budou tvořit skupiny záznamů.
Pokračujeme určením, které poloky budou tvořit skupiny (Groups) záznamů ve výsledné sestavě. Máme monost zvolit nejvýe 4 poloky.
Pro jednotlivé poloky skupin určíme po jakých rozsazích hodnot budou skupiny tvořeny. Lií se podle datového typu poloky. Přípustné hodnoty jsou zařazeny v nabídce.
Dalím nastavením je určení, podle kterých poloek budou tříděny záznamy ve skupině.
Následuje určení vzhledu sestavy. Jsou k dispozici tři nabídky, jejich ukázka je uvedena pod lupou v levém horním rohu okna :
Executive | jednoduchá úprava, záhlaví je odděleno dvojitou čarou. |
Presentation | sloitějí úprava, záhlaví je odděleno tučnou čarou. |
Ledger | poloky jsou orámovány a vzhledem tvoří tabulku. |
Posledním krokem je určení nápisu v záhlaví sestavy, rozhodnutí, zda mají být vechny poloky zobrazeny na společné stránce, zda mají být počítána procenta ze součtových poloek apod. Následuje vytvoření vlastní sestavy, viz obr. 55
Obr. 55. Konec vytváření sestavy pomocí průvodce
Po ukončení tvorby sestavy nebo při její úpravě (Design), přejdeme do okna úpravy vzhledu sestavy. Okno i pouitelné činnosti se velmi podobají úpravě formuláře. V menu je jen několik nových činností. Prostředí programu při úpravě vzhledu sestavy je na obr. 57. Je zde zobrazeno také okno s vlastnostmi objektu, kterých je oproti formuláři poněkud méně.
V menu File je navíc činnost Sample Preview, která ukáe vzhled sestavy s ukázkovými daty. Má význam předevím, pokud je zdrojová tabulka (dotaz) sestavy prázdná.
V menu View je navíc činnost Sorting and Grouping..., která otevře/zavře okno s údaji o třídění záznamů v sestavě, viz obr. 56. Vidíme zde, e sestava bude tříděna podle oboru a stupně vzdělání, v kadé skupině pak podle příjmení a jména. Současně jsou určeny vlastnosti pro kadou skupinu záznamů :
Group Header | určení, zda bude zobrazeno záhlaví skupiny. |
Group Footer | určení, zda bude zobrazeno úpatí skupiny. |
Group On | určení, jakým způsobem budou skupiny tvořeny (Each Value, Prefix Characters). |
Group Interval | interval pro tvorbu skupin. Např. pokud budeme chtít tvořit skupiny osob podle počtu dovrených desítek let, zadáme tvorbu skupin podle poloky [Věk] a interval 10. |
Keep Together | zda má být oblast (Section) vázána na následující oblast. |
Pokud určíme, e u poloky bude zobrazeno záhlaví nebo úpatí skupin, je poloka chápána jako zdroj skupin, co se znázorní značkou skupiny na levém okraji řádku. Na obr. 56. je u prvních dvou poloek. Pokud záhlaví ani úpatí nezapneme, je poloka chápána jako určení způsobu setřídění záznamů v rámci skupiny.
Obr. 56. Vlastnosti pro tvorbu skupin a třídění záznamů
Vlastnost pro rozsah skupin je závislý na typu poloky, podle které se skupiny vytvářejí.
U textových dat můe mít vlastnost Group On hodnotu :
Each Value | skupiny budou tvořit záznamy s pouitou polokou stejné hodnoty. |
Prefix Characters | skupiny budou tvořit záznamy, jejich pouitá poloka začíná stejným písmenem. |
U číselných dat, počítadel apod. můe mít vlastnost Group On hodnotu :
Each Value | skupiny budou tvořit záznamy s pouitou polokou stejné hodnoty. |
Interval | skupiny budou tvořit záznamy, jejich pouitá poloka má hodnotu v určeném intervalu krokování, např 5 znamená skupiny 0 - 4, 5 - 9, 10 - 14 atd. |
U datumových a časových dat můe mít vlastnost Group On hodnotu :
Each Value | skupiny budou tvořit záznamy s pouitou polokou stejné hodnoty. |
Year | skupiny budou tvořeny podle stejného roku. |
Qtr | skupiny budou tvořeny podle stejného čtvrtletí roku. |
Month | skupiny budou tvořeny podle stejného měsíce roku. |
Week | skupiny budou tvořeny podle stejného týdne roku. |
Day | skupiny budou tvořeny podle stejného dne roku. |
Hour | skupiny budou tvořeny podle stejné hodiny. |
Minute | skupiny budou tvořeny podle stejné minuty. |
Obr. 57. Úprava vzhledu sestavy
V okně úpravy sestavy vidíme, e sestava má více částí.
Report Header | záhlaví sestavy. Je tisknuto na začátku celé sestavy. V ukázce obsahuje název sestavy, datum a čas provedení tisku (funkce Now). |
Page Header | záhlaví stránky. Je tisknuto na začátku kadé stránky. V ukázce obsahuje popisy vystupujících poloek záznamu. |
Obor Header | záhlaví skupiny tvořené podle obsahu poloky Obor. Je tisknuto na začátku kadé skupiny. |
Stupeň Header | záhlaví skupiny tvořené podle obsahu poloky Stupeň. Je tisknuto na začátku kadé skupiny záznamů se stejným vzděláním v rámci skupiny záznamů jednoho oboru. |
Detail | oblast informací o jednom záznamu. Obsahuje konkrétní informace o jednom záznamu. Je mono pouívat jakékoliv objekty, které známe z tvorby formuláře, výpočty apod. Často se pouívají také poloky nastavené jako neviditelné (vlastnost Visible = No), které na výsledné sestavě nebudou zobrazeny. Slouí pro monost nastavení filtru záznamů, případně monost odkazovat se na hodnoty svých zdrojových poloek při výpočtech apod. |
Stupeň Footer | úpatí skupiny tvořené podle obsahu poloky Stupeň. Je tisknuto na konci kadé skupiny. V ukázce obsahuje informaci o součtu odpracovaných let v této skupině : =Sum(Doba) a procento podílu na celkové odpracované době vech záznamů. |
Obor Footer | úpatí skupiny tvořené podle obsahu poloky Obor. Je tisknuto na konci kadé skupiny. V ukázce obsahuje informaci o součtu odpracovaných let v této skupině : =Sum(Doba) a procentu podílu na celkové odpracované době vech záznamů. |
Page Footer | úpatí stránky. Je tisknuto na konci kadé stránky. V ukázce obsahuje číslo stránky, titěné skloněným písmem :="strana "& Page. |
Report Footer | úpatí sestavy. Je tisknuto na konci celé sestavy. To znamená, e v reálném případě bude předcházet vytitění úpatí poslední stránky. V ukázce obsahuje počet vech záznamů v sestavě (GrandTotal). |
Kadou sestavu tvoříme předevím proto, abychom ji mohli tisknout. Vzhled sestavy při tisku zobrazíme pomocí činnosti menu File-Print Preview. Access zobrazí stránku papíru s výsledkem sestavy. Pomocí lupy nebo tlačítka Zoom můeme přepínat mezi zobrazením detailu a celé stránky. Na obr. 58 je zobrazeno prostředí programu s detailem sestavy. Současně je zde zobrazeno okno pro určení základních parametrů pro tisk.
Pokud jsme spokojeni, můeme sestavu vytisknout příkazem File-Print. K nastavení parametrů tisku se otevře pomocné okno, na obr. 58 se nachází v prostřední části obrázku.
Pokud nejsme spokojeni s nastavenými parametry tiskárny, můeme vyvolat tlačítkem Setup jejich změnu (platí jen pro aktuální objekt). Otevře se stejné okno, jako při činnosti menu File-Print Setup, viz obr. 53. Na obrázku je stav okna po stisku tlačítka More, které přidá do okna některé doplňující informace.
Pokud se sestavou pracuje více uivatelů s různými tiskárnami, dochází k častým změnám jejich nastavení u sestav. Uivatel pak můe být překvapen hláením, např. viz obr. 59, které nastává, pokud byla sestava formátována pro tiskárnu, která v jeho instalaci Windows není připojena.
Obr. 58. Tisk sestavy
Obr. 59. Hláení pokud byla sestava dříve upravena pro tiskárnu, která není připojena.