Databáze jako informační zdroj pro uživatele. Helena Palovská

Rozměr: px
Začít zobrazení ze stránky:

Download "Databáze jako informační zdroj pro uživatele. Helena Palovská"

Transkript

1 Databáze jako informační zdroj pro uživatele Helena Palovská Vysoká škola ekonomická Praha 2004

2 OBSAH O TĚCHTO SKRIPTECH 5 Instalace řešení 5 1 ÚVODNÍ SLOVO A DATABÁZÍCH 6 2 SEZNÁMENÍ SE VZOROVOU DATABÁZÍ NORTHWIND Vysvětlení kontextu a významu dat Tabulky databáze Northwind Schéma databáze Northwind Struktura tabulek v databázi Northwind Vysvětlení k některým polím v databázi Northwind Formuláře Pochopení dat 11 3 PŘÍPRAVA NÁSTROJE K PROCVIČOVÁNÍ ÚLOH K čemu slouží relace ve vašem projektu? Dotazy Rozšířené podrobnosti objednávek a Mezisoučty objednávek Úprava dotazu Rozšířené podrobnosti objednávek Kopie vzorových řešení 15 4 JEDNODUCHÉ DOTAZY První jednoduchý dotaz Řazení v návrhu dotazu Co je dotaz Úpravy v datovém listu odpovědi Kritéria v návrhu dotazu Kritéria v dotazu Jedinečné hodnoty Výrazy v dotazu Formát a zobrazení pole v dotazu Tvůrce výrazů Lupa Jak používat průvodce jednoduchým dotazem Dotaz v návrhovém zobrazení Přidávání tabulek do návrhu dotazu Nejvyšší hodnoty Dotazy s parametry 26

3 5 SESKUPOVACÍ DOTAZY Co jsou seskupovací dotazy? První seskupovací dotaz Agregační funkce Průvodce pro souhrnný dotaz Count v seskupovacím dotazu Doporučení pro použití průvodce Omezení počtu řádků výsledku seskupovacího dotazu Křížové dotazy Pole křížového dotazu Datový list křížového dotazu Kontingenční tabulky, kontingenční grafy Kontingenční grafy Zvláštní případy seskupovacích úloh Dotazy na počet různých hodnot Agregace First, Last 39 6 SOUHRNY POMOCÍ DATOVÝCH KOSTEK Datová kostka z dat Northwind Jiná kostka z Northwind 44 7 PŘEHLEDY A SOUHRNY JEŠTĚ JINAK 45 8 MEZIVÝSLEDKY Příklad propojení mezivýsledků Mezivýsledek pro použití v kritériu Skalární pod-dotazy Alternativa pomocí více mezivýsledků SQL SELECT jako výraz pro pole dotazu 53 9 DOTAZY NA TO CO V DATABÁZI NENÍ Alternativní řešení POLOSPOJENÍ SELF JOIN SESTAVY Automatické sestavy 62

4 12.2 Průvodce sestavou Podsestavy Grafy Parametry Parametry v podsestavách Obrázky v sestavě AKČNÍ DOTAZY Vytvářecí dotazy Přidávací dotazy Odstraňovací dotazy Aktualizační dotazy CVIČENÍ Jednoduché dotazy Dotazy se souhrny Křížové dotazy Výběr podle vypočteného souhrnu Souhrny pro celou tabulku Spojení několika souhrnů Agregační funkce pro čas Počet různých hodnot Kritérium propojením Řešení cvičení TÉMATICKY ZAMĚŘENÉ ÚLOHY Výjimky a závislosti Zaměření zaměstnanců Tendence nákupů Průběh cen Porovnání charakteristik 86 REJSTŘÍK 87

5 O těchto skriptech Cílem těchto skript je naučit uživatele používat databázi jako informační zdroj, použité nástroje jsou ze sady MS Office, ale znalosti zde získané poslouží i při použití jiných uživatelských nástrojů. Hlavními prostředky pro uživatele k získávání nestandardních informací, tj. navíc nad předem připravené výstupy informačního systému, jsou dotazy a tiskové sestavy. Ty jsou také hlavní náplní těchto skript. Rutinní postupy práce, jež jsou velmi dobře popsány a vysvětleny v nápovědě programů MS Office, zde nejsou vykládány. Téma každé kapitoly je nejprve uvedeno popisem jednoduchého příkladu krok za krokem, dále se výklad soustředí spíše na naznačení dalších cest k dosažení cílů a na vysvětlení účelu. Pouze některé postupy jsou zde podány krok za krokem. Tato skripta jsou určena jak pro počítačově gramotné začátečníky, tak i pro středně pokročilé uživatele. Proto je text doplněn poznámkami rozšiřujícími základní výklad, ty jsou buď ve formě textu drobným písmem nebo jako poznámky pod čarou. Pouze některé poznámky pod čarou slouží jako nápověda pro nějaký rutinní postup. K výkladu je použit program MS Access 2002, některé speciální úkoly jsou řešeny pomocí programu MS Excel 2002 a některých jeho dodatečných modulů. Ke standardní instalaci programu MS Access patří vzorová databáze Northwind. Tato vzorová databáze je používána v příkladech k procvičení. Ve verzi MS Access2002 je standardně instalována do složky C:\Program Files\Microsoft Office\Office10\Samples\. Ke skriptům patří také vzorová řešení úloh 1 dostupná na internetové adrese nb.vse.cz/~palovska/uzida/ Zde vyberte svou verzi programu MS Access a stáhněte si zip-soubor. Tento zip-soubor rozbalte do složky C:\Uživatel databází\ Vzorové řešení předpokládá umístění databáze Northwind ve standardní složce. Pokud máte databázi Northwind umístěnou jinde, musíte si řešení instalovat podle návodu Instalace řešení níže. K práci na úlohách a cvičeních doporučuji připravit si vlastní projekt programu MS Access, návod naleznete v kapitole 3 Příprava nástroje k procvičování úloh. Instalace řešení Instalaci vzorových řešení úloh nemusíte upravovat, pokud máte vzorovou databázi Northwind umístěnou ve standardní složce C:\Program Files\Microsoft Office\Office10\Samples\. Pokud tomu tak není, postupujte následujícím způsobem. Odstraňte atribut jen pro čtení souboru C:\Uživatel databází\řešení.mdb, potom tento soubor otevřte. V menu zvolte Nástroje Správa databáze Správce propojených tabulek. V dialogu Správce propojených tabulek zaškrtněte vše kromě Intervaly a Ceny a potom stiskněte OK. V následujícím dialogu Vyberte nové umístění pro Dodavatelé nalezněte vaši databázi Northwind. Dostanete zprávu o úspěšném obnovení propojení tabulek, tu potvrďte. Zavřete okno programu MS Access. Nastavte atribut jen pro čtení souboru C:\Uživatel databází\řešení.mdb. 1 Vzorová řešení jsou dostupná také při výuce kurzů, pro něž jsou tato skripta určena. 5

6 1 Úvodní slovo a databázích Naprostá většina databází, se kterými se dnes můžete setkat, jsou databáze tzv. relační 2. To znamená, že data v nich jsou uspořádána do tabulek. Jedna tabulka v relační databázi běžně obsahuje data o věcech jednoho druhu, například můžeme mít tabulku Výrobky obsahující data o jednotlivých výrobkách. To znamená, že jednotlivé řádky této tabulky představují záznamy o jednotlivých výrobkách. Sloupce tabulek v relační databázi se nazývají pole, mají jméno, a představují jednotlivé hodnoty, do nichž jsou záznamy v dané tabulce rozděleny. V tabulce Výrobky tak můžeme mít pole NázevVýrobku, JednotkováCena, JednotkyNaSkladě a pod. Každé pole tabulky má kromě jména a významu také určen tzv. datový typ pole NázevVýrobku bude mít datový typ text maximální délky 40 znaků, pole JednotkováCena bude mít datový typ měna (v konkrétní databázi 3 to může znamenat číslo s maximálně 15ti ciframi před desetinnou čárkou a maximálně 4mi ciframi za desetinnou čárkou, se kterým se nepočítá jako se zaokrouhleným reálným číslem), pole JednotkyNaSkladě bude mít datový typ malé celé číslo (v konkrétní databázi to může znamenat rozsah od do , tj. 2byte v binárním kódování čísla). Dalšími často používanými datovými typy, kromě text zvolené maximální délky a číslo zvolené přesnosti, jsou datum a ano/ne. Moderní relační databáze nabízejí také datové typy pro ukládání delších textů proměnné délky, datové typy pro obrázky, pro zvuky apod. Tabulky v databázi mívají obvykle tzv. klíč klíč tabulky je skupina polí v této tabulce, podle níž lze jednotlivé záznamy jednoznačně identifikovat. Většinou jde o jediné pole 4. V případě tabulky Výrobky může být jejím klíčem např. pole ČísloVýrobku klíče jsou často uměle vytvořené identifikační kódy pro účely organizace databáze. 2 Název pochází od matematického pojmu relace, jejž v roce 1969 použil pan E.F.Codd jako základní představu pro organizaci dat v databázi matematickou relaci lze mimo jiné zapsat jako tabulku. Představa, že tabulka, jejíž řádky představují záznamy o objektech v realitě, je matematickou relací, se však může jevit poněkud absurdní. Pouze v případě, že tabulka relační databáze zaznamenává vztah mezi objekty světa, je její chápání jako matematické relace rozumné. Pojem relace používaný v MS Access (viz str. 9) i v některých jiných programech pro správu dat je však něco docela jiného, zde jde o skutečný vztah mezi objekty. 3 Takto to je v SŘBD MS Access. K tomuto datovému typu zde patří i formátová vlastnost, že hodnoty jsou zobrazovány se znakem národní měny, např. nebo. 4 Ne však vždy, ve vzorové databázi má tabulka Rozpis objednávek klíč složený ze dvou polí. 6

7 2 Seznámení se vzorovou databází Northwind 2.1 Vysvětlení kontextu a významu dat Databáze Northwind obsahuje data o následujícím obchodním kontextu (viz též orientační obrázek níže): Dodavatelé dodávají výrobky, které nabízíme svým zákazníkům. Výrobky máme roztříděny do kategorií. O výrobkách máme běžné katalogové a skladové záznamy, kromě jiného také aktuální jednotkovou cenu. Naši zákazníci podávají objednávky, v nichž objednávají vybrané výrobky ve zvoleném množství, navíc mohou v dané objednávce pro daný druh výrobku získat slevu. U každého objednání nějakého výrobku v nějaké objednávce máme tedy vždy zaznamenáno množství objednaných kusů tohoto výrobku v dané objednávce, dohodnutou procentuelní slevu pro tento výrobek v dané objednávce, a cenu výrobku platnou v době objednání, protože aktuální cena výrobku se může měnit. Zákazníci i dodavatelé jsou smluvní partneři 5, o kterých si vedeme záznamy: u každého máme kromě jména firmy a adresy také jméno kontaktní osoby a funkci této osoby v partnerské firmě. U některých dodavatelů máme navíc poznamenáno URL domovské stránky. Každou objednávku přijímá nějaký náš zaměstnanec. O zaměstnancích máme zaznamenány personální údaje, dále máme u všech, kromě nejvyššího šéfa, zapsáno kdo je jejich nadřízený. patří do DRUH VÝROBKU ČísloVýrobku NázevVýrobku MnožstvíVJednotce JednotkováCena PočetKsNaSkladě ObjednánoKs MinimálníÚroveňKs NákupUkončen ZAMĚSTNANEC ČísloZaměstnance Příjmení Jméno FunkceZaměstnance FormálníOslovení DatumNarození ZaměstnánOd Adresa TelefonDomů Linka Foto Poznámky KATEGORIE ČísloKategorie NázevKategorie Popis Obrázek je objednán v podřízený dodává přijímá má nadřízeného nadřízený PočetKs CenaZaKs Sleva DODAVATEL ČísloDodavatele [DomovskáStránka] OBJEDNÁVKA ČísloObjednávky DatumObjednávky DodatDne DatumOdeslání SMLUVNÍ PARTNER JménoFirmy Adresa Telefon [Fax] je podává přebírá přepravuje u.. máme je Dopravné KONTAKTNÍ OSOBA JménoAPříjmení FunkceKontaktníOsoby ZÁKAZNÍK KódZákazníka PŘÍJEMCE JménoPříjemce Adresa PŘEPRAVCE ČísloPřepravce JménoFirmy Telefon Rozvětvené zakončení znamená eventuelně více, například: Dodavatel dodává eventuelně více druhů výrobků, Druh výrobku je objednán v eventuelně více objednávkách, Objednávka objednává eventuelně více druhů výrobků Zakončení bez rozvětvení znamená jediným/jediného, například: Druh výrobku je dodáván jediným dodavatelem, Zaměstnanec má jediného nadřízeného, U smluvního partnera máme jedinou kontaktní osobu Připojení přerušovanou čarou znamená nemusí, například: Zákazník nemusí podávat objednávku Zaměstnanec nemusí mít nadřízeného zaměstnance, Zaměstnanec nemusí být nadřízeným nějakého zaměstnance, Objednávka nemusí být předána nějakému příjemci (tzn. jinému než je zákazník) Pro každou objednávku je sjednán některý náš smluvní přepravce, jenž má zboží přepravit, a je dohodnuto a zaznamenáno dopravné. 5 Později zjistíme, že v databázi Northwind je jedna tabulka Zákazníci a jedna tabulka Dodavatelé, smluvní partneři jsou tedy rozděleni do těchto dvou tabulek. 7

8 Objednávka je běžně zasílána na jméno firmy zákazníka a jeho adresu, ale může mít určeného jiného příjemce, který ji má převzít. Ti nás ovšem zajímají pouze tehdy, když mají převzít nějakou objednávku. Zákazníci nás oproti tomu zajímají i tehdy, když žádnou jejich objednávku momentálně nemáme. Podobně si ponecháváme záznamy o přepravcích, zaměstnancích, výrobkách i v případě, že bychom neměli žádné s nimi spojené objednávky. Taktéž v případě dodavatelů, kteří by momentálně nedodávali žádné výrobky. Ostatní lépe pochopíte prohlížením tabulek v databázi Northwind. 2.2 Tabulky databáze Northwind Nalezněte a spusťte vzorovou databázi Northwind. Otevře se okno programu MS Access a v něm úvodní dialog této vzorové databáze. Tento úvodní dialog vás informuje, že vzorová databáze je výuková, že všechno v ní si lze do detailů prohlédnout. 6 Úvodní dialog zavřete tlačítkem OK, objeví se Hlavní panel. Protože tato skripta jsou určena uživatelům spíše než programátorům, není tento dialog pro nás zajímavý, je to vzor řídícího dialogu ukázkové databázové aplikace. Můžete si sice pomocí něho prohlédnout nabízené formuláře pro kategorie výrobků, pro výrobky, pro dodavatele nebo pro objednávky, dále je nabízen seznam vzorových tiskových sestav, ale toto vše si lze prohlédnout i později z okna databáze Northwind. Takže i tento Hlavní panel nakonec uzavřeme, a konečně vidíme standardní interface programu MS Access s oknem otevřené databáze. Okno databáze má vlevo přepínače typu objektů, které chceme vidět a eventuelně s nimi pracovat: tabulky, dotazy, formuláře, sestavy, stránky, makra, moduly. To všechno jsou objekty, které může databáze programu MS Access obsahovat, a vzorová databáze Northwind také obsahuje ukázky všech těchto typů objektů. Ale v našem kurzu budeme pouze potřebovat porozumět tabulkám a naučit se pracovat s dotazy a sestavami. Pro porozumění datům vzorové databáze ještě použijeme vzorové formuláře Dodavatelé, Kategorie, Objednávky, Výrobky, Zákazníci a Zaměstnanci. Nejprve se seznámíme s tabulkami. Přepněte na seznam tabulek, v okně databáze si přepněte na zobrazení podrobností. Uvidíte popis jednotlivých tabulek: Některé tabulky jsou snadné k pochopení, něco vysvětlíme. Tabulka Výrobky popisuje druhy výrobků. Smluvní partneři jsou rozděleni do tabulek Zákazníci a Dodavatelé, údaje o kontaktních osobách u smluvních partnerů jsou součástí záznamů v tabulkách Zákazníci a Dodavatelé. Tabulka Rozpis objednávek obsahuje detailní záznamy o jednotlivých objednáních jednotlivých druhů 6 Prohlížejte, ale nic neměňte. Pokud máte náhodou soubor Northwind.mdb přístupný k zápisu a ne pouze ke čtení, doporučuji pro jistotu změnit vlastnosti tohoto souboru na pouze ke čtení. 8

9 výrobků v jednotlivých objednávkách, prohlédneme si to. Otevřete 7 tabulku Objednávky, a rozviňte v několika řádcích detaily stisknutím + před řádkem: Vnořené malé tabulky představují to, co dohromady tvoří tabulku Rozpis objednávek. V té je ovšem ještě údaj o tom, ke které objednávce co patří. Po prohlédnutí můžete zavřít okno Objednávky, pak si můžete prohlédnout 7 i samotnou tabulku Rozpis objednávek.) 2.3 Schéma databáze Northwind Prohlédneme si schéma databáze. Stisknutím tlačítka Relace 8 v panelu nástrojů se otevře okno Relace. V něm je pro každou tabulku databáze zobrazeno jedno malé okénko se seznamem polí této tabulky. Okna Deset nejdražších výrobků si nevšímejte, pro nás není k ničemu. Protože objednávku podává jediný zákazník, přijímá jediný zaměstnanec, přepravuje jediný přepravce a přijímá jediný příjemce, jsou údaje o těchto faktech součástí záznamu o objednávce, tabulka Objednávky má pro ně odpovídající pole. (Pokud objednávku přebírá zákazník a ne jiný příjemce, jsou v záznamu objednávky v polích určených pro příjemce zopakovány údaje o zákazníkovi.) Všechny adresy jsou rozděleny do složek Adresa, Město, Region, PSČ, Země. Údaj o nadřízeném zaměstnanci je součástí záznamu o zaměstnanci, v poli Nadřízený. Údaj o dodavateli výrobku je součástí záznamu o výrobku, v poli ČísloDodavatele, podobně je tomu s kategorií výrobku. Čáry spojující dvojice tabulek značí tzv. relace. Ty mají několik významů, vzájemně souvisejících. První a hlavní význam je ten, že čára spojuje to co máme spolu spojovat: v tabulce Objednávky je 7 Otevření tabulky docílíme poklepáním na tabulku v seznamu, nebo pomocí tlačítka. Ve skutečnosti se tak otevře tzv. datový list tabulky. 8 Je dosažitelné pouze pokud je aktivní okno Databáze. 9

10 v poli KódZákazníka uveden kód zákazníka, který ji podal, tohoto zákazníka najdeme v tabulce Zákazníci podle shodné hodnoty v poli, jež se také jmenuje KódZákazníka. Podobně je tomu s poli ČísloZaměstance v Objednávkách i v Zaměstnancích: v tabulce Objednávky je uvedeno číslo zaměstnance, který ji přijal. Překvapivě zjišťujeme, že pole, které obsahuje číslo přepravce, který je sjednán pro přepravu objednávky, se v tabulce Objednávky jmenuje Přeprava. I to se v reálné databázi může stát, že spolu související pole se jmenují jinak. Tučně jsou vyznačeny klíče tabulek. V souvislosti s klíči mají relace většinou ještě další význam: spojují vždy klíč v jedné z tabulek s tzv. cizím klíčem v druhé tabulce: např. pole ČísloKategorie v tabulce Výrobky je v této tabulce cizím klíčem, spojeným s klíčem tabulky Kategorie. Proto jsou na koncích čar zobrazujících relace znaky 1 a. V našem případě tabulek Kategorie a Výrobky to znamená, že každý jednotlivý výrobek patří do jediné kategorie, zatímco do jednotlivé kategorie patří eventuelně více výrobků. Podobně je tomu v ostatních případech relací mezi tabulkami. Zvláštní pozornost zasluhuje tabulka Rozpis objednávek. V ní jsou dva cizí klíče: pole ČísloObjednávky a pole ČísloVýrobku jsou v ní obě cizími klíči, jsou spojeny s klíči tabulek Objednávky nebo Výrobky. Shodou okolností tvoří dvojice (ČísloObjednávky, ČísloVýrobku) zároveň klíč tabulky Rozpis objednávek Struktura tabulek v databázi Northwind Dále si prohlédněte jednotlivé tabulky 10. (V programu MS Access se oknu, v němž si prohlížíte tabulku v řádkách a sloupcích, říká datový list.) Při prohlížení se dočkáte překvapení pole tabulek, jež obsahují cizí klíč jiné tabulky (viz předchozí sekci), nezobrazují skutečné klíče-kódy, ale srozumitelná jména odpovídajících věcí či lidí. Podobně v poli Nadřízený v tabulce Zaměstnanci. Navíc v hlavičce datového listu často není jméno pole (např. KódZákazníka v tabulce Objednávky), ale jiný titulek ( Zákazník ). Toto a další důležité věci lze pochopit z návrhu tabulek 11 : každé pole má datový typ a někdy popis viditelné v seznamu v horní části okna návrhu tabulky. Další vlastnosti polí lze nalézt na kartách Obecné a Vyhledávání v dolní části okna, k tomu je vždy potřeba v seznamu nahoře vybrat to pole, jehož vlastnosti chceme dole prohlížet. Zejména si všimněte vlastností Titulek, Velikost pole (nabízené v závislosti na datovém typu pole). U výše zmíněných cizích klíčů je na kartě Vyhledávání zakódováno, co se má místo cizího klíče-kódu zobrazovat. Např. u pole ČísloZaměstnace v tabulce Objednávky a u pole Nadřízený v tabulce Zaměstnanci je zakódováno, že se má zobrazit celé jméno příslušného zaměstnance. Tyto vlastnosti se použijí, kdykoli se má pole zobrazit, tedy v datovém listu, v dotazech, sestavách a formulářích. (Pokud ovšem explicitně nezvolíme pro daný případ vlastnosti jiné.) V zobrazení datového listu tabulky Kategorie vidíme v poli Obrázek pouze text Rastrový obrázek. Samotný obrázek zobrazíte poklepáním na Rastrový obrázek Tomu je tak, protože tabulka Rozpis objednávek zaznamenává vztah eventuelně více eventuelně více mezi objednávkami a druhy výrobků. V takovýchto případech je situace vždy stejná jako zde. 10 Vyberte tabulku v seznamu, pak nebo klávesa Enter či poklepání na jménu tabulky, či lokální menu vyvolané pravým tlačítkem myši 11 Tlačítko dosažitelné buď z okna Databáze, nebo z lokálního menu na tabulce či na titulkovém pásu datového listu, či jako samostatná volba Zobrazit v panelu nástrojů zcela vlevo. 12 Vzorové databáze Northwind se drobně odlišují ve verzi 2000 a Pole Foto tabulky Zaměstnanci v jednom případě obsahuje Rastrový obrázek, v druhém případě je v něm jméno souboru obsahujícího obrázek. Rastrový obrázek je zaznamenán v databázi, je její součástí, kdežto soubor s obrázkem je mimo databázi. 10

11 2.4.1 Vysvětlení k některým polím v databázi Northwind Některá pole některých tabulek v databázi Northwind stojí za zvláštní zmínku. Pole Telefon a Fax jsou typu text, a ne nějakého číselného typu. To je proto, že ve skutečnosti nejde o čísla, s nimiž lze dělat výpočty, ale o číselné kódy. Navíc se často používají různé oddělovací znaky na členění telefonních čísel podívejte se do příslušných datových listů. Pole Kontaktní osoba u Zákazníků a Dodavatelů obsahuje jméno i příjmení, někdy i více částí. To lze spíše považovat za nevhodné. Lépe je tomu v tabulce Zaměstnanci, kde jsou zvlášť pole Jméno a Příjmení. Pole Poznámky v tabulce Zaměstnanci a pole Popis v tabulce kategorie jsou typu memo, což je datový typ pro text předem neurčené délky, tzv. volný text. Pole Dopravné v tabulce Objednávky a obě pole JednotkováCena v tabulkách Rozpis objednávek i Výrobky jsou typu měna. To je speciální číselný typ, určený k ukládání peněžních údajů. Je to přesný číselný typ (tedy se nezaokrouhluje), a v programu MS Access je zobrazován se znaky národní měny. Je třeba mít na paměti, že znaky jsou pouze zobrazovány, nikoli uloženy v datech v tabulkách, jde tedy pouze o formát. Pole Sleva v tabulce Rozpis objednávek je typu číslo jednoduché přesnosti. To je datový typ, se kterým se počítá jako se zaokrouhleným reálným číslem, tedy nepřesný číselný typ 13. Navíc má formát procenta, tedy například pokud je v tabulce uložena hodnota 0,2 pak je zobrazováno 20%. Pole Obrázek v tabulce Kategorie je typu objekt OLE (obsahuje celé obrázky), kdežto pole Foto v tabulce Zaměstnanci je typu text (osahuje pouze jméno souboru s obrázkem). 2.5 Formuláře Pro názornost a pochopení si můžete prohlédnout vzorové formuláře v databázi Northwind, formuláře najdete přepnutím na v okně Databáze. Jsou zde formuláře pojmenované stejně jako jména tabulek, ty doporučuji vyzkoušet. Formuláře obecně slouží k pohodlnému prohlížení dat či ke vkládání nových dat. 2.6 Pochopení dat Prohlížejte si tabulky, jejich strukturu, a hlavně schéma databáze tak dlouho, až pochopíte význam dat v databázi. Pokud někdy později budete mít pocit, že datům nějak nerozumíte, vždy se vraťte k těmto nástrojům: relace, návrhy tabulek, event. datové listy. 13 Reálné číslo s plovoucí desetinnou čárkou. 11

12 3 Příprava nástroje k procvičování úloh Vzorová databáze Northwind obsahuje množství vzorových dat i vzorové aplikační objekty ke zpracování dat. Jsou zde i takové objekty, jejichž výklad či vysvětlení přesahuje rámec záměru těchto skript, neboť databáze Northwind je ukázkou řešení i pro tvůrce aplikací programátory. Abyste tuto vzorovou databázi při svých pokusech neporušili (na učebnách a studovnách VŠE je dokonce přístupná pouze pro čtení), vytvoříte si vlastní nástroj pro pokusy a práci: Spusťte program MS Access a v úvodním dialogu vyberte Vytvořit novou prázdnou databázi. V následujícím dialogu uložte nový databázový soubor do nějaké vaší vlastní složky, nějak vhodně si ho pojmenujte. Objeví se standardní interface programu MS Access, s otevřenou vaší novou databází. Protože při práci s vaší databází budete chtít nahlížet také do databáze Řešení či do vzorové databáze Northwind, mohla by se vám okna plést. Proto je dobré zařídit, aby tlačítka na hlavním panelu Windows představující jednotlivé otevřené databáze MS Access byla od sebe odlišitelná. Databáze Řešení má název řešení na odpovídajícím tlačítku, ve vaší databázi totéž zařídíte následujícím postupem: V menu Nástroje vyberte Po spuštění a dialogu Po spuštění zadejte do pole Název aplikace nějaké vaše zvolené jméno: To jméno se pak objeví na hlavním panelu Windows, i v titulku okna MS Access s vaší databází. Další krok se týká úspory místa, které vaše databáze bude zabírat: v menu Nástroje vyberte Možnosti, a na kartě Obecné zaškrtněte vlevo dole Komprimovat při zavření 14 : Nyní do vaší databáze připojíte data ze vzorové databáze Northwind. Z menu Soubor vyberte Načíst externí data,. V následujícím dialogu Propojit najděte vzorovou databázi Northwind. V dalším dialogu Propojit tabulky použijte tlačítko a stiskněte OK. Nyní je vaše databáze připojená k datům vzorové databáze Northwind, aniž byste vytvářeli zbytečnou kopii těchto dat. Takto vypadají nyní objekty Tabulky ve vaší databázi: 14 Toto způsobí opravdu významnou úsporu místa, ale je to možno použít pouze u nesdílených souborů MS Access. Sdílené databáze je třeba komprimovat (například správcem databáze) explicitně v době, kdy s databází nikdo jiný nepracuje volbou v menu Nástroje-Správa databáze-zkomprimovat a opravit databázi. 12

13 Poznámka: Analogicky si lze připravit uživatelský nástroj připojující vás k jiné databázi. Podmínkou je dosažitelnost databáze, k níž se chcete připojit (tj. existence a znalost přístupových cest) a schopnost programu MS Access číst data eventuelně cizího formátu. Některé použitelné formáty můžete vidět v dialogu Propojit jako nabízené typy souborů, jiné mohou být dosažitelné prostřednictvím ovladače ODBC (konzultujte případně svého správce systému). Dále z databáze Northwind zkopírujeme dva dotazy: v menu Soubor vybereme opět Načíst externí data, ale tentokrát zvolíme, a opět nalezneme vzorovou databázi Northwind. Následující dialog Import objektů má více karet, vybereme kartu Dotazy a na ní dotazy Mezisoučty objednávek a Rozšířené podrobnosti objednávek. Tyto dva dotazy jsou užitečné pro realizaci mnoha úloh (viz konec této kapitoly). Takto vypadají nyní objekty Dotazy ve vaší databázi: Ještě si ve svém projektu upravte relace. V panelu nástrojů stiskněte tlačítko Relace, otevře se okno Relace. V něm jsou nějaké objekty propojené čarami, to vše se sem dostalo při propojování dat z databáze Northwind, protože jste zvolili Vybrat vše. Přidáte oba zkopírované dotazy: v menu Relace vyberte Zobrazit tabulku, v následujícím dialogu Zobrazit tabulku na kartě Dotazy vyberte oba dotazy Mezisoučty objednávek i Rozšířené podrobnosti objednávek. Přesouváním a zvětšováním obdélníčků upravte vzhled v okně Relace do podoby podle obrázku na následující straně dole. Dále vytvořte propojení mezi Rozšířené podrobnosti objednávek a Výrobky : v menu Relace vyberte Upravit relaci, v následujícím dialogu zmáčkněte tlačítko Vytvořit novou nastavte a v dialogu potvrďte, a v dialogu Upravit relace zmáčkněte propojení: 13. Podobně vytvořte dvě další

14 Vaše relace nyní mají vypadat takto: (Vzory relací si můžete prohlédnout i v databázi Řešení.) Kontrolu správnosti či opravy chyb v okně Relace můžete udělat takto: v menu Relace vyberte Zobrazit všechny relace. Pokud se objevilo něco navíc oproti vaší představě (oproti tomu, jak je to na vzoru zde nahoře), pak odstraňte nejprve přebytečné čáry neboli relace tím, že na ně klepnete myší (je třeba se trefit) a stisknete klávesu Delete, následně potvrďte. Pak teprve odstraňujte eventuelní přebývající objekty obdélníčků (tj. přebytečné tabulky nebo dotazy). 3.1 K čemu slouží relace ve vašem projektu? Okno zobrazující relace vám může sloužit jako zobrazení schématu databáze, při němž si můžete rozmýšlet strategii vašich dotazů. (Tlačítko pro otevření okna Relace je dostupné, když je aktivní okno Databáze.) Relace definované v databázi MS Access jsou cenným pomocníkem při tvorbě dotazů, sestav, formulářů. Poznámka: Pokud jste si připravili databázi MS Access připojující vás k cizímu zdroji podle dřívější poznámky, je vhodné upravit si také relace. Jaké by měly být, to vám může poradit vlastník či správce zdroje dat. 3.2 Dotazy Rozšířené podrobnosti objednávek a Mezisoučty objednávek Poklepáním na ikony Rozšířené podrobnosti objednávek a Mezisoučty objednávek si prohlédněte datové listy těchto dotazů. Prohlížení ukončete zavřením oken s těmito dotazy. 14

15 Oba dotazy ze vzorové databáze Northwind slouží jako pomocné dotazy pro mnoho úloh. První z nich, Rozšířené podrobnosti objednávek, dopočítává celkovou částku účtovanou za jeden druh výrobku v jedné objednávce. Zhruba řečeno, dopočítává JednotkováCena*Množství*(1-Sleva) k Rozpisu objednávek. (Tento výpočet je ještě upraven kvůli zaokrouhlovacím chybám.) Dotaz Mezisoučty objednávek pak dopočítává pro každou objednávku výrobky v objednávce JednotkováCena*Množství*(1-Sleva) V běžných obchodních databázích bývají tyto vypočtené hodnoty ukládány přímo v databázi, tj. v tabulce podobné Rozpisu objednávek bývá ještě sloupec analogický poli VýslednáCena z dotazu Rozšířené podrobnosti objednávek, a v tabulce podobné Objednávkám bývá ještě sloupec analogický poli Mezisoučet z dotazu Mezisoučty objednávek Úprava dotazu Rozšířené podrobnosti objednávek Dotaz Rozšířené podrobnosti objednávek je poněkud nevhodně navržen pro naše účely. Upravíme ho: Otevřeme návrh tohoto dotazu tlačítkem, klepneme na seznam Výrobky a klávesou Delete ho z dotazu odstraníme. Tím je úprava skončena, uložíme z menu Soubor-Uložit či tlačítkem Uložit v panelu nástrojů. Návrh nyní vypadá takto: 3.3 Kopie vzorových řešení Z databáze Řešení si kdykoli můžete do svého projektu importovat některé objekty, pokud pocítíte takovou potřebu. Postup je následující: v menu Soubor vyberte Načíst externí data, zvolte, a nalezněte databázi Řešení. Následující dialog Import objektů má více karet, vyberte kartu s příslušným typem objektů a nalezněte žádaný objekt. Pokud chcete importovat sestavu, musíte si k ní přiimportovat i příslušný její datový zdroj jak zjistit, který to je, popisuje kapitola Sestavy. Pro začátek si importujte dotaz Smluvní partneři. Tento dotaz poskytuje ucelený pohled na smluvní partnery, ať zákazníky nebo dodavatele. Propojovat ho v relacích nebudeme, neboť se použije jen zřídka. (Příkladem jeho použití jsou dotazy Tři části jména a Zákazníci a dodavatelé výrobků podle měst.) Dále se vám může často hodit dotaz Jména zaměstnanců 15, importujte si ho též. V dalším textu se občas setkáte s výzvou, abyste si pořídili kopii nějakých dalších objektů. 15 Pro sloupce křížových dotazů či do kontingenčních tabulek nebo grafů. 15

16 4 Jednoduché dotazy Dotazy jsou hlavní nástroj pro získávání informací z databáze. Nejčastěji poslouží tzv. jednoduché dotazy. Jednoduché dotazy lze většinou vytvořit pomocí průvodce. Použijeme tohoto průvodce k tomu, abychom vytvořili první dotaz jako příklad, a na něm si vysvětlíme, co dotazy vlastně jsou. 4.1 První jednoduchý dotaz Přepněte okno Databáze na Dotazy: Zde je ikona Vytvořit dotaz pomocí průvodce. Spusťte ji 16. Spustí se průvodce, první krok. V tomto kroku vybíráte některá pole z některých tabulek: nejprve v seznamu Tabulky či dotazy vyberete příslušnou tabulku, čímž se v seznamu Dostupná pole vlevo dole objeví všechna pole vybrané tabulky. Z tohoto seznamu vybíráte 17 některá pole do seznamu Vybraná pole vpravo dole. Můžete pokračovat zvolením další tabulky. Vyberte takto z tabulky Zákazníci pole Firma, z tabulky Kategorie pole NázevKategorie a z tabulky Výrobky pole NázevVýrobku, stiskněte tlačítko Další. Následující krok průvodce zatím zcela přeskočíme, tedy ještě jednou Další. V následujícím kroku pojmenujte tento první dotaz, a dokončete průvodce tlačítkem Dokončit. Otevřel se datový list s odpovědí na dotaz. Odpověď na dotaz je tabulka, sestavená podle nějakého návodu. Tímto návodem je formulace dotazu. Tuto si lze prohlédnout, když přepneme na zobrazení Návrhové 18. Formulace dotazu říká, z jakých tabulek má být odpověď vytvářena, jak mají být tyto tabulky navzájem spojeny, a jaká pole mají být ve výsledku vybrána. Složitější dotazy mohou mít další specifikace. 16 nebo klávesa Enter či poklepání na ikonu, či lokální menu vyvolané pravým tlačítkem myši 17 Poklepání nebo klávesa Enter nebo pomocí tlačítek se šipkami mezi oběma seznamy v dialogu průvodce. 18 Z menu Zobrazit, či přepínačem v panelu nástrojů. 16

17 V našem případě byly průvodcem vybrány tabulky Zákazníci, Objednávky, Rozpis objednávek, Výrobky a Kategorie, spojeny byly tak jak to naznačují čáry mezi nimi v horní části okna návrhu dotazu. Vybrána byla pole, která jsme vybrali v průvodci ta jsou v dolní části návrhu dotazu, v tzv. návrhové mřížce dotazu. Co to průvodce udělal a proč? Pomůže nám pohled na schéma databáze. Označme si pole, která jsme v průvodci vybrali: DODAVATELÉ ČísloDodavatele Firma KontaktníOsoba Funkce Adresa Město Region P SČ Země Telefon Fax DomovskáStránka KATEGORIE ČísloKategorie NázevKategorie Popis Obrázek 1 1 VÝROBKY ČísloVýrobku NázevVýrobku ČísloDodavatele ČísloKategorie MnožstvíVJednotce JedotkováCena JednotkyNaSkladě ObjednánoJednotek MinimálníÚroveň NákupUkončen 1 ROZPIS_OBJEDNÁVEK ČísloObjednávky ČísloVýrobku JedotkováCena Množství Sleva ZAMĚSTNANCI ČísloZaměstnance Příjmení Jméno Funkce FormálníOslovení DatumNarození ZaměstnánOd Adresa Město Region PSČ Země TelefonDomů Linka Foto Poznámky Nadřízený 1 1 OBJEDNÁVKY ČísloObjednávky KódZákazníka ČísloZaměstnance DatumObjednávky DodatDne DatumOdeslání Přeprava Dopravné JménoPříjemce AdresaPříjemce MěstoPříjemce RegionPříjemce PSČPříjemce ZeměPříjemce ZÁKAZNÍCI 1 KódZákazníka Firma KontaktníOsoba Funkce Adresa Město Region PSČ Země Telefon Fax PŘEPRAVCI 1 ČísloPřepravce Firma Telefon Tato vybraná pole jsou z různých tabulek, bez uvažování souvislostí mezi tabulkami databáze by nebylo jasné, jak hodnoty Firma, NázevKategorie a NázevVýrobku vzájemně kombinovat. Vhodné kombinace jsme již dříve určili relacemi mezi tabulkami, v okně Relace. Tam jsou zadány souvislosti mezi některými tabulkami. Souvislosti mezi ostatními tabulkami mohou být odvozeny jako cesty propojení z relací. Takže například souvislost mezi Výrobky a Zákazníci může být odvozena ze souvislostí mezi Výrobky a Rozpis objednávek, dále mezi Rozpis objednávek a Objednávky a nakonec mezi Objednávky a Zákazníci. Průvodce vlastně hledal cestu mezi tabulkami Výrobky a Zákazníci tvořenou relacemi, jež jsou v databázi zvoleny. Tento postup, tedy hledání cesty spojující pole, jež pro své účely potřebujeme, můžeme dělat i sami, prohlížejíce si schéma databáze. V našem případě bude uděláno toto: Pro danou zákaznickou firmu budou nalezeny všechny objednávky, jež tento zákazník podal, a to podle relace dané kódem zákazníka. Dále každé objednávce podané tímto zákazníkem budou nalezeny všechny řádky z tabulky Rozpis objednávek podle relace dané číslem objednávky. Ke každému z těchto řádků bude nalezen výrobek z tabulky Výrobky podle relace dané číslem výrobku. U tohoto výrobku bude přečten název výrobku výsledkem je dvojice Firma, NázevVýrobku. Význam této kombinace je, že tato zákaznická firma někdy objednala výrobek tohoto názvu, existuje taková objednávka. Pokud zákaznická firma takové objednání udělala vícekrát, bude kombinace těchto dvou hodnot, Firma a NázevVýrobku, ve výsledku vícekrát tolikrát, kolik bylo řádků v Rozpisu objednávek s daným číslem výrobku a číslem nějaké objednávky, kterou podal tento zákazník. 17

18 Pohleďte znovu na odpověď na dotaz tím, že přepnete na zobrazení datového listu 19. Přesvědčte se, že trojice Save-a-lot Markets, Nápoje, Chang je na řádcích 46, 49, 58, 59, 76. To znamená, že zákazník Save-a-lot Markets objednával výrobek Chang celkem 5krát (v 5ti objednávkách) Řazení v návrhu dotazu V odpovědi se nám špatně vyhledává, je nepřehledná. To napravíme požadavkem na řazení v návrhu dotazu. Upravte mřížku dotazu:, a podívejte se na odpověď v datovém listu. Řádky jsou řazeny podle zákazníků (abecedně podle firem). Ještě je vhodné upravit pořadí výsledků u jednotlivých zákazníků: Nyní je prvním klíčem uspořádání odpovědi jméno firmy zákazníka, druhým klíčem je název kategorie, a třetím název výrobku. Do našeho dotazu můžeme přidat požadavek na zobrazení datumu objednávky. Asi by v tuto chvíli bylo hloupé začínat celý dotaz znovu od začátku. Místo toho si zde další pole přidáme: Horní část návrhového zobrazení dotazu, ve které jsou tabulky, může sloužit i jako nabídka polí, jež chceme přidat do mřížky dotazu. V okénku zobrazujícím seznam polí tabulky Objednávky vyberte pole DatumObjednávky 20. (Také bylo možno zvolit toto pole přímo ve volném sloupci v mřížce dotazu.) Pak požádejte o zobrazení datového listu odpovědi na dotaz. Je přidána informace o datu objednávek. Nyní nás nemusí uspokojovat řazení, které jme předtím zadali, a budeme chtít u jednotlivých zákazníků řadit chronologicky. V návrhu dotazu změníme řazení (zrušíme řazení u NázevKategorie a NázevVýrobku): Pohled na odpověď je nyní vzhledem k požadavku na chronologické řazení lepší, ale možná by bylo lépe, kdyby se DatumObjednávky přesunulo doleva hned za Firma. V návrhovém zobrazení vybereme celý sloupec v mřížce tak, že klepneme nad sloupec a tažením myší za horní lištu sloupce ho přesuneme. Opět si prohlédněte odpověď. 19 Z menu Zobrazit, či přepínačem v panelu nástrojů. 20 Poklepání nebo Enter. 18

19 4.1.2 Co je dotaz Uložte svůj dotaz 21. Co se vlastně uložilo? Uložil se návrh dotazu, nikoli odpověď. Jestliže příště otevřete svoji databázi MS Access, naleznete v ní svůj dotaz, a spustíte ho, tj. požádáte o zobrazení datového listu odpovědi, může být odpověď jiná, pokud se data ve zdrojové databázi mezitím změnila. Podstatnou částí návrhu dotazu je SQL-kód dotazu. Tento kód můžete vidět po otevření dotazu přepnutím na Zobrazení SQL. SQL-kód je to, co MS Access pošle databázovému serveru, pokud máte data propojená z nějakého databázového serveru a dotaz převedete na předávací. 22 Databázový server pošle programu MS Access tabulku odpovědi. Další částí uloženého návrhu dotazu mohou být formátové požadavky na zobrazení datového listu v MS Access. O tom je následující sekce Úpravy v datovém listu odpovědi Máte-li zobrazen datový list odpovědi, můžete použít menu Formát pro úpravy vzhledu datového listu. Lze též seřadit datový list odpovědi pomocí tlačítek v panelu nástrojů, nebo hledat pomocí tlačítka (totéž jako menu Úpravy-Najít). V tom případě se řadí podle vyznačených sloupců nebo hledá ve vyznačených sloupcích. Zrušení řazení v datovém listu uděláte z menu Záznamy-Zrušit filtr či řazení dat. Dále můžete v datovém listu použít filtr. Tento filtr pracuje nad hotovou odpovědí, neposílá se tedy databázovému serveru. Důvodem k jeho použití může být to, že nechcete znovu a znovu posílat dotazy na databázový server, což může být nákladné, ale chcete různě prozkoumávat odpověď, kterou jste již dostali. V takovém případě by byl postup tento: v menu Záznamy vyberete Rozšířený filtr, a dále postupujete jako při kritériích v návrhu dotazu tato budou vyložena v následující sekci. Pokud chcete vytvořený filtr použít, zmáčknete tlačítko. Tento filtr lze pak vypínat a zapínat tímto tlačítkem, či změnit na jiný filtr pomocí opětného vyvolání Záznamy-Rozšířený filtr. Pohodlnější cestou v takovém případě ale bude zkopírovat si celý datový list (menu Úpravy-Vybrat všechny záznamy, pak kopie) a vložit ho do programu MS Excel, kde jsou lepší možnosti práce. Jinou možností je uložit tabulku odpovědi do databáze (projektu) MS Access tím, že při návrhovém zobrazení dotazu změníte v menu Dotaz volbu na Vytvářecí dotaz, a novou tabulku pojmenujete, následně dotaz spustíte, čímž se nová tabulka vytvoří. Při práci s touto tabulkou je pak třeba pamatovat na to, že se jedná o kopii zdrojových dat, která již nemusí být aktuální Kritéria v návrhu dotazu Dotaz může požadovat, aby do odpovědi byly vybrány pouze některé řádky. Tento výběr určíme zadáním kritérií. Můžeme například požadovat výběr pouze těch řádků, kdy datum objednávky bylo z roku V řádku Kritéria ve sloupci DatumObjednávky v mřížce návrhu dotazu napíšeme, znaky # nemusíte na klávesnici hledat, program MS Access je za vás doplní je tedy možno napsat pouze Between and Můžeme přidat další kritérium: chceme pouze objednávky firmy Bon app v roce Z menu Soubor-Uložit nebo tlačítkem v panelu nástrojů. 22 Databázový server může podporovat jinou verzi SQL a může mít svůj dialekt. V takovém případě je vždy nutné se seznámit s dotazovacím jazykem, jejž server používá. Kód vygenerovaný z návrhového zobrazení dotazu v MS Access je třeba upravit do podoby vhodné k předání databázovému serveru. Pokud máte propojená data z nějaké klientské databáze, provádí příkaz SQL nad cizími daty MS Access sám. 19

20 uvozovky obalující text Bon app opět nemusíte psát, MS Access je za vás doplní. Další příklady je možno nalézt v databázi Řešení, ve skupině Jednoduché. Následující sekce podává systematický výklad možností kritérií v dotazech. 4.2 Kritéria v dotazu Datový Možnosti kritérií typ pole text, memo číslo datum logická hodnota všechny typy Poznámka "konkrétní text" V textu nesmí být znak ", lze alternativně použít jednoduché uvozovky: 'text' Like "text se zástupnými symboly" >, >=, <, <= "konkrétní text" Between "konkrétní text" and "konkrétní text" číslo >, >=, <, <= číslo Between číslo 1 and číslo 2 datum >, >=, <, <= #datum# Between #datum 1 # and #datum 2 # ano, ne 26 In (hodnota 1 ;hodnota 2 ; ) Zástupné symboly jsou 23 : * jakýkoli úsek textu? jeden znak Řadí se podle abecedy. Nemá přílišný praktický význam. má spíše význam pouze u diskrétní škály možných čísel čísla píšeme s národním oddělovačem desetinných míst 24, bez dalších formátových znaků používáme formát datumů národní lokalizace 25 Hodnoty musí být zapsány ve formátu odpovídajícího datového typu. Poznámky pod čarou týkající se SQL databází budou přicházet v úvahu, pokud budete pomocí MS Access připojeni k nějaké SQL databázi jiné než MS SQL Server. Kritéria lze kombinovat. Je-li více kritérií v jednom řádku, mají být splněna všechna najednou. Máme-li na mysli alternativní kritéria, musíme použít více řádků: každý řádek je jedna alternativa jako příklad viz dotaz Snadno dostupné výrobky ve skupině Jednoduché. 23 Ve standardu SQL jsou to znaky % a _. 24 V SQL-databázích to bývá desetinná tečka. 25 V SQL-databázích bývá obvyklý formát rok/měsíc/den. 26 V SQL-databázích to může být y,n nebo 0,1 nebo f, t (jako false, true). 20

21 V kritériích lze též vzájemně porovnávat různá pole ze stejné databáze, příklady viz dotazy Dopravné víc než 5% mezisoučtu a Výrobky k doobjednání ve skupině Jednoduché, v nichž se zároveň používají i výrazy. Složitějším příkladem porovnání dvou polí vzájemně je dotaz Zlevnění výrobku, to je poměrně velmi náročný dotaz. 4.3 Jedinečné hodnoty Pokud chceme zamezit opakování řádků v odpovědi, jako tomu bylo v našem prvním dotaze, než jsme do něj přidali pole DatumObjednávky, lze to udělat v návrhovém zobrazení dotazu v dialogu Vlastnosti dotazu. Tento dialog zavoláme stištěním tlačítka -Vlastnosti a následným klepnutím myší mimo návrhovou mřížku i mimo seznamy polí tabulek v horní části. V dialogu Vlastnosti dotazu v řádku Jedinečné hodnoty zvolíme Ano 27 : Příklady viz ve skupině Jednoduché, jež mají poznámku jedinečné hodnoty!. 4.4 Výrazy v dotazu V dotazech lze použít i výrazy, buď jako nové pole v mřížce návrhu dotazu, nebo v kritériích. Příklady viz dotazy Den v týdnu objednávky 10305, Hodnota skladu, Lhůty dodání, Jména zaměstnanců ve skupině Jednoduché. Nové ( vypočítané ) pole v návrhu dotazu má datový typ a formát, implicitně určený programem MS Access. Můžeme chtít formát, eventuelně datový typ, změnit. Jako příklad viz v dotazu Dopravné víc než 5% mezisoučtu pole Dopravné/Mezisoučet. To má formát Procenta. Datový typ lze změnit použitím některé z funkcí konverze datových typů. Jako příklad viz dotaz Rozšířené podrobnosti objednávek, výraz pro pole VýslednáCena. Zde je použita funkce Ccur, konverze na typ měna. Důvodem k tomuto jejímu použití v tomto dotazu je to, že pole Sleva v tabulce Rozpis objednávek je typu jednoduchá přesnost, což je datový typ, jenž povoluje nepřesnosti při výpočtech. Pak celý výraz [Rozpis objednávek].jednotkovácena*[množství]*(1-[sleva]) je typu jednoduchá přesnost, a výsledek je nepřesný. Ve výrazu pro VýseldnáCena je dále ještě dělení 100 a následné násobení 100 proto, že typ měna má v MS Access 4 desetinná místa za desetinnou tečkou, a tímto získáme 2 desetinná místa. Vzorová databáze Northwind se tím, že pole VýslednáCena není přímo obsaženo v tabulce Rozpis objednávek (tedy při zaznamenávání objednávky není tato hodnota vypočítána a následně hned uložena), stává uživatelsky nepříjemnou 28. Podobná poznámka platí i pro Mezisoučet, jenž by mohl být přímo součástí záznamů tabulky Objednávky. V mnoha obchodních databázích jsou tyto vypočítané hodnoty ukládány ve vypočítaných polích tabulek. 27 Tím přidáme klíčové slovo DISTINCT za SELECT v SQL-kódu. 28 A provozně neefektivní, neboť příslušné výpočty musí být stále znovu prováděny. 21

22 4.4.1 Formát a zobrazení pole v dotazu Pole v návrhu dotazu, jež je polem nějaké tabulky nebo jiného dotazu vstupujícího jako tabulka do stávajícího dotazu, přebírá všechny vlastnosti, tedy i formát. Pokud něco z toho chceme změnit, uděláme to v dialogu vlastností pole, jejž lze pro sloupec, ve kterém je kurzor, vyvolat kombinací kláves Alt+Enter nebo stisknutím tlačítka -Vlastnosti v panelu nástrojů. Pole může být i přejmenováno, a to vepsáním nového jména a dvojtečky dopředu v prvním řádku v daném sloupci v mřížce návrhu dotazu. Příklady viz pole ZeměPůvodu v dotazu Snadno dostupné výrobky nebo pole HodnotaSkladu v dotazu Hodnota skladu, a jiné. V těchto příkladech mají zmíněná pole ještě zvolený titulek. Titulek pole můžeme zadat ve vlastnostech pole. Titulek polí může být, jako ostatní vlastnosti, převzat z původní tabulky nebo dotazu vstupujícího jako tabulka do stávajícího dotazu. Toto lze ve stávající dotazu změnit Tvůrce výrazů Pro tvorbu výrazů lze použít tvůrce výrazů, jejž lze zavolat tlačítkem -Sestavit v panelu nástrojů pro návrh dotazu 29. Okno Tvůrce výrazů má v horní části políčko pro sestavovaný výraz, a pod ním je nabídka toho, co lze při sestavování použít. toto je políčko pro sestavovaný výraz zde se objevuje seznam daný výběrem vlevo a zde eventuelně další, podle výběru uprostřed V levém seznamu dole je základní členění. Pokud například do výrazu potřebuji pole nějaké tabulky, rozvinu nejprve nabídku tabulek pomocí před Tabulky, pak naleznu tuto tabulku a vyberu ji v seznamu. V prostředním seznamu dole se objeví seznam polí této tabulky. Poklepáním či vybráním a pak klávesou Enter umístíme vybrané pole na pozici kurzoru do sestavovaného výrazu v políčku nahoře. S poli jiných dotazů je to analogické 30. Dále si povšimněte nabídky Funkce Vestavěné funkce, kde nalezneme tematicky rozdělené funkce, jež lze ve výrazech MS Access použít. Pokud bychom MS Access použili pro připojení k databázovému serveru a dotaz tomuto serveru předávali, pak lze použít jen ty funkce, jež onen databázový server umí. 29 Tvůrce výrazů lze zavolat i v jiných situacích, nejenom při navrhování dotazu, například při tvorbě výrazu v tiskové sestavě. Pak může být spouštěn jiným způsobem. 30 V jiných situacích nás mohou zajímat i pole jiných typů objektů. 22

23 Pokud potřebujeme nějakou funkci, nejlépe je do sestavovaného výrazu nejprve vybrat tuto funkci, a pak v jejích argumentech nahrazovat to, co tam chceme dát. Poslední v seznamu jsou Konstanty, Operátory, Běžné výrazy prohlédněte. Nejběžnější značky jsou na tlačítkách pod políčkem pro sestavovaný výraz. Někdy se stane, že tvůrce výrazů do sestavovaného výrazu vloží text «Výraz», jež se nám nehodí. Je třeba sledovat, co se v políčku pro sestavovaný výraz objevuje, a eventuelně nežádoucí části smazat. Užitečná je první volba v seznamu vlevo, jež nabízí pole dotazu 31, s nímž právě pracujete. Zde se ovšem nabízejí pouze pole z již uložené verze dotazu. Pro pohodlnou práci je tedy možné nejprve do návrhové mřížky dotazu vložit všechna pole, jež budou do výrazu potřeba, pak dotaz uložit, a následně zavolaný tvůrce výrazů nám v první nabídce poskytne všechna pole potřebná k sestavení výrazu. Jen v případě shody jmen polí v různých tabulkách z dotazu je třeba specifikovat, které z nich myslíme. Tehdy je třeba vybrat tabulku, a pak její pole. Do výrazu se pak dostane úplná specifikace obsahující i jméno tabulky. Pozor do výrazů v dotazu nelze použít jména pojmenovaných nebo přejmenovaných polí tohoto dotazu, to není legální a až na výjimky takový dotaz nefunguje. V takovém případě nezbývá než namísto odpovídajícího jména jiného sloupce použít výraz, který ten jiný sloupec vytvořil. Pokud bychom například v dotazu Přehled objednávek ve skupině Jednoduché chtěli přidat kritérium porovnávající zemi zákazníka se zemí zaměstnance, pak bychom museli ve sloupci Zákazníci_Země vytvořit kritérium, a nikoli toto by bylo špatně Lupa Výraz lze psát vždy také ručně, bez pomoci tvůrce. Pokud je náš výraz delší, a chceme ho psát, nebo pokud si chceme delší výraz prohlédnout, vyvolejte lokální menu na tomto výrazu, a vyberte Lupa. 4.5 Jak používat průvodce jednoduchým dotazem V této kapitole jsme začali vytvořením prvního dotazu pomocí průvodce jednoduchým dotazem. Nabízí se otázka, jaká pole v průvodci vybírat, když některá pole chceme mít zobrazována ve výsledku, jiná slouží pouze k formulování kritérií, a podle některých chceme řadit. Navíc chceme mít v dotazu nová pole vytvořená jako výrazy. V prvním kroku průvodce vybereme pole: jež chceme zobrazit do výsledku, jež budeme potřebovat do výrazů (může následně nastat problém, když průvodce takové pole pojmenuje nebo přejmenuje pak je použití tvůrce výrazů pracnější), podle kterých chceme řadit nebo pro ně zadat kritéria. Někdy, když v databázi, se kterou pracujeme, je v relacích možno nalézt alternativní cesty propojení, by mohl průvodce vybrat takové propojení, které nechceme. Potom v průvodci vyberme ještě nějaká pole (například 31 V jiném kontextu to jsou pole aktuálního objektu. 23

24 klíče) tabulek, přes které chceme vybrat cestu propojení. Například následující schéma umožňuje propojit název žánru s příjmením a jménem umělce buď prostřednictvím relace Titul.režie=Umělec.ID, nebo s použitím tabulky Hraje prostřednictvím relací Titul.ID=Hraje.titul a Hraje.herec=Umělec.ID. Jde o to, zda nás umělec zajímá v roli režiséra či herce. Pokud nás zajímá umělec v roli herce v nějakém titulu daného žánru, pak v průvodci vybereme kromě polí Žánr.název, Umělec.Jméno, Umělec.příjmení ještě např. pole Hraje.titul (nebo Hraje.herec, to vyjde nastejno). Otázkou je, zda vůbec někdy budeme potřebovat sestavovat dotaz jinak, než pomocí průvodce. 4.6 Dotaz v návrhovém zobrazení Ukažme si dotaz, pro který nemůžeme použít průvodce jednoduchým dotazem. Je to příklad Města se zaměstnanci i zákazníky ve skupině Jiné propojení. Jeho smyslem je nalézt případy, kdy nějaká zákaznická firma má sídlo ve městě, ve kterém bydlí některý zaměstnanec. Strategie dotazu je taková, že hledáme dvojice Zákazník, Zaměstnanec, kdy Zákazník.Město je rovno Zaměstnanec.Město. Nemůžeme použít průvodce a v něm vybrat Zákazník.Město a Zaměstnanec.Město, neboť průvodce by do dotazu kromě tabulek Zaměstnanci a Zákazníci vybral i tabulku Objednávky a vytvořil propojení podle relací, tj. ve výsledku bychom měli pouze ty dvojice zákazníků se zaměstnanci, mezi nimiž proběhlo nějaké objednání. Porovnejte případný výsledek takovéhoto pokusu s výsledkem dotazu Města se zaměstnanci i zákazníky. V databázi řešení jsou dvě možnosti řešení této úlohy, jedna s kritériem (dotaz Města se zaměstnanci i zákazníky 2 ), druhá s propojením tabulek Zákazníci a Zaměstnanci pomocí polí Město (dotaz Města se zaměstnanci i zákazníky ). Vytvoříme dotaz stejný, jako je Města se zaměstnanci i zákazníky. V okně Databáze, v Dotazy, zvolte Vytvořit dotaz v návrhovém zobrazení. Otevře se dialog Zobrazit tabulku, v němž vybíráme tabulky, jež potřebujeme do dotazu dát. V našem případě vybereme tabulky Zákazníci a Zaměstnanci. Do návrhu dotazu se tyto tabulky vloží nepropojené: 24

25 Propojení vytvoříme přetažením myší pole Město z tabulky Zákazníci na pole Město z tabulky Zaměstnanci, vytvoří se čára podobná relacím: tažení myši Dokončíme náš příklad výběrem pole Město do návrhové mřížky. Zamezit opakování v odpovědi lze nastavením jedinečných hodnot (viz str.21). Jako procvičení zkuste v návrhovém zobrazení vytvořit náš první dotaz, který jsme původně dělali pomocí průvodce. (Musíte vybrat tabulky Kategorie, Výrobky, Rozpis objednávek, Objednávky a Zákazníci ) 4.7 Přidávání tabulek do návrhu dotazu Často se setkáme se situací, že jsme například pomocí průvodce vytvořili dotaz, a posléze zjistíme, že bychom do něj rádi přidali pole, jež v tabulkách v dotazu není. Pak musíme do dotazu takovou tabulku přidat, a možná ještě předtím zvážit, zda budeme muset přidat ještě nějaké další tabulky kvůli propojení (podle schématu databáze). Přidání tabulky do dotazu děláme po stisknutí tlačítka -Přidat tabulku v dialogu Zobrazit tabulku, vybereme tabulku či tabulky, které potřebujeme. Tento dialog nabízí na kartě Dotazy i možnost připojit do stávajícího dotazu nějaký dříve uložený dotaz (jako mezivýsledek). Připojení tabulky či jiného dotazu do stávajícího dotazu automaticky způsobí i přidání odpovídajících propojení ze schématu relací. Pomocné dotazy Rozšířené podrobnosti objednávek a Mezisoučty objednávek jsme v relacích propojili, protože jsou používány v mnoha dotazech i jinde. Pokud přidávaný dotaz či tabulka nejsou propojeny v relacích, pak budeme muset propojení udělat ručně. Příkladem může být dotaz Tržby za výrobky porovnání 1997 a 1998 Q1, který je ve skupině Seskupovací. Tento dotaz využívá mezivýsledků Tržby za výrobky 1998 Q1 a Tržby za výrobky 1997 (oba patří k seskupovacím dotazům, o nich následující kapitola). Jiný příklad je Zákazníci nakupující 10 nejdražších výrobků-lépe, jenž využívá dotaz Deset nejdražších výrobků, což je dotaz importovaný ze vzorové databáze Northwind. (Vysvětlení k tomuto poslednímu příkladu je podáno v kapitole 8 Mezivýsledky.) 25

26 4.8 Nejvyšší hodnoty Pokud máme v návrhu dotazu zadáno nějaké řazení, a zajímá nás pouze několik prvních řádků z odpovědi, lze pomocí tlačítka Nejvyšší hodnoty v panelu nástrojů zvolit, kolik prvních řádků chceme mít v odpovědi. Počet řádků lze zadat přímo číslem, či procentuelně vůči celkovému počtu všech řádků. Stejné nastavení lze udělat i v dialogu Vlastnosti dotazu, v poli Nejvyšší hodnoty. Příkladem je dotaz Největší nákup výrobku, který vrací informace o nejvyšším nákupu zvoleného výrobku, a dotaz Zákazník odkdy, který vrací nejstarší datum objednávky zvoleného zákazníka. Pomocí seskupovacího dotazu lze tyto informace získat pro všechny zákazníky najednou, viz dotaz Zákazníci odkdy ze skupiny Seskupovací. Pro případ odpovídající volbě Nejvyšší hodnoty = 1 lze analogického výsledku dosáhnout vždy, byť někdy obtížněji viz příklad Statistika počtu zákazníků pro výrobky, výklad najdete v kapitole 5 Seskupovací dotazy. 4.9 Dotazy s parametry V dotazu mohou být hodnoty v kritériích či ve výrazech zadávány také jako parametry. Po spuštění takového dotazu se pak zobrazí dialogové okno, jež se potupně zeptá na hodnoty všech parametrů dotazu. Stejný dotaz tak dává různé odpovědi podle toho, jak zadáváme různé hodnoty pro parametry. Parametr do dotazu zapisujeme jako text výzvy uzavřený do hranatých závorek, například chceme-li dotaz ze str. 19 modifikovat tak, aby zobrazoval objednávky zvoleného zákazníka, změníme ho: Pokud chceme zadávat i rok objednávek jako parametr, upravíme ještě Další příklady jsou v databázi Řešení, ve skupině Jednoduché, dotazy Výrobky prodávané ve zvolené zemi, Největší nákup výrobku, Zákazník odkdy. V některých případech (například když by hodnota měla být typu Ano/Ne 32 ) je potřeba určit datové typy parametrů, pak to uděláme v návrhovém zobrazení dotazu z menu Dotaz-Parametry. V našem druhém příkladu by to bylo jako na obrázku zde (pořadí určuje pořadí, v jakém jsou hodnoty vyžadovány). 32 Nebo když je dotaz křížový nebo když je následně zpracováván křížovým dotazem, nebo je podkladem pro graf, nebo když je dotazem do externí SQL databáze 26

27 5 Seskupovací dotazy 5.1 Co jsou seskupovací dotazy? V seskupovacích dotazech se většinou počítají souhrny. Například jednoduchý přehled objednávek z období mezi a lze rozdělit do skupin podle jednotlivých zaměstnanců: ČísloZam Zaměstnanec ČísloObj DatumObj Mezisoučet 1 Davolio, Nancy ,02 1 Davolio, Nancy ,50 1 Davolio, Nancy ,00 Davolio, Nancy 1 Davolio, Nancy ,25 1 Davolio, Nancy ,00 4 Peacock, Margaret ,75 4 Peacock, Margaret ,00 2 Fuller, Andrew 7 King, Robert , ,12 2 Fuller, Andrew 7 King, Robert , ,75 Fuller, Andrew Peacock, Margaret King, Robert 8 Callahan, Laura ,50 8 Callahan, Laura ,00 Callahan, Laura 8 Callahan, Laura ,50 V dotaze, který předchozí přehled seskupí podle zaměstnanců, lze pro každého zaměstnance zopakovat pole ČísloZam a Zaměstnanec, a spočítat součet hodnot pole Mezisoučet ze skupiny tohoto zaměstnance: ČísloZam Zaměstnanec SumOfMezisoučet 1 Davolio, Nancy ,77 2 Fuller, Andrew ,37 4 Peacock, Margaret ,75 7 King, Robert ,87 8 Callahan, Laura ,00 Specifické detaily o jednotlivých objednávkách, jako jsou hodnoty v poli ČísloObjednávky a v poli DatumObjednávky, ve výsledném souhrnu nemohou být. Můžeme ovšem spočítat nejnižší a nejvyšší datum objednávky u každého zaměstnance: ČísloZam Zaměstnanec SumOfMezisoučet MinOfDatumObj MaxOfDatumObj 1 Davolio, Nancy , Fuller, Andrew , Peacock, Margaret , King, Robert , Callahan, Laura , a třeba ještě počet objednávek: ČísloZam Zaměstnanec SumOfMezisoučet MinOfDatumObj MaxOfDatumObj Count 1 Davolio, Nancy , Fuller, Andrew , Peacock, Margaret , King, Robert , Callahan, Laura ,

28 Původní přehled můžeme rozdělit do skupin také jiným způsobem, podle jednotlivých kalendářních dní: ČísloZam Zaměstnanec DatumObj Mezisoučet 7 King, Robert ,75 8 Callahan, Laura ,50 1 Davolio, Nancy ,00 1 Davolio, Nancy ,00 8 Callahan, Laura ,00 1 Davolio, Nancy ,25 2 Fuller, Andrew ,00 4 Peacock, Margaret ,00 1 Davolio, Nancy ,50 2 Fuller, Andrew ,37 1 Davolio, Nancy ,02 4 Peacock, Margaret ,75 8 Callahan, Laura ,50 7 King, Robert ,12 Pak lze seskupit a vypočítat souhrny například: DatumObj SumOfMezisoučet Count , , , ,39 4 tedy jsou tržby a počty objednávek za jednotlivé dny. V databázi Řešení ve skupině Seskupovací je dotaz Tržby zaměstnanců. Ten počítá souhrny ze všech objednávek, bez omezení datumu (přehled jednotlivých objednávek by v tomto případě ve skriptech zabral příliš mnoho místa) v tomto dotaze jsou navíc zobrazeny pole FormálníOslovení a Funkce, ty lze pro každého zaměstnance přečíst z tabulky Zaměstnanci, a k souhrnům je přidat jako další informaci. Jak se vytvářejí seskupovací dotazy? Ačkoli je lze sestavit pomocí průvodce, první seskupovací dotaz vytvoříme tak, abychom pochopili jak seskupovací dotazy fungují. 5.2 První seskupovací dotaz Vytvořte si jednoduchý dotaz, který bude základem pro následující počítání souhrnů. Tento jednoduchý dotaz bude přehledem všech objednávek zobrazující pole DatumObjednávky, dále pole Mezisoučet z pomocného dotazu Mezisoučty objednávek, a pole ČísloZaměstnance, Příjmení, Jméno z tabulky Zaměstnanci. 28

29 V následujícím dále přeměníme tento jednoduchý dotaz na seskupovací dotaz, jenž bude pro každého zaměstnance počítat jeho celkové tržby za 1. čtvrtletí roku 1998: Do mřížky návrhu dotazu přidáme řádek Souhrn: 33. V řádku Souhrn: nastavíme Sum v poli Mezisoučet, Kde v poli DatumObjednávky, v tomto poli ještě napíšeme kritérium, v ostatních polích v řádku Souhrn: ponecháme volbu Seskupit : (Všimněte si, že po vybrání Kde se automaticky odstranilo zaškrtnutí Zobrazit v tomto sloupci.) 34 Výsledek je hotov, stačí jen pojmenovat pole s vypočtenou tržbou (o přejmenování pole viz str.22). Číslo zaměstnance Příjmení Jméno Tržba 1 Davolio Nancy ,90 2 Fuller Andrew ,50 3 Leverling Janet ,32 4 Peacock Margaret ,00 5 Buchanan Steven ,37 6 Suyama Michael ,12 7 King Robert ,06 8 Callahan Laura ,06 9 Dodsworth Anne ,45 Změnou kritéria v poli DatumObjednávky změníme období, za které se má souhrn počítat, zkuste a porovnejte výsledky. Pokud bychom chtěli pro každého zaměstnance vypočítat tržby za nějaká různá období najednou, například za jednotlivé měsíce roku 1998, je potřeba nejprve vytvořit výraz pro tato období pro daný příklad vytvoříme do dotazu pole Month(DatumObjednávky), v něm bude Seskupit v řádku Souhrny:, a zadáme kritérium omezující dotaz na rok 1998, například takto 35 : Ve výsledku vidíme, že pro každého zaměstnance je vypočítáno více souhrnů za každý měsíc jeden souhrn (měsíce, ve kterých zaměstnanec neměl žádnou objednávku, ve výsledku nejsou). Můžeme vypočítat tržby i za jednotlivé měsíce ostatních let: přidáme pole s výrazem Year(DatumObjednávky), ponecháme v něm Seskupit, a odstraníme předchozí kritérium: 33 Tlačítko v panelu nástrojů, nebo menu Zobrazit-Souhrny, nebo z lokálního menu nad mřížkou návrhu. 34 Volba Kde v řádku Souhrn: slouží k označení pole, které použijeme pro kritérium omezující výchozí jednoduchý dotaz, přičemž jednotlivé detaily z tohoto pole nemohou být zobrazeny v souhrnném výsledku. 35 Jiná možnost byla vytvořit pole Year(DatumObjednávky) a zadat pro ně kritérium

30 Vidíme, že seskupování může proběhnout podle více hledisek, v našem případě podle zaměstnanců 36, roků a měsíců. 5.3 Agregační funkce V řádku Souhrn: je nabídka různých agregací pro dané pole. Nejčastěji používané jsou součet (Sum), nejnižší hodnota (Min), nejvyšší hodnota (Max), průměr (Avg). (V úvodní podkapitole této kapitoly by se pro získání druhého z výsledků použily Min a Max v poli DatumObjednávky.) Specifická je agregace Count. K jejímu pochopení vyzkoušíme nejprve průvodce pro souhrnný dotaz. 5.4 Průvodce pro souhrnný dotaz Náš první seskupovací dotaz můžeme sestavit i pomocí průvodce. Je to stejný průvodce, jako pro jednoduché dotazy (v okně Databáze, objekty Dotazy, ikona Vytvořit dotaz pomocí průvodce). V prvním kroku průvodce vyberme z tabulky Zaměstnanci pole ČísloZaměstnace, Příjmení, Jméno, z tabulky Objednávky vybereme DatumObjednávky a z dotazu Mezisoučty objednávek vybereme Mezisoučet. V dalším kroku průvodce přepneme na Souhrnný, čímž se zpřístupní tlačítko Možnosti souhrnu. Toto tlačítko stiskneme. V následujícím dialogu Možnosti souhrnu se nabízejí pole, která lze agregovat, a výběr agregací pro ně. Zaškrtneme Součet u pole Mezisoučet. Dále si všimněme možnosti zaškrtnout políčko vpravo dole, u kterého je poněkud méně srozumitelný popis. Toto políčko též zaškrtněme: Potvrdíme a tím se vrátíme do průvodce, zde stiskneme Další. Následující krok se v průvodci objevuje v závislosti na tom, zda jsme předtím vybrali nějaké pole typu datum. V našem případě tomu tak bylo, bylo to pole DatumObjednávky. Proto nám nyní průvodce nabízí možnosti seskupení podle nabízených časových intervalů vyberme Měsíc. V posledním kroku již nový dotaz pouze pojmenujte, dokončete průvodce. Porovnejte výsledný dotaz s dotazem, který jsme vytvořili jako náš první seskupovací dotaz. Zásadní rozdíl je v tom, jak je zařízeno seskupování podle kalendářních měsíců zde to zajišťují 4. a 7. pole v mřížce návrhu dotazu průvodce zde vytvořil poměrně složité výrazy, jež slouží pro určení kalendářního měsíce z datumu. 4.sloupec, jenž má být zároveň ve výsledku zobrazen, má výhodu toho, že výsledky jsou česky, zato je pro uživatele poměrně složitý. 7. sloupec zde slouží k chronologickému řazení, když u něj zvolíte Řadit: vzestupně (zkuste a podívejte se na výsledek). V databázi Řešení ve skupině Seskupovací porovnáním dotazů Tržby zaměstnanců po čtvrtletích 1 a Tržby zaměstnanců po čtvrtletích 2 zjistíte, jak ještě jinak lze vytvořit výraz pro kalendářní období. Tato druhá podoba má tu výhodu, že chronologické řazení zde odpovídá vzestupnému řazení těchto výrazů. To lze například využít pro křížové dotazy (o nich viz dále). 36 Seskupení podle Příjmení a Jméno ve skutečnosti neproběhne, neboť tyto jsou pro dané ČísloZaměstnance jedinečně určeny. Toto MS Access zná z návrhu tabulky Zaměstnanci, kde ČísloZaměstnance je klíčem. 30

31 Z hlediska efektivity provádění dotazu databázovým serverem však není ideální ani jedna z těchto dvou možností. Nejlepší je použít SQL funkce (např. Year, Month) jako je to popsáno v podkapitole První seskupovací dotaz. Pokud nutně potřebujeme jediné pole pro kalendářní období, můžeme z nich eventuelně v následujícím dotazu vytvořit jediný výraz z polí předchozího mezivýsledku. Dále si povšimněme pole Count Of Mezisoučty objednávek, jež se zde vytvořilo proto, že jsme v průvodci zaškrtli podkapitola.. V tomto poli je výraz Count(*). O něm viz následující 5.5 Count v seskupovacím dotazu Pokud použijeme průvodce pro souhrnný dotaz, pak v dialogu Možnosti souhrnu je vždy vpravo dole možno zaškrtnout Počet záznamů v (text záleží na konkrétním dotazu). Vždy se vytvoří výraz Count(*), průvodce ho nějak pojmenuje. Co tento výraz počítá? Count(*) počítá počet řádků v každé skupině výchozího jednoduchého dotazu, jenž je základem pro seskupení. Pro pochopení, co je tedy vlastně počítáno, je nutné vědět, co tvoří řádky jednoduchého dotazu, na kterém je daný seskupovací dotaz založen. V našem příkladu se můžete vrátit k našemu prvnímu seskupovacímu dotazu, odstranit v něm řádek Souhrn: (a tím z něj udělat opět pouze jednoduchý dotaz) a podívat se na výsledek. Pro lepší názornost si můžete zobrazení datového listu uspořádat podle sloupce ČísloZaměstnance. Uvědomte si, že jednotlivé řádky nyní odpovídají jednotlivým objednávkám. Takže počet řádků ve skupině daného zaměstnance je počet jeho objednávek. Neukládejte v této podobě, zavřete. Nyní můžete do návrhu našeho prvního seskupovacího dotazu přidat pole početobjednávek: Count(*), a v řádku Souhrn: vybrat Výraz 37 : Tento výraz dává stejný výsledek, jako volba funkce Count v řádku Souhrn: v poli, jež je vždy zaručeně neprázdné. Takové pole může být ČísloObjednávky, ale třeba i ČísloZaměstnace. Záleží pouze na vašem vkusu, co je pro vás příhodnější. V řádku Souhrn: je však možno volit také agregační funkci Count co tato volba znamená? Agregační funkce Count v poli dotazu počítá počet neprázdných hodnot v tomto poli v příslušné skupině jednoduchého dotazu, na kterém je daný seskupovací dotaz založen. Ukažme si to na příkladu. Využijeme tuto funkci k tomu, abychom v každé zemi spočítali počet zákazníků, kteří mají fax. Vytvořte jednoduchý dotaz s poli Zákazníci-Země a Zákazníci-Fax, pak přidejte řádek Souhrn:, u pole Fax vyberte funkci Count a pojmenujte ho PočetFaxů, vytvořte nové pole s výrazem PočetZákazníků:Count(*), nastavte zde Výraz. Podívejte se odpověď, porovnejte oba souhrny, prohlédněte si řádek se Švýcarskem. 37 Volba Výraz je určena pro případ, že v řádku Pole: je nějaký výraz s agregací viz například dotaz Podíl dopravného a ceny zboží 2. 31

32 5.6 Doporučení pro použití průvodce Pro dotaz se souhrny doporučuji spíše postupovat tak, jak jsme to dělali v případě našeho prvního seskupovacího dotazu, a to nejprve vytvořit jednoduchý dotaz, a následně ho upravit v návrhovém zobrazení na dotaz se souhrny. Pro vytvoření základního jednoduchého dotazu můžeme použít průvodce jednoduchým dotazem. Zopakujme a doplňme návod z předchozí kapitoly: V prvním kroku průvodce vybereme pole, jež chceme zobrazit do výsledku, jež budeme potřebovat do výrazů, podle kterých chceme řadit nebo seskupit nebo pro ně zadat kritéria Do dotazu můžeme přidat pole, která nemusíme mít zobrazena ve výsledku, ale seskupování podle nich dotaz zefektivní. V našem příkladu to bylo pole ČísloZaměstnance, protože to je klíčem tabulky Zaměstnanci, a pro něj je v databázi vytvořen index. Seskupování pole indexovaného pole je podstatně efektivnější. Ve druhém kroku se vyhněme vytváření souhrnů průvodcem, a pokročíme nakonec, kdy dotaz pouze pojmenujeme tak, jak se má jmenovat výsledný seskupovací dotaz. V návrhovém zobrazení dotazu následně vytvoříme všechny výrazy, které eventuelně potřebujeme. Pak přidáme řádek Souhrn: 38, v něm volíme agregační funkci (Sum, Min, Max, Avg ) v polích, v nichž se má vypočítat souhrn Kde v polích, jež slouží pro zadání kritéria před seskupením, tedy kritéria, jež říká, co se má do souhrnů započítat. V takovém poli nemůže být zaškrtnuto Zobrazit:. Výraz v případě, že jde o Count(*) nebo složitější výraz z agregačních funkcí v ostatních polích necháme Seskupit Dotazy generované v MS Access pomocí návrháře nejsou příliš efektivní, co se týče klauzule GROUP BY v SQL-kódu. Vygenerovaný SQL-kód má v GROUP BY vše, co má Seskupit v řádku Souhrn: v návrhovém zobrazení. Skutečné seskupování je však nutné pouze podle některých z nich, jako v našem příkladu pouze podle ČísloZaměstnace, Year(datumObjednávky), Month(DatumObjednávky). Pokud chcete vygenerovat vhodnější SQL-kód, zvolte u ostatních polí Výraz místo Seskupit pak ale takový dotaz nelze spustit jako dotaz MS Access. Jestliže vytváříte předávací SQL dotaz, dejte pozor seskupování podle výrazů nemusí některé databázové servery umět! 5.7 Omezení počtu řádků výsledku seskupovacího dotazu Někdy chceme ve výsledku pouze ty řádky, v nichž vypočtený souhrn vyhovuje nějakému kritériu. Takové kritérium prostě napíšeme do příslušného pole. Například když chceme vybrat zákazníky, kteří v roce 1998 podali více než 3 objednávky, sestavíme dotaz podle obrázku na následující straně nahoře. Dalším příkladem je dotaz Zákazníci podle nákupu v roce 1997-výběr1 ve skupině Seskupovací. Můžeme také podle agregované hodnoty řadit, a omezit počet výstupních řádků volbou Nejvyšší hodnoty (jak, viz str.26). Příkladem jsou dotazy Zákazníci podle nákupu v roce 1997-výběr2 a Zákazníci podle nákupu v roce 1997-výběr3. 38 Tlačítko v panelu nástrojů, nebo menu Zobrazit-Souhrny, nebo z lokálního menu nad mřížkou návrhu. 32

33 5.8 Křížové dotazy Pokud seskupování probíhá podle dvou hledisek, je možné uspořádat výsledek přehledněji, do tzv. křížové tabulky. Předveďme si to na druhé verzi našeho prvního seskupovacího dotazu, který pro každého zaměstnance vypočítává tržby za jednotlivé měsíce roku 1998 (viz str.29). Výsledek může být uspořádán i takto: ČísloZam Příjmení Jméno Davolio Nancy , , , , ,77 2 Fuller Andrew , , , , ,37 3 Leverling Janet , , , ,88 4 Peacock Margaret , , , , ,75 5 Buchanan Steven , , , ,00 6 Suyama Michael , , , ,75 7 King Robert , , , , ,87 8 Callahan Laura , , , , ,00 9 Dodsworth Anne , , , ,50 Zde ČísloZaměstnace, Příjmení, Jméno tvoří hlavičku řádků, měsíce tvoří hlavičky sloupců, a souhrnná tržba je hodnotou, která je vyplňována do tabulky do příslušného řádku a sloupce. Toho docílíme, když nejprve přepneme typ dotazu na Křížový dotaz 39. Tím se do mřížky návrhu dotazu přidá řádek Křížová tabulka:. V něm zvolíme hlavička řádku v polích ČísloZaměstnace, Příjmení a Jméno, hlavička sloupce v poli měsíc, a hodnota v poli Tržba: Pro tvorbu křížových tabulek existuje v MS Access průvodce křížovým dotazem. Pro jeho použití je nejprve potřeba mít uložen dotaz, na základě kterého bude křížová tabulka vytvořena. Pro nás to může být buď, stejně jako předtím, druhá verze našeho prvního seskupovacího dotazu ze str. 29, nebo dokonce pouhý jednoduchý dotaz jako je následující: 39 Nabídka Typ dotazu v panelu nástrojů nebo menu Dotaz. 33

34 Vytvořte tento dotaz a uložte ho (pojmenujte např. Pkt 40 )! Nyní jsme připraveni spustit Průvodce křížovým dotazem. Všechny průvodce pro tvorbu dotazů naleznete v seznamu Nový dotaz nabídnutému po stištění tlačítka nahoře v okně Databáze pro objekty Dotazy: První krok Průvodce křížovým dotazem se vás zeptá, kde je tabulka či dotaz, jež se má zpracovat do křížové podoby. Pro náš příklad přepněte na a v seznamu nahoře vyberte prve pro naše účely uložený dotaz (možná jste ho pojmenovali Pkt). Stiskněte tlačítko Další. V následujícím kroku vyberete hlavičky řádků, v našem případě to budou. Přejdeme na další krok průvodce, v něm vybereme hlavičku sloupců nyní to bude DatumObjednávky. Následující krok průvodce se objevuje v závislosti na tom, zda jsme prve vybrali nějaké pole typu datum, a to jsme opravdu vybrali bylo to DatumObjednávky. Podobně jako v průvodci pro souhrnný dotaz se nám nabízí možnosti seskupení podle nabízených časových intervalů vyberme Měsíc. Další krok průvodce se ptá, co se bude vyplňovat jako hodnota do křížové tabulky vyberme Mezisoučet. Dále zde vybereme agregaci, která se má počítat vybereme Součet. Ještě si všimněte zaškrtnutí vlevo Ano, zahrnout součty řádků to ponecháme. Dialog nyní vypadá jako obrázek nahoře na následující straně. V posledním kroku pouze dotaz pojmenujte. Porovnejte získaný výsledek s dotazem, jehož návrh jsme sami upravili do podoby křížové tabulky. 40 Jako zkratka za Pro křížovou tabulku. 34

35 Nepodstatný rozdíl je výrazu pro měsíc. Další drobný rozdíl je v počtu sloupců ten je zajištěn vyjmenováním hodnot do Hlavičky sloupců ve vlastnostech dotazu 41. Podstatný rozdíl je ve sloupci, který zajišťuje souhrny pro celé řádky výsledné křížové tabulky. Tento sloupec má pojmenování (průvodce vytvořil pojmenování Celkem Mezisoučet ), jako pole je vybráno pole, jež se má agregovat, v řádku Souhrn: má vybranou agregační funkci, a v řádku Křížová tabulka: má volbu Hlavička řádku. Toto můžeme sami vytvořit ve vlastním návrhu dotazu přidáním dalšího sloupce do mřížky: V databázi Řešení jsou oba postupy demonstrovány na příkladech dotazů Tržby zaměstnanců po čtvrtletích 2_křížový dotaz a Tržby zaměstnanců po čtvrtletích Pole křížového dotazu Shrňme: křížový dotaz je typ dotazu MS Access. V křížovém dotazu může být více polí jako hlavička řádku. Některé z nich mohou být agregací nějakého pole, ty pak představují souhrn pro celý řádek výsledku. Jedno pole musí být hlavička sloupce, a nesmí jich být víc. Jedno pole musí být hodnota, a opět jich nemůže být víc. Kód vygenerovaný pro křížový dotaz není SQL-kódem, nelze ho poslat běžnému databázovému serveru! Pokud chcete zpracovat výsledek dotazu předaného databázovému serveru do podoby křížové tabulky, musíte tento jako mezivýsledek zpracovat dalším, tentokrát MS Access křížovým dotazem, podobně jak to dělá průvodce křížovým dotazem Datový list křížového dotazu V datovém listu křížového dotazu je možno dělat úpravy formátu, jako s jinými dotazy. Zejména je zajímavá možnost ukotvení sloupců s hlavičkami řádků, a možnost uspořádat řádky podle nějakých vybraných sloupců. 41 Menu Zobrazit-Vlastnosti, nebo lokální menu, nebo tlačítko v panelu nástrojů. Dialog Vlastnosti se přizpůsobuje aktuálnímu objektu. 35

36 5.9 Kontingenční tabulky, kontingenční grafy MS Access 2002 nabízí možnost zpracování výsledku dotazu do podoby kontingenční tabulky nebo kontingenčního grafu. V databázi Řešení jsou některé příklady, vytvořené kontingenční tabulky jsou ve skupině pojmenované Kontingenční tabulky, kontingenční grafy jsou vytvořeny pro dotazy, jež mají v popisu poznámku kontingenční graf. Nabídka kontingenční tabulky a kontingenčního grafu je v menu Zobrazit (nebo v panelu nástrojů v přepínači zobrazení) pro právě otevřené okno dotazu. Pro první seznámení s kontingenčními tabulkami v MS Access je v databázi Řešení připraven dotaz Podrobný přehled prodejů. Importujte si ho (a pokud nemáte, tak ještě Jména Zaměstnanců ) do svého projektu. Otevřte prve importovaný dotaz Podrobný přehled prodejů, přepněte zobrazení na Zobrazení kontingenční tabulky. Zobrazte seznam polí : Nyní máte různé možnosti, co zvolit do jednotlivých dimenzí kontingenční tabulky. Můžete například: do oblasti řádků přidat Země a Firma, do oblasti sloupců přidat Datum objednávky po měsících, do oblasti filtru přidat Název kategorie, Název výrobku a Zaměstnanec. Do datové oblasti i do podrobných dat přidejte Výsledná cena. Seznam polí potom zavřete můžete ho vždy znovu otevřít budete mít lepší výhled. Pokud se vám roky špatně zobrazují, asi takto:, klikněte pravým tlačítkem myši na a vyberte Vlastnosti. V dialogu Vlastnosti přepněte na kartu Formát. Zde přepište rrrr na yyyy a pak dialog Vlastnosti zavřete. Kontingenční tabulka nyní vypadá takto: 36

37 Nyní můžete zkoušet rozbalovat a sbalovat pomocí a, nabídky u polí (,, atd.) můžete zkoušet různě upravovat, například takto: nebo Pak bude zobrazen pouze výběr. Zkoušejte také lokální menu na různých objektech (po ukázání myší se vám zobrazí návěští objektu) Zde naleznete též odebrání pole z kontingenční tabulky (zůstane ovšem v seznamu polí). Kontingenční tabulky v MS Access2002 nabízejí podobné možnosti, jako v MS Excel, uživatelská přívětivost je v MS Access horší, ale možnost zobrazení podrobností i souhrnů je v MS Access2002 navíc. O možnostech v MS Excel viz kapitolu 6 Souhrny pomocí datových kostek Kontingenční grafy Data kontingenční tabulky lze zobrazit i do grafu, po přepnutí zobrazení do Zobrazení kontingenčního grafu. V zobrazení kontingenčního grafu můžete měnit typ grafu, zobrazovat či skrýt legendu, volit řady podle sloupců či podle řádků vše v panelu nástrojů nebo v menu Kontingenční graf Výběr polí nejlépe upravíte v kontingenční tabulce. Příklad grafu ukazuje obrázek nahoře na následující straně. Další příklady kontingenčních grafů naleznete v databázi Řešení u některých dotazů, u kterých je odpovídající poznámka v popisu. 37

38 - výběr zemí: 5.10 Zvláštní případy seskupovacích úloh Dotazy na počet různých hodnot Dotazy, ve kterých chceme zjistit počet různých hodnot vyhovujících nějakým požadavkům, vyžadují v MS Access specifický postup. Tento postup spočívá v tom, že si nejprve připravíme seznam požadovaných hodnot bez opakování, a poté pro tento seznam použijeme agregaci Count. Ukažme si to na příkladu. Představme si, že chceme pro každý druh výrobku spočítat počet zákazníků, kteří tento druh výrobku nakupují. Nejprve si tedy připravíme pro každý výrobek seznam zákazníků, kteří daný výrobek někdy nakoupili, a zamezíme opakování. Toto zajistíme například dotazem: Výsledkem je tabulka: ČísloVýrobku se zobrazuje jako Výrobky.NázevVýrobku s titulkem Výrobek, KódZákazníka jako Zákazníci.Firma s titulkem Zákazník. (Pro vysvětlení viz podkapitolu 2.4 Struktura tabulek v databázi Northwind na str.10 ) seznamvýrobkyzákazníci Výrobek Zákazník Chai Berglunds snabbköp Chai Blondel pere et fils Chang Antonio Moreno Taquería Chang Around the Horn Aniseed Syrup Ana Trujillo Emparedados y helados Aniseed Syrup Berglunds snabbköp 38

39 Výsledek předchozího dotazu nyní seskupíme podle Výrobků, a spočítáme počet řádků v každé skupině zvolíme Nový dotaz v návrhovém zobrazení, v dialogu Zobrazit tabulku přepneme na Dotazy a vybereme prve vytvořený mezivýsledek, pak v návrhu dotazu vytvoříme souhrn: Výsledek: Výrobky-početZákazníků Výrobek početzákazníků Chai 31 Chang 28 Aniseed Syrup 10 Chef Anton's Cajun Seasoning 17 Chef Anton's Gumbo Mix 9... V SQL existuje agregační funkce COUNT DISTINCT, kterou lze použít pro tento typ úloh, avšak MS Access tuto funkci nepodporuje. Úloha zde předvedená by byla řešena SQL-kódem: SELECT R.ČísloVýrobku, COUNT DISTINCT(O.KódZákazníka) AS PočetZákazníků FROM Rozpis_objednávek R INNER JOIN Objednávky O ON R.ČísloObjednávky=O.ČísloObjednávky GROUP BY V.ČísloVýrobku V databázi řešení je další příklad na výpočet počtu různých hodnot, tvoří jej dotazy Sortiment zákazníků a Velikost sortimentu zákazníků ve skupině Seskupovací. Dotaz Sortiment zákazníků ukazuje jinou možnost pro zamezení opakování dvojic (zákazník-výrobek), a to seskupením podle polí (KódZákazníka a ČísloVýrobku). Tento příklad pokračuje ještě o jeden krok dále, pro zjištění statistiky velikosti sortimentu zákazníků (dotaz Frekvence velikosti sortimentu ): počet zákazníků velikost sortimentu Agregace First, Last MS Access nabízí dvě specifické agregace, a to First a Last. Pro jejich smysluplné použití je třeba zajistit, aby řádky základní tabulky, ve které se takový souhrn počítá, měly žádoucí pořadí. Jedním příkladem je dotaz Poslední cena ve skupině Seskupovací. Jeho smysl je zjistit, zda jednotková cena uvedená v tabulce Výrobky odpovídá ceně naposled účtované v objednávkách. Důvěra v pořadí řádků vzniklých spojením tabulek Výrobky a Rozpis objednávek je ovšem založena na znalostech postupů, jak se takové propojení realizuje, což vysoko přesahuje rámec těchto skript. Obecně tedy nelze předpokládat, v jakém pořadí bude MS Access procházet řádky tabulek. 39

40 Jiným příkladem ukazujícím jak zajistit pořadí pro použití funkcí First nebo Last jsou dotazy Počty zákazníků nakupujících výrobky v zemích (to je vytvářecí dotaz 42, tedy odpověď na něj je ukládána jako skutečná tabulka v databázi zde je to Počty_zák_v_zemích_pro_výrobky ) a následující, který zpracuje výsledek předchozího, dotaz Statistika počtu zákazníků v zemích pro výrobky. Podobně lze například vytvořit výsledek Nejlepší prodejci měsíců rok měsíc nejlepší zaměstnanec jeho/její tržba počet objednávek Peacock, Margaret , Callahan, Laura , Davolio, Nancy , Peacock, Margaret , Peacock, Margaret , Buchanan, Steven , Peacock, Margaret , Peacock, Margaret ,87 6 Stejného výsledku však lze dosáhnout i složením několika mezivýsledků. Nejprve: Potom: A konečně: 42 Jak pracovat s vytvářecími dotazy viz kapitolu Akční dotazy. 40

41 Pro dosažení stejného výsledku lze použít též skalární pod-dotazy, o tom viz kapitolu Mezivýsledky. Takové řešení je ale podstatně obtížnější. 41

42 6 Souhrny pomocí datových kostek V programu MS Excel lze pomocí kontingenčních tabulek a kontingenčních grafů zobrazit a prohlížet data z různých dostupných databází. Tato data lze navíc uspořádat do datových kostek. Datová kostka je vícedimenzionální databázový útvar, v němž jsou data organizována analogicky ke křížovým tabulkám. Zatímco křížové tabulky mají dimenze pouze dvě, datové kostky jich mohou mít více. Při prohlížení si pak můžeme vybrat, které dimenze chceme zobrazit. Navíc, každá dimenze může mít hierarchické členění, umožňující na požádání zobrazit buď detailní data, či jejich souhrny v nějaké úrovni členění dimenze. Například můžeme mít souhrny pro celé kategorie výrobků, nebo detailní data pro jednotlivé výrobky. Vyrobíme si datovou kostku z dat vzorové databáze Northwind, a jejím prohlížením v kontingenční tabulce programu MS Excel získáte představu o tom, co taková datová kostka je a k čemu slouží. 6.1 Datová kostka z dat Northwind V programu MS Excel otevřte nový sešit. V menu zvolte Data-Importovat externí data-nový databázový dotaz. V následujícím dialogu Zvolit zdroj dat vyberte Databáze MS Access*, stiskněte tlačítko OK. V dialogu Vybrat databázi najděte vzorovou databázi Northwind, potvrďte. Spustí se průvodce dotazem, v jehož prvním kroku vyberte sloupce: Kategorie-NázevKategoie Objednávky-DatumObjednávky Rozšířené podrobnosti objednávek-výslednácena Výrobky-NátevVýrobku Zákazníci-Firma a Zěmě Zaměstnaci-Příjmení Další dva kroky průvodce ( filtrování dat a pořadí řazení ) přeskočte. V dokončení průvodce vyberte:. Tlačítkem ukončete průvodce dotazem, a začne Průvodce vytvořením datové krychle OLAP. Zde, pokud chcete, můžete vyvolat Nápovědu a přečíst si více o datových kostkách OLAP, nebo můžete postoupit přímo dále. 42

43 V prvním ze tří kroků průvodce nastavíte: (Toto nastavení pravděpodobně průvodce sám nabídl). V následujícím, druhém, kroku průvodce vytvoříte strukturu podle obrázku (Nižší úroveň hierarchie vytvoříte přetažením příslušného pole na symbol příslušného nadřazeného pole, tedy např. přetažením ) Dimenze DatumObjednávky se rozbalí sama na Rok- Čtvrtletí-Měsíc ) V posledním, třetím, kroku průvodce vyberte, a vyberte umístění pro soubor krychle (nejlépe složku, ve které máte své pokusy k těmto skriptům), soubor krychle pojmenujte například Northwind1. Po stištění tlačítka Dokončit v průvodci jste požádáni o umístění souboru dotazu, jenž byl sestaven předchozím průvodcem. I tento soubor vhodně umístěte (nejlépe na stejné místo, jako soubor krychle), dotaz pojmenujte například Northwind1. Objeví se dialog Průvodce kontingenční tabulkou a grafem (3/3), zde potvrďte umístění na existující list. V listu sešitu MS Excel máte nyní DatumObjednávky, NázevKategorie, Příjmení a Země jsou dimenze, které můžete umístit do oblasti řádků, sloupců, nebo stránek. Například Země do oblasti řádků, DatumObjednávky do oblasti sloupců, NázevKategorie a Příjmení do oblasti stránek: 43

44 Součet Z VýslednáCena je jediné pole vhodné pro umístění do datové oblasti, umístěte ho. Seznam polí kontingenční tabulky nyní můžete zavřít. Podobně jako v kontingenčních tabulkách programu MS Access nyní můžete zobrazovat detaily nižších úrovní hierarchie dimenzí, nebo nastavovat kritéria výběru, například: Přepnutím v panelu nástrojů Kontingenční tabulka na listě, tento můžete různě upravovat apod. vytvoříte kontingenční graf na novém Při zavírání programu MS Excel nemusíte sešit ukládat, k opětovnému zobrazení kontingenční tabulky slouží soubor dotazu OLAP (v našem případě Northwind1.oqy 43 ). 6.2 Jiná kostka z Northwind Pro data ze vzorové databáze Northwind můžeme vytvořit ještě jinou datovou kostku, a to pro Dopravné a s ním související dimenze. Ty mohou být například Přepravci-Firma (kdo zboží převážel), Objednávky-ZeměPříjemce (kam se zboží vezlo), DatumObjednávky (kdy se zboží vezlo). Příslušnou datovou kostku a dotaz OLAP můžete nazvat Northwin2. Můžete například zobrazit kontingenční grafy pro souhrny přepravného do Evropy (výběr více zemí v oblasti stránek), nebo do Severní Ameriky apod.: Federal Shipping Speedy Express United Package 43 V tomto souboru je přímo zakódována cesta (tzv. absolutní umístění) ke zdroji dat i k souboru datové krychle. 44

45 7 Přehledy a souhrny ještě jinak Výrazy a souhrny v tabulkách lze pohodlně počítat také pomocí tabulkového kalkulátoru. Nejsnazší okamžitá cesta je zkopírovat tabulku či výsledek dotazu ze zobrazení datového listu 44 a vložit je do sešitu tabulkového kalkulátoru. Jiný postup, umožňující aktualizaci dat v tabulkovém kalkulátoru, pokud se zdrojová data v databázi změní, je v programu MS Excel přes volbu Data-Importovat externí data, kde volíme Importovat data, pokud chceme načíst data z tabulky či dotazu nějaké databáze, nebo volíme Nový databázový dotaz, pokud žádaný dotaz ve zdrojové databázi není, a pak ho pomocí průvodce můžeme sestavit 45. Běžné výpočty v tabulkovém kalkulátoru čtenář jistě zvládne. Připomeňme, že program MS Excel nabízí v menu Data také některé databázové služby, pro seznámení s nimi existují jiné studijní materiály, než jsou tato skripta. Pro ukázku méně obvyklých výpočtů si můžete prohlédnout sešity Průběh cen a Opakování nákupů. V programu MS Access lze zobrazit souhrnná i detailní data také za pomoci tzv. vnořených datových listů. Ve vzorové databázi Northwind jste si prohlédli v datovém listu tabulky Objednávky její vnořený datový list z tabulky Rozpis objednávek (tlačítko se znakem + ve voliči záznamů). Také tabulky Dodavatelé, Kategorie, Přepravci, Výrobky, Zákazníci a Zaměstnanci mají vnořené datové listy (vnořený datový list může sám mít vlastní vnořený datový list, pak jde o kaskádovité vnoření). V databázi Řešení je ukázka ve skupině Seskupovací, dotaz Souhrny podle zemí. Ten má vnořený datový list předchozího dotazu Souhrny zákazníků, jenž sám má zase vnořený datový list dotazu Přehled nákupů zákazníků ze skupiny Jednoduché. Porovnejte sérii obrázků na následující straně. Dotaz Souhrny zákazníků má i pole Země, to proto, aby bylo možno určit, ke kterému řádku ze Souhrny podle zemí patří které řádky ze Souhrny zákazníků pole Země je v obou společné, tzv. propojovací. Také si všimněte, že ve vnořeném datovém listu v Souhrny podle zemí se propojovací pole Země nezobrazuje, není to nutné. Podobně je tomu s dotazy Souhrny zákazníků a Přehled nákupů zákazníků, ty mají společná pole Země a Firma. Jak se datové listy vkládají? Prohlédněte si dotaz Souhrny zákazníků : Pokud zobrazení přepnete na zobrazení datového listu, pak v menu zvolte Vložit-vnořený datový list Nebo přepněte na návrhové zobrazení, a vyvolejte dialog Vlastnosti dotazu Pokud je více propojovacích polí, musíme jejich 44 Pomocí menu Úpravy-Vybrat všechny záznamy, nebo pokud chceme pouze některé řádky, vyberte je pomocí voliče záznamů v levé části zobrazení datového listu. Potom kopírujte běžnými postupy v MS Windows. 45 Používá se přitom modul programu MS Query. 45

Access. Tabulky. Vytvoření tabulky

Access. Tabulky. Vytvoření tabulky Access správa databáze (tabulky, relace, omezující podmínky, data...) uživatelské prostředí pro práci s databází (formuláře, sestavy, datové stránky, makra...) ukázková aplikace Northwind hlavní okno databáze

Více

téma: Výběrové dotazy v MS Access

téma: Výběrové dotazy v MS Access DUM 03 téma: Výběrové dotazy v MS Access ze sady: 3 tematický okruh sady: Databáze ze šablony: 07 - Kancelářský software určeno pro: 2. ročník vzdělávací obor: vzdělávací oblast: číslo projektu: anotace:

Více

Sestavy. Téma 3.3. Řešený příklad č Zadání: V databázi zkevidence.accdb vytvořte sestavu, odpovídající níže uvedenému obrázku.

Sestavy. Téma 3.3. Řešený příklad č Zadání: V databázi zkevidence.accdb vytvořte sestavu, odpovídající níže uvedenému obrázku. Téma 3.3 Sestavy Sestavy slouží k výstupu informací na tiskárnu. Tisknout lze také formuláře, ale v sestavách má uživatel více možností pro vytváření sumárních údajů. Pokud všechna pole, která mají být

Více

Microsoft Access. Úterý 26. února. Úterý 5. března. Typy objektů databáze: Vytvoření a návrh nové tabulky

Microsoft Access. Úterý 26. února. Úterý 5. března. Typy objektů databáze: Vytvoření a návrh nové tabulky Úterý 26. února Microsoft Access Databáze je seskupení většího množství údajů, které mají určitou logiku a lze je určitým způsobem vyhodnocovat, zpracovávat a analyzovat Access je jedním z programů určených

Více

MS Excel 2007 Kontingenční tabulky

MS Excel 2007 Kontingenční tabulky MS Excel 2007 Kontingenční tabulky Obsah kapitoly V této kapitole se seznámíme s nástrojem, který se používá k analýze dat rozsáhlých seznamů. Studijní cíle Studenti budou umět pro analýzu dat rozsáhlých

Více

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 6. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28.

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 6. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28. Zdokonalování gramotnosti v oblasti ICT Kurz MS Excel kurz 6 1 Obsah Kontingenční tabulky... 3 Zdroj dat... 3 Příprava dat... 3 Vytvoření kontingenční tabulky... 3 Možnosti v poli Hodnoty... 7 Aktualizace

Více

Úvodní příručka. Získání nápovědy Kliknutím na otazník přejděte na obsah nápovědy.

Úvodní příručka. Získání nápovědy Kliknutím na otazník přejděte na obsah nápovědy. Úvodní příručka Microsoft Access 2013 vypadá jinak než ve starších verzích, proto jsme vytvořili tuto příručku, která vám pomůže se s ním rychle seznámit. Změna velikosti obrazovky nebo zavření databáze

Více

Formuláře. Téma 3.2. Řešený příklad č Zadání: V databázi formulare_a_sestavy.accdb vytvořte formulář pro tabulku student.

Formuláře. Téma 3.2. Řešený příklad č Zadání: V databázi formulare_a_sestavy.accdb vytvořte formulář pro tabulku student. Téma 3.2 Formuláře Formuláře usnadňují zadávání, zobrazování, upravování nebo odstraňování dat z tabulky nebo z výsledku dotazu. Do formuláře lze vybrat jen určitá pole z tabulky, která obsahuje mnoho

Více

3 Formuláře a sestavy Příklad 1 Access 2007

3 Formuláře a sestavy Příklad 1 Access 2007 TÉMA: Vytváření formulářů Správce databáze Naše zahrada předpokládá, že bude s vytvořenou databází pracovat více uživatelů. Je třeba proto navrhnout a vytvořit formuláře pro přístup k datům. Zadání: Otevřete

Více

ZADÁNÍ: Informatika B Příklad 10 MS Access. TÉMA: Formuláře. OPF v Karviné, Slezská univerzita v Opavě. Ing. Kateřina Slaninová

ZADÁNÍ: Informatika B Příklad 10 MS Access. TÉMA: Formuláře. OPF v Karviné, Slezská univerzita v Opavě. Ing. Kateřina Slaninová TÉMA: Formuláře Sekretářka společnosti Naše zahrada, a.s. předpokládá, že bude s vytvořenou databází pracovat více uživatelů. Je třeba proto navrhnout a vytvořit formuláře pro přístup k datům. ZADÁNÍ:

Více

DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 61 DATABÁZE - ACCESS. (příprava k vykonání testu ECDL Modul 5 Databáze a systémy pro zpracování dat)

DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 61 DATABÁZE - ACCESS. (příprava k vykonání testu ECDL Modul 5 Databáze a systémy pro zpracování dat) DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 61 DATABÁZE - ACCESS (příprava k vykonání testu ECDL Modul 5 Databáze a systémy pro zpracování dat) DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 62 Databáze a systémy pro uchování

Více

Dotazy tvorba nových polí (vypočítané pole)

Dotazy tvorba nových polí (vypočítané pole) Téma 2.4 Dotazy tvorba nových polí (vypočítané pole) Pomocí dotazu lze také vytvářet nová pole, která mají vazbu na již existující pole v databázi. Vznikne tedy nový sloupec, který se počítá podle vzorce.

Více

1 Tabulky Příklad 3 Access 2010

1 Tabulky Příklad 3 Access 2010 TÉMA: Vytvoření tabulky v návrhovém zobrazení Pro společnost Naše zahrada je třeba vytvořit databázi pro evidenci objednávek o konkrétní struktuře tabulek. Do databáze je potřeba ještě přidat tabulku Platby,

Více

2 Dotazy Příklad 3 Access 2010

2 Dotazy Příklad 3 Access 2010 TÉMA: Akční dotazy Sekretářka společnosti Naše zahrada potřebuje hromadně zpracovat záznamy v tabulkách (vytvoření tabulky, aktualizace cen, odstranění záznamů). Tyto úlohy provede pomocí tzv. akčních

Více

Tiskové sestavy. Zdroj záznamu pro tiskovou sestavu. Průvodce sestavou. Použití databází

Tiskové sestavy. Zdroj záznamu pro tiskovou sestavu. Průvodce sestavou. Použití databází Tiskové sestavy Tiskové sestavy se v aplikaci Access používají na finální tisk informací z databáze. Tisknout se dají všechny objekty, které jsme si vytvořili, ale tiskové sestavy slouží k tisku záznamů

Více

Vzorce. Suma. Tvorba vzorce napsáním. Tvorba vzorců průvodcem

Vzorce. Suma. Tvorba vzorce napsáním. Tvorba vzorců průvodcem Vzorce Vzorce v Excelu lze zadávat dvěma způsoby. Buď známe přesný zápis vzorce a přímo ho do buňky napíšeme, nebo použijeme takzvaného průvodce při tvorbě vzorce (zejména u složitějších funkcí). Tvorba

Více

Microsoft Access. Typy objektů databáze: Vytvoření a návrh nové tabulky. Vytvoření tabulky v návrhovém zobrazení

Microsoft Access. Typy objektů databáze: Vytvoření a návrh nové tabulky. Vytvoření tabulky v návrhovém zobrazení Microsoft Access Databáze je seskupení většího množství údajů, které mají určitou logiku a lze je určitým způsobem vyhodnocovat, zpracovávat a analyzovat Access je jedním z programů určených pro zpracování

Více

zobrazuje názvy polí, vložené hodnoty jednotlivých záznamů, lze v něm zadávat data (přidávat záznamy) v návrhovém zobrazení:

zobrazuje názvy polí, vložené hodnoty jednotlivých záznamů, lze v něm zadávat data (přidávat záznamy) v návrhovém zobrazení: DUM 02 téma: Tabulky v MS Access ze sady: 3 tematický okruh sady: Databáze ze šablony: 07 - Kancelářský software určeno pro: 2. ročník vzdělávací obor: vzdělávací oblast: číslo projektu: anotace: metodika:

Více

ZŠ ÚnO, Bratří Čapků 1332

ZŠ ÚnO, Bratří Čapků 1332 MS Access 2002 Grada - po spuštění je třeba kliknout do středu obrazovky - v dalším dialogovém okně (Přihlášení) vybrat uživatele, zřídit Nového uživatele nebo zvolit variantu Bez přihlášení (pro anonymní

Více

Kontingenční tabulky v MS Excel 2010

Kontingenční tabulky v MS Excel 2010 Kontingenční tabulky v MS Excel 2010 Autor: RNDr. Milan Myšák e-mail: milan.mysak@konero.cz Obsah 1 Vytvoření KT... 3 1.1 Data pro KT... 3 1.2 Tvorba KT... 3 2 Tvorba KT z dalších zdrojů dat... 5 2.1 Data

Více

ZŠ ÚnO, Bratří Čapků 1332

ZŠ ÚnO, Bratří Čapků 1332 MS Excel 2002 Grada - po spuštění je třeba kliknout do středu obrazovky - v dalším dialogovém okně (Přihlášení) vybrat uživatele, zřídit Nového uživatele nebo zvolit variantu Bez přihlášení (pro anonymní

Více

Popis ovládání. Po přihlášení do aplikace se objeví navigátor. Navigátor je stromově seřazen a slouží pro přístup ke všem oknům celé aplikace.

Popis ovládání. Po přihlášení do aplikace se objeví navigátor. Navigátor je stromově seřazen a slouží pro přístup ke všem oknům celé aplikace. Popis ovládání 1. Úvod Tento popis má za úkol seznámit uživatele se základními principy ovládání aplikace. Ovládání je možné pomocí myši, ale všechny činnosti jsou dosažitelné také pomocí klávesnice. 2.

Více

Databázový systém označuje soubor programových prostředků, které umožňují přístup k datům uloženým v databázi.

Databázový systém označuje soubor programových prostředků, které umožňují přístup k datům uloženým v databázi. Databáze Základní pojmy Pojem databáze označuje obecně souhrn informací, údajů, dat o nějakých objektech. Úkolem databáze je hlídat dodržení všech omezení a dále poskytovat data při operacích. Objekty

Více

DATABÁZE MS ACCESS 2010

DATABÁZE MS ACCESS 2010 DATABÁZE MS ACCESS 2010 KAPITOLA 5 PRAKTICKÁ ČÁST TABULKY POPIS PROSTŘEDÍ Spuštění MS Access nadefinovat název databáze a cestu k uložení databáze POPIS PROSTŘEDÍ Nahoře záložky: Soubor (k uložení souboru,

Více

Microsoft. Office. Microsoft. Access 2003 pro školy. Ing. Bc. Hana Rachačová. w w w. c o m p u t e r m e d i a. c z

Microsoft. Office. Microsoft. Access 2003 pro školy. Ing. Bc. Hana Rachačová. w w w. c o m p u t e r m e d i a. c z Microsoft Office Microsoft Access 2003 pro školy Ing. Bc. Hana Rachačová w w w. c o m p u t e r m e d i a. c z Obsah Obsah Vysvětlivky k prvkům použitým v knize:... 9 Úvodem... 10 Nejzákladnější pojmy...

Více

Manuál k ovládání aplikace INFOwin.

Manuál k ovládání aplikace INFOwin. Manuál k ovládání aplikace INFOwin. Základní práce s formuláři je ve všech modulech totožná. Vybereme tedy například formulář Pokladní kniha korunová na kterém si funkce ukážeme. Po zápisech se lze pohybovat

Více

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph)

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph) Marketingová komunikace Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph) 2. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Minulé soustředění úvod

Více

RELAČNÍ DATABÁZE ACCESS

RELAČNÍ DATABÁZE ACCESS RELAČNÍ DATABÁZE ACCESS 1. Úvod... 2 2. Základní pojmy... 3 3. Vytvoření databáze... 5 4. Základní objekty databáze... 6 5. Návrhové zobrazení tabulky... 7 6. Vytváření tabulek... 7 6.1. Vytvoření tabulky

Více

Spuštění a ukončení databázové aplikace Access

Spuštění a ukončení databázové aplikace Access Spuštění a ukončení databázové aplikace Access Aplikaci Access spustíte tak, že vyhledáte její ikonu v nabídce "Start" a klepnete na ní. Najdete ho v Sekci Všechny programy/mircosoft Office. Po výběru

Více

3 Makra Příklad 4 Access 2007. Ve vytvořené databázi potřebuje sekretářka společnosti Naše zahrada zautomatizovat některé úkony pomocí maker.

3 Makra Příklad 4 Access 2007. Ve vytvořené databázi potřebuje sekretářka společnosti Naše zahrada zautomatizovat některé úkony pomocí maker. TÉMA: Vytváření a úprava maker Ve vytvořené databázi potřebuje sekretářka společnosti Naše zahrada zautomatizovat některé úkony pomocí maker. Zadání: Otevřete databázi Makra.accdb. 1. Vytvořte makro Objednávky,

Více

10. Editor databází dotazy a relace

10. Editor databází dotazy a relace 10. Editor databází dotazy a relace Dotazy Dotazy tvoří velkou samostatnou kapitolu Accessu, která je svým významem téměř stejně důležitá jako oblast návrhu a úpravy tabulek. Svým rozsahem je to ale oblast

Více

Primární klíč, cizí klíč, referenční integrita, pravidla normalizace, relace

Primární klíč, cizí klíč, referenční integrita, pravidla normalizace, relace Téma 2.2 Primární klíč, cizí klíč, referenční integrita, pravidla normalizace, relace Obecný postup: Každá tabulka databáze by měla obsahovat pole (případně sadu polí), které jednoznačně identifikuje každý

Více

Kapitola 11: Formuláře 151

Kapitola 11: Formuláře 151 Kapitola 11: Formuláře 151 Formulář DEM-11-01 11. Formuláře Formuláře jsou speciálním typem dokumentu Wordu, který umožňuje zadávat ve Wordu data, která lze snadno načíst například do databázového systému

Více

Dotaz se souhrny a dotaz křížový

Dotaz se souhrny a dotaz křížový Téma 3.1. Dotaz se souhrny a dotaz křížový Pomocí dotazů lze také vytvářet skupinové výpočty (skupinové sumarizace). Tyto přehledy lze tvořit dvěma způsoby: 1. ponecháme původní strukturu Výběrového dotazu

Více

3 Formuláře a sestavy Příklad 1 Access 2010

3 Formuláře a sestavy Příklad 1 Access 2010 TÉMA: Vytváření formulářů Správce databáze Naše zahrada předpokládá, že bude s vytvořenou databází pracovat více uživatelů. Je třeba proto navrhnout a vytvořit formuláře pro přístup k datům. Zadání: Otevřete

Více

3 Makra Příklad 4 Access Ve vytvořené databázi potřebuje sekretářka společnosti Naše zahrada zautomatizovat některé úkony pomocí maker.

3 Makra Příklad 4 Access Ve vytvořené databázi potřebuje sekretářka společnosti Naše zahrada zautomatizovat některé úkony pomocí maker. TÉMA: Vytváření a úprava maker Ve vytvořené databázi potřebuje sekretářka společnosti Naše zahrada zautomatizovat některé úkony pomocí maker. Zadání: Otevřete databázi Makra.accdb. 1. Vytvořte makro Objednávky,

Více

UniLog-D. v1.01 návod k obsluze software. Strana 1

UniLog-D. v1.01 návod k obsluze software. Strana 1 UniLog-D v1.01 návod k obsluze software Strana 1 UniLog-D je PC program, který slouží k přípravě karty pro záznam událostí aplikací přístroje M-BOX, dále pak k prohlížení, vyhodnocení a exportům zaznamenaných

Více

1 Tabulky Příklad 7 Access 2010

1 Tabulky Příklad 7 Access 2010 TÉMA: Řazení a filtrace dat Sekretářka společnosti Naše zahrada pracuje s rozsáhlými tabulkami. Pro přehlednější práci s daty používá řazení a filtraci dat na základě různých kritérií. Zadání: Otevřete

Více

MS Excel Filtr automatický, rozšířený

MS Excel Filtr automatický, rozšířený MS Excel Filtr automatický, rozšířený Obsah kapitoly V této lekci se seznámíme s nástrojem, který se používá pro výběry dat z rozsáhlých tabulek s filtrem automatickým a rozšířeným. Studijní cíle Studenti

Více

742 Jak prohlížet seznam dat pomocí formuláře. další záznamy pomocí formuláře

742 Jak prohlížet seznam dat pomocí formuláře. další záznamy pomocí formuláře Formuláře 742 Jak prohlížet seznam dat pomocí formuláře pokročilý Pokud si přejete prohlížet seznam dat po jednotlivých záznamech ve formulářovém zobrazení, pak postupujte takto: Klepněte myší kamkoliv

Více

1. Umístěte kurzor do sloupce Datový typ na řádek s polem, ve kterém vytvořit chcete seznam.

1. Umístěte kurzor do sloupce Datový typ na řádek s polem, ve kterém vytvořit chcete seznam. 10.6.7 POSTUP TVORBY KOMBINOVANÉHO SEZNAMU 1. Umístěte kurzor do sloupce Datový typ na řádek s polem, ve kterém vytvořit chcete seznam. 2. V rozbalovací nabídce se seznamem datových typů vyberte volbu

Více

STATISTICA Téma 1. Práce s datovým souborem

STATISTICA Téma 1. Práce s datovým souborem STATISTICA Téma 1. Práce s datovým souborem 1) Otevření datového souboru Program Statistika.cz otevíráme z ikony Start, nabídka Programy, podnabídka Statistika Cz 6. Ze dvou nabídnutých možností vybereme

Více

Pracovat budeme se sestavou Finanční tok. S ostatními se pracuje obdobně. Objeví se předdefinovaná sestava. Obrázek 1

Pracovat budeme se sestavou Finanční tok. S ostatními se pracuje obdobně. Objeví se předdefinovaná sestava. Obrázek 1 Jak na sestavy v MS Projectu Pro ilustraci postupu je připraven projekt Pracovní k sestavám, ve kterém jsou pouze dva pracovní zdroje a dodavatelé jsou vloženi jako materiálové zdroje. Pracovat budeme

Více

Základní vzorce a funkce v tabulkovém procesoru

Základní vzorce a funkce v tabulkovém procesoru Základní vzorce a funkce v tabulkovém procesoru Na tabulkovém programu je asi nejzajímavější práce se vzorci a funkcemi. Když jednou nastavíte, jak se mají dané údaje zpracovávat (některé buňky sečíst,

Více

Řazení tabulky, dotazu nebo formuláře

Řazení tabulky, dotazu nebo formuláře Řazení tabulky, dotazu nebo formuláře Mají-li být formuláře a sestavy efektivní a snadno použitelné, může hrát seřazení dat důležitou roli. 1) Určíme pole, podle kterých chcete řadit. 2) Klepneme pravým

Více

téma: Akční dotazy v MS Access

téma: Akční dotazy v MS Access DUM 04 téma: Akční dotazy v MS Access ze sady: 3 tematický okruh sady: Databáze ze šablony: 07 - Kancelářský software určeno pro: 2. ročník vzdělávací obor: vzdělávací oblast: číslo projektu: anotace:

Více

z aplikace Access 2003

z aplikace Access 2003 V tomto průvodci Microsoft Aplikace Microsoft Access 2010 vypadá velmi odlišně od aplikace Access 2003, a proto jsme vytvořili tohoto průvodce, který vám pomůže se s ní rychle seznámit. Dozvíte se o klíčových

Více

Microsoft Office. Word hromadná korespondence

Microsoft Office. Word hromadná korespondence Microsoft Office Word hromadná korespondence Karel Dvořák 2011 Hromadná korespondence Hromadná korespondence je způsob, jak určitý jeden dokument propojit s tabulkou obsahující více záznamů. Tímto propojením

Více

Průvodce instalací modulu Offline VetShop verze 3.4

Průvodce instalací modulu Offline VetShop verze 3.4 Průvodce instalací modulu Offline VetShop verze 3.4 Úvod k instalaci Tato instalační příručka je určena uživatelům objednávkového modulu Offline VetShop verze 3.4. Obsah 1. Instalace modulu Offline VetShop...

Více

téma: Parametrické a křížové dotazy v MS Access

téma: Parametrické a křížové dotazy v MS Access DUM 05 téma: Parametrické a křížové dotazy v MS Access ze sady: 3 tematický okruh sady: Databáze ze šablony: 07 - Kancelářský software určeno pro: 2. ročník vzdělávací obor: vzdělávací oblast: číslo projektu:

Více

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávání v informačních a komunikačních technologií

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávání v informačních a komunikačních technologií VY_32_INOVACE_33_06 Škola Střední průmyslová škola Zlín Název projektu, reg. č. Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávací oblast Vzdělávání v informačních a komunikačních

Více

WinFAS. Agenda ÚČTO Založení nové knihy, číselné řady a šablony

WinFAS. Agenda ÚČTO Založení nové knihy, číselné řady a šablony Agenda ÚČTO Založení nové knihy, číselné řady a šablony poslední úpravy 16. 3. 2006 O PROBLEMATICE - Níže uvedené postupy slouží pro vytvoření nových knih, číselných řad a šablon - Postup platí pro závazky,

Více

Tabulkový kalkulátor

Tabulkový kalkulátor 1.1.1 GRAF Vhodným doplněním textů a tabulek jsou grafy. Graf je v podstatě obrázek graficky zobrazující hodnoty údajů z tabulky. Je vhodným objektem pro porovnávání údajů a jejich analýzu. Graf můžeme

Více

Hromadná korespondence

Hromadná korespondence Hromadná korespondence Hromadnou korespondenci lze použít k vytvoření sady dokumentů, které jsou v zásadě stejné, každý dokument ovšem obsahuje jedinečné prvky. Například u dopisu oznamujícího nový produkt

Více

Formátování pomocí stylů

Formátování pomocí stylů Styly a šablony Styly, šablony a témata Formátování dokumentu pomocí standardních nástrojů (přímé formátování) (Podokno úloh Zobrazit formátování): textu jsou přiřazeny parametry (font, velikost, barva,

Více

Gabriela Janská. Středočeský vzdělávací institut akademie J. A. Komenského www.sviajak.cz

Gabriela Janská. Středočeský vzdělávací institut akademie J. A. Komenského www.sviajak.cz PŘÍRUČKA KE KURZU: ZÁKLADY PRÁCE NA PC MS WORD 2003 Gabriela Janská Středočeský vzdělávací institut akademie J. A. Komenského www.sviajak.cz Obsah: 1. Písmo, velikost písma, tučně, kurzíva, podtrhnout

Více

Grid 2. Krok za krokem. Jednoduchý manuál pro základní úpravy mřížek v programu

Grid 2. Krok za krokem. Jednoduchý manuál pro základní úpravy mřížek v programu Grid 2 Krok za krokem Jednoduchý manuál pro základní úpravy mřížek v programu Kopírování sady mřížek (uživatele) Chceme-li si vyzkoušet práci s programem Grid 2, je nejlepší upravit si již vytvořené mřížky

Více

PRACUJEME S TSRM. Modul Samoobsluha

PRACUJEME S TSRM. Modul Samoobsluha PRACUJEME S TSRM Modul Samoobsluha V této kapitole Tato kapitola obsahuje následující témata: Téma Na straně Přehled kapitoly 6-1 Užití modulu Samoobsluha 6-2 Přihlášení k systému 6-3 Hlavní nabídka TSRM

Více

Ukázka knihy z internetového knihkupectví

Ukázka knihy z internetového knihkupectví Ukázka knihy z internetového knihkupectví www.kosmas.cz Věnováno mé rodině ACCESS 2007 PODROBNÝ PRŮVODCE 5 Úvod... 13 Komu je tato kniha určena...13 Co v této knize naleznete...14 Použité konvence a struktura

Více

práce s Microsoft Accessem

práce s Microsoft Accessem Manuál práce s Microsoft Accessem pro cvičení z Humánní geografie 1 Zadání cvičení...2 2 Podkladová data...3 3 Microsoft Access...5 3.1 Založení nové databáze...6 3.2 Import tabelárních dat ve formátu

Více

II. Elektronická pošta

II. Elektronická pošta II. Chceme-li si přečíst poštu, klikneme v levém sloupci na nápis Doručená pošta. Máme před sebou seznam e-mailů seřazených podle data a času přijetí. Pokud máme zapnuto zobrazení náhledu, ve spodní nebo

Více

Návod pro práci s aplikací

Návod pro práci s aplikací Návod pro práci s aplikací NASTAVENÍ FAKTURACÍ...1 NASTAVENÍ FAKTURAČNÍCH ÚDA JŮ...1 Texty - doklady...1 Fakturační řady Ostatní volby...1 Logo Razítko dokladu...2 NASTAVENÍ DALŠÍCH ÚDA JŮ (SEZNAMŮ HODNOT)...2

Více

Soukromá střední odborná škola Frýdek-Místek, s.r.o. VY_32_INOVACE_03_IVT_MSOFFICE_02_Excel

Soukromá střední odborná škola Frýdek-Místek, s.r.o. VY_32_INOVACE_03_IVT_MSOFFICE_02_Excel Číslo projektu Název školy Název Materiálu Autor Tematický okruh Ročník CZ.1.07/1.5.00/34.0499 Soukromá střední odborná škola Frýdek-Místek, s.r.o. VY_32_INOVACE_03_IVT_MSOFFICE_02_Excel Ing. Pavel BOHANES

Více

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 4. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28.

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 4. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28. Zdokonalování gramotnosti v oblasti ICT Kurz MS Excel kurz 4 1 Obsah Rozdělení textu do sloupců... 3 Rozdělení obsahu na základě oddělovače... 3 Rozdělení obsahu na základě hranice sloupců... 5 Odebrat

Více

soubor dat uspořádaných do řádků a sloupců

soubor dat uspořádaných do řádků a sloupců MS Access je program, který umožňuje vytvářet a spravovat databáze. Důležitým prvkem při tvorbě databáze je vytvoření vhodné struktury tabulek. Tabulku začneme vytvářet definováním jejich polí (=sloupců).

Více

Marketingová komunikace. 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3bph)

Marketingová komunikace. 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3bph) Marketingová komunikace Kombinované studium Skupina N9KMK3PH (vm3bph) 3. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Zdroje Studijní materiály Heleny Palovské

Více

24 Uživatelské výběry

24 Uživatelské výběry 24 Uživatelské výběry Uživatelský modul Uživatelské výběry slouží k vytváření, správě a následnému používání tématicky seskupených osob a organizací včetně jejich kontaktních údajů. Modul umožňuje hromadnou

Více

Formuláře. V té to ka pi to le:

Formuláře. V té to ka pi to le: 4 Formuláře V té to ka pi to le: Vytvoření formuláře Vytvoření formuláře pomocí průvodce Zobrazení rozložení a úpravy formuláře Návrhové zobrazení formuláře Nastavení, použití a vlastnosti ovládacích prvků

Více

Profesis on-line 20.1.2015. Obrázky v prezentaci byly upraveny pro potřeby prezentace.

Profesis on-line 20.1.2015. Obrázky v prezentaci byly upraveny pro potřeby prezentace. Profesis on-line 20.1.2015 Obrázky v prezentaci byly upraveny pro potřeby prezentace. Adresa systému: www.profesis.cz Údaje nutné pro přihlášení: - přihlašovací jméno: sedmimístné číslo autorizace (včetně

Více

Internetový přístup do databáze FADN CZ - uživatelská příručka Modul FADN BASIC

Internetový přístup do databáze FADN CZ - uživatelská příručka Modul FADN BASIC Internetový přístup do databáze FADN CZ - uživatelská příručka Modul FADN BASIC Modul FADN BASIC je určen pro odbornou zemědělskou veřejnost bez větších zkušeností s internetovými aplikacemi a bez hlubších

Více

Obsah. při vyšetření pacienta. GDT souboru do programu COSMED Omnia GDT souboru z programu COSMED Omnia a zobrazení výsledků měření v programu MEDICUS

Obsah. při vyšetření pacienta. GDT souboru do programu COSMED Omnia GDT souboru z programu COSMED Omnia a zobrazení výsledků měření v programu MEDICUS Obsah Napojení...3 programu COSMED Omnia Nastavení...3 MEDICUS Přidání...3 externího programu COSMED Omnia Přidání...4 ikony do panelu nástrojů Nastavení...5 COSMED Omnia Postup...5 při vyšetření pacienta

Více

Modul 2. Druhá sada úkolů:

Modul 2. Druhá sada úkolů: Zadání Druhá sada úkolů: Modul 2 Všechny potřebné složky a soubory pro splnění následující sady úkolů se nachází ve složce sada2. 1. Ve složce Ulohy vytvořte šest nových složek (podle obrázku) a pojmenujte

Více

WinFAS. informace. Doprovodná příručka ke školení Základy ovládání IS WinFAS

WinFAS. informace. Doprovodná příručka ke školení Základy ovládání IS WinFAS informace Doprovodná příručka ke školení Základy ovládání IS verze z 30.3.2005 se skládá z modulů které se dále člení. Modulem chápeme skupinu číselníků, aplikací a sestav, které slouží ke správě určité

Více

Vytvoření tiskové sestavy kalibrace

Vytvoření tiskové sestavy kalibrace Tento návod popisuje jak v prostředí WinQbase vytvoříme novou tiskovou sestavu, kterou bude možno použít pro tisk kalibračních protokolů. 1. Vytvoření nového typu sestavy. V prvním kroku vytvoříme nový

Více

ÚLOHA 6. Úloha 6: Stěžejní body tohoto příkladu:

ÚLOHA 6. Úloha 6: Stěžejní body tohoto příkladu: Úloha 6: Stěžejní body tohoto příkladu: - Definování tabule plechu - Manuální nesting - vkládání - Expert-parametry pro nastavení automatického zpracování - Provedení automatického Expert zpracování -

Více

Začínáme pracovat s tabulkovým procesorem MS Excel

Začínáme pracovat s tabulkovým procesorem MS Excel Začínáme pracovat s tabulkovým procesorem MS Excel Nejtypičtějším představitelem tabulkových procesorů je MS Excel. Je to pokročilý nástroj pro tvorbu jednoduchých i složitých výpočtů a grafů. Program

Více

Základní principy vyhledávání firem

Základní principy vyhledávání firem Základní principy vyhledávání firem Vyhledávat informace v databázi lze několika způsoby. Základní způsob používá postupné kroky, kdy otevíráme tzv. slovníky, z nichž vybíráme požadované hodnoty, například

Více

KAPITOLA 9 - POKROČILÁ PRÁCE S TABULKOVÝM PROCESOREM

KAPITOLA 9 - POKROČILÁ PRÁCE S TABULKOVÝM PROCESOREM KAPITOLA 9 - POKROČILÁ PRÁCE S TABULKOVÝM PROCESOREM CÍLE KAPITOLY Využívat pokročilé možnosti formátování, jako je podmíněné formátování, používat vlastní formát čísel a umět pracovat s listy. Používat

Více

Manuál QPos Pokladna V1.18.1

Manuál QPos Pokladna V1.18.1 Manuál QPos Pokladna V1.18.1 OBSAH Obsah 1. QPOS dotyková pokladna... 3 2. Jak číst tento manuál... 4 2.1. Čím začít?... 4 2.2. Členění kapitol... 4 2.3. Speciální text... 4 3. První spuštění... 5 3.1.

Více

Ovládání Open Office.org Calc Ukládání dokumentu : Levým tlačítkem myši kliknete v menu na Soubor a pak na Uložit jako.

Ovládání Open Office.org Calc Ukládání dokumentu : Levým tlačítkem myši kliknete v menu na Soubor a pak na Uložit jako. Ukládání dokumentu : Levým tlačítkem myši kliknete v menu na Soubor a pak na Uložit jako. Otevře se tabulka, v které si najdete místo adresář, pomocí malé šedočerné šipky (jako na obrázku), do kterého

Více

MS OFFICE, POWERPOINT

MS OFFICE, POWERPOINT Škola: Autor: DUM: Vzdělávací obor: Tematický okruh: Téma: Masarykovo gymnázium Vsetín Mgr. Petr Koňařík MGV_VT_SS_1S2-D15_Z_OFF_PP.docx Informatika MS Office Powerpoint MS OFFICE, POWERPOINT ÚVOD PowerPoint

Více

Modul 6. Multimediální prezentace

Modul 6. Multimediální prezentace Multimediální prezentace Obsah MODUL 6... 1 MULTIMEDIÁLNÍ PREZENTACE... 1 Obsah... 3 Úvod... 3 POWER POINT 2003... 3 POSTUP PRÁCE NA PREZENTACI... 3 Šablona návrh... 4 Rozložení snímku... 4 Prohlížení

Více

Aplikace Microsoft Office Outlook 2003 se součástí Business Contact Manager

Aplikace Microsoft Office Outlook 2003 se součástí Business Contact Manager Aplikace Microsoft Office Outlook 2003 se součástí Business Contact Manager Tipy a triky Obsah Tento dokument obsahuje tipy a triky, které vám pomohou maximalizovat produktivitu při používání aplikace

Více

Modul Zásoby IQ sestavy a jejich nastavení Materiál pro samostudium +1170

Modul Zásoby IQ sestavy a jejich nastavení Materiál pro samostudium +1170 Modul Zásoby IQ sestavy a jejich nastavení Materiál pro samostudium +1170 20.5.2014 Major Bohuslav, Ing. Datum tisku 20.5.2014 2 Modul Zásoby IQ sestavy a jejich nastavení Modul Zásoby IQ sestavy a jejich

Více

Reliance 3 design OBSAH

Reliance 3 design OBSAH Reliance 3 design Obsah OBSAH 1. První kroky... 3 1.1 Úvod... 3 1.2 Založení nového projektu... 4 1.3 Tvorba projektu... 6 1.3.1 Správce stanic definice stanic, proměnných, stavových hlášení a komunikačních

Více

Ukázka knihy z internetového knihkupectví www.kosmas.cz

Ukázka knihy z internetového knihkupectví www.kosmas.cz Ukázka knihy z internetového knihkupectví www.kosmas.cz U k á z k a k n i h y z i n t e r n e t o v é h o k n i h k u p e c t v í w w w. k o s m a s. c z, U I D : K O S 1 8 0 5 8 4 U k á z k a k n i h

Více

Migrace na aplikaci Outlook 2010

Migrace na aplikaci Outlook 2010 V tomto průvodci Microsoft Aplikace Microsoft Outlook 2010 vypadá velmi odlišně od aplikace Outlook 2003, a proto jsme vytvořili tohoto průvodce, který vám pomůže se s ní rychle seznámit. Dozvíte se o

Více

Jeden z mírně náročnějších příkladů, zaměřený na úpravu formátu buňky a především na detailnější práci s grafem (a jeho modifikacemi).

Jeden z mírně náročnějších příkladů, zaměřený na úpravu formátu buňky a především na detailnější práci s grafem (a jeho modifikacemi). Příklad zahrnuje Textová editace buněk Základní vzorce Vložené kliparty Propojené listy Grafi cká úprava buněk Složitější vzorce Vložené externí obrázky Formuláře Úprava formátu Vysoce speciální funkce

Více

Internetový přístup do databáze FADN CZ - uživatelská příručka Modul FADN RESEARCH / DATA

Internetový přístup do databáze FADN CZ - uživatelská příručka Modul FADN RESEARCH / DATA Internetový přístup do databáze FADN CZ - uživatelská příručka Modul FADN RESEARCH / DATA Modul FADN RESEARCH je určen pro odborníky z oblasti zemědělské ekonomiky. Modul neomezuje uživatele pouze na předpřipravené

Více

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávání v informačních a komunikačních technologií

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávání v informačních a komunikačních technologií VY_32_INOVACE_33_05 Škola Střední průmyslová škola Zlín Název projektu, reg. č. Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávací oblast Vzdělávání v informačních a komunikačních

Více

Pátý modul. Databáze a systémy pro uchování dat. Co vše může v otázkách být?

Pátý modul. Databáze a systémy pro uchování dat. Co vše může v otázkách být? Pátý modul Databáze a systémy pro uchování dat Velmi užitečnou skupinou programů jsou databáze, i když běžný uživatel zatím u nás s nimi nepracuje tak často jak s textovými či tabulkovými editory. Pomáhají

Více

Čtvrtek 3. listopadu. Makra v Excelu. Obecná definice makra: Spouštění makra: Druhy maker, způsoby tvorby a jejich ukládání

Čtvrtek 3. listopadu. Makra v Excelu. Obecná definice makra: Spouštění makra: Druhy maker, způsoby tvorby a jejich ukládání Čtvrtek 3. listopadu Makra v Excelu Obecná definice makra: Podle definice je makro strukturovanou definicí jedné nebo několika akcí, které chceme, aby MS Excel vykonal jako odezvu na nějakou námi definovanou

Více

Modul 2. První sada úkolů:

Modul 2. První sada úkolů: Zadání První sada úkolů: Modul 2 Všechny potřebné složky a soubory pro splnění následující sady úkolů se nachází ve složce sada1. 1. Ve složce Ulohy vytvořte čtyři nové složky (podle obrázku) a pojmenujte

Více

Databáze MS-Access. Obsah. Co je to databáze? Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová

Databáze MS-Access. Obsah. Co je to databáze? Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová Databáze MS-Access Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová Obsah Principy a možnosti databází. Uložení dat v databázi, formáty dat, pole, záznamy, tabulky, vazby mezi záznamy. Objekty databáze

Více

Základní popis Toolboxu MPSV nástroje

Základní popis Toolboxu MPSV nástroje Základní popis Toolboxu MPSV nástroje Nástroj XLS2DBF ze sady MPSV nástroje slouží pro zkonvertování souboru ve formátu XLS do formátu DBF. Nástroj umožňuje konvertovat buď vybraný list nebo listy ze sešitu

Více

MS SQL Server 2008 Management Studio Tutoriál

MS SQL Server 2008 Management Studio Tutoriál MS SQL Server 2008 Management Studio Tutoriál Vytvoření databáze Při otevření management studia a připojením se ke konkrétnímu sql serveru mám v levé části panel s názvem Object Explorer. V tomto panelu

Více

Prozkoumání příkazů na pásu karet Každá karta na pásu karet obsahuje skupiny a každá skupina obsahuje sadu souvisejících příkazů.

Prozkoumání příkazů na pásu karet Každá karta na pásu karet obsahuje skupiny a každá skupina obsahuje sadu souvisejících příkazů. Úvodní příručka Microsoft Excel 2013 vypadá jinak než ve starších verzích, proto jsme vytvořili tuto příručku, která vám pomůže se s ním rychle seznámit. Přidání příkazů na panel nástrojů Rychlý přístup

Více

Microsoft. Access. Výběrové dotazy. Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie

Microsoft. Access. Výběrové dotazy. Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie Microsoft Access Výběrové dotazy Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie Výběrové dotazy výběrový dotaz slouží k výběru konkrétních dat z tabulky databáze podle zadaných kritérií

Více

Profesis KROK ZA KROKEM 2

Profesis KROK ZA KROKEM 2 Profesis KROK ZA KROKEM 2 Adresa systému: www.profesis.cz Údaje nutné pro přihlášení: - přihlašovací jméno: sedmimístné číslo autorizace. Včetně nul na začátku např.: 0000001 - heslo: na štítku DVD Profesis

Více

Pro definici pracovní doby nejdříve zvolíme, zda chceme použít pouze informační

Pro definici pracovní doby nejdříve zvolíme, zda chceme použít pouze informační 1. 1 V programu Medicus Komfort a Medicus Profesionál je možné objednávat pacienty v nově přepracovaném objednávacím kalendáři. Volba Objednávky zpřístupňuje možnosti objednávání pacientů, nastavení pracovní

Více