# Uživatelská příručka V2.0 k aplikaci Glom

pro Glom v1.6

2004 Murray Cumming
Vývojářský tým Glom

Je povoleno kopírovat, šířit a/nebo upravovat tento dokument za podmínek GNU Free Documentation License (GFDL) ve verzi 1.1 nebo v jakékoli další verzi vydané nadací Free Software Foundation; bez neměnných oddílů, bez textů předních desek a bez textů zadních desek. Kopii licence GFDL naleznete pod tímto odkazem nebo v souboru COPYING-DOCS dodávaném s touto příručkou.

Tato příručka je součástí sbírky příruček GNOME šířených za podmínek licence GNU FDL. Pokud chcete tento dokument šířit odděleně od sbírky, musíte přiložit kopii licence dle popisu v oddílu 6 dané licence.

Mnoho názvů použitých firmami k zviditelnění produktů nebo služeb jsou ochranné známky. Na místech, kde jsou tyto názvy v dokumentaci použity a členové Dokumentačního projektu GNOME jsou si vědomi skutečnosti, že se jedná o ochrannou známku, je takovýto název psán velkými písmeny celý nebo s velkým písmenem na začátku.

DOKUMENT A JEHO UPRAVENÉ VERZE JSOU ŠÍŘENY V SOULADU SE ZNĚNÍM LICENCE GNU FREE DOCUMENTATION LICENSE S NÁSLEDUJÍCÍM USTANOVENÍM:

1. DOKUMENT JE POSKYTOVÁN V PODOBĚ „JAK JE“ BEZ ZÁRUKY V JAKÉKOLIV PODOBĚ, NEPOSKYTUJÍ SE ANI ODVOZENÉ ZÁRUKY, ZÁRUKY, ŽE DOKUMENT, NEBO JEHO UPRAVENÁ VERZE, JE BEZCHYBNÝ NEBO ZÁRUKY PRODEJNOSTI, VHODNOSTI PRO URČITÝ ÚČEL NEBO NEPORUŠENOSTI. RIZIKO NEKVALITY, NEPŘESNOSTI A ŠPATNÉHO PROVEDENÍ DOKUMENTU, NEBO JEHO UPRAVENÉ VERZE, LEŽÍ NA VÁS. POKUD KVŮLI TOMUTO DOKUMENTU, NEBO JEHO UPRAVENÉ VERZI, NASTANE PROBLÉM, VY (NIKOLIV PŮVODNÍ AUTOR NEBO JAKÝKOLIV PŘISPĚVATEL) PŘEBÍRÁTE JAKÉKOLIV NÁKLADY ZA NUTNÉ ÚPRAVY, OPRAVY ČI SLUŽBY. TOTO PROHLÁŠENÍ O ZÁRUCE PŘEDSTAVUJE ZÁKLADNÍ SOUČÁST TÉTO LICENCE. BEZ TOHOTO PROHLÁŠENÍ NENÍ, PODLE TÉTO DOHODY, POVOLENO UŽÍVÁNÍ ANI ÚPRAVY TOHOTO DOKUMENTU; DÁLE

2. ZA ŽÁDNÝCH OKOLNOSTÍ A ŽÁDNÝCH PRÁVNÍCH PŘEDPOKLADŮ, AŤ SE JEDNÁ O PŘEČIN (VČETNĚ NEDBALOSTNÍCH), SMLOUVU NEBO JINÉ, NENÍ AUTOR, PŮVODNÍ PISATEL, KTERÝKOLIV PŘISPĚVATEL NEBO KTERÝKOLIV DISTRIBUTOR TOHOTO DOKUMENTU NEBO UPRAVENÉ VERZE DOKUMENTU NEBO KTERÝKOLIV DODAVATEL NĚKTERÉ Z TĚCHTO STRAN ODPOVĚDNÝ NĚJAKÉ OSOBĚ ZA PŘÍMÉ, NEPŘÍMÉ, SPECIÁLNÍ, NAHODILÉ NEBO NÁSLEDNÉ ŠKODY JAKÉHOKOLIV CHARAKTERU, VČETNĚ, ALE NEJEN, ZA POŠKOZENÍ ZE ZTRÁTY DOBRÉHO JMÉNA, PŘERUŠENÍ PRÁCE, PORUCHY NEBO NESPRÁVNÉ FUNKCE POČÍTAČE NEBO JINÉHO A VŠECH DALŠÍCH ŠKOD NEBO ZTRÁT VYVSTÁVAJÍCÍCH Z NEBO VZTAHUJÍCÍCH SE K POUŽÍVÁNÍ TOHOTO DOKUMENTU NEBO UPRAVENÝCH VERZÍ DOKUMENTU, I KDYŽ BY TAKOVÁTO STRANA BYLA INFORMOVANÁ O MOŽNOSTI TAKOVÉHOTO POŠKOZENÍ.

Murray Cumming
vývojářský tým Glom

     murrayc@murrayc.com

Glom 1.6
20. červen 2004

Murray Cumming

Murray Cumming

Tato příručka popisuje aplikaci Glom ve verzi 1.6

Ohlasy

Pokud chcete oznámit chybu nebo navrhnout vylepšení vztahující se k aplikaci Glom nebo této příručce, můžete to zaslat pomocí systému bugzilla u produktu Glom. Než zašlete hlášení chyby, projděte si prosím aktuálně nahlášené chyby, jestli mezi nimi již není.

Uživatelská příručka k aplikaci Glom

## Úvod

Díky aplikaci Glom můžete navrhovat a používat databázové systémy.

## Začínáme

### Spuštění aplikace Glom

Aplikaci Glom můžete spustit následujícími způsoby:

Nabídka Aplikace

  Zvolte Kancelář Glom.

### Když spustíte aplikaci Glom

Když spustíte aplikaci Glom, zobrazí se následující okno. Můžete otevřít existující soubor Glom nebo vytvořit nový, případně u nového souboru Glom vyjít z některé z ukázek.

Úvodní okno Glom, otevírání existujícího souboru

Ukazuje hlavní okno Glom použité k otevření stávajícího souboru Glom.

Úvodní okno Glom, vytváření nového souboru

Ukazuje hlavní okno Glom použité k vytvoření nového souboru Glom.

## Používáme Glom jako operátoři

Když chcete otevřít existující dokument Glom, otevřete jej buď ze správce souborů nebo zvolte z nabídce aplikací Glom a po dotázání dokument vyberte. Následně budete dotázáni na jméno a heslo pro přístup k databázi. Ty vám poskytne váš správce počítače.

Po otevření existujícího dokumentu se bude Glom nacházet v `uživatelské úrovni` `Operátor`. Tato uživatelská úroveň vám umožní vyhledávat a upravovat záznamy, ale nedovolí provádět změny v základní struktuře databáze.

### Navigace

Každá databáze má několik tabulek. Pokud se chcete dívat do různých tabulek, zvolte `Tabulky` v nabídce `Navigace`. Po té dvojitě klikněte na tabulku nebo ji vyberte a klikněte na tlačítko `Otevřít`.

Přechod na tabulku

Pohyb po tabulce.

### Prohlížení a zadávání dat

Když jste v režimu `Data`, můžete prohlížet nebo zadávat údaje v zobrazeních `Seznam` nebo `Podrobnosti`.

#### Seznamové zobrazení

V zobrazení Seznam vidíte více záznamů naráz a obvykle jen nepodstatnější pole.

Když do pole zadáte údaje, ihned po dokončení úprav pole budou uloženy do databáze. Pokud se jedná o pole s datem nebo časem, bude také provedena kontrola formátu.

Nový záznam vytvoříte jednoduše kliknutím na tlačítko `Přidat` nebo začněte psát do pole na posledním prázdném řádku. Tím se vytvoří nový záznam s prázdnými poli, která můžete vyplnit.

Seznamové zobrazení

Seznamové zobrazení.

Jestli chcete záznamy uspořádat, stačí kliknou na záhlaví sloupce. Například můžete kliknout na sloupec s datem, aby se faktury seřadily podle data a ještě jednou kliknout, aby se seřadily podle data v opačném pořadí.

#### Podrobné zobrazení

V zobrazení Podrobnosti vidíte jen jeden záznam a obvykle všechna pole vhodně uspořádaná.

Když do pole zadáte údaje, ihned po dokončení úprav pole budou uloženy do databáze. Pokud se jedná o pole s datem nebo časem, bude také provedena kontrola formátu.

Nový záznam vytvoříte jednoduše kliknutím na tlačítko `Přidat`. Tím se vytvoří nový záznam s prázdnými poli, která můžete vyplnit.

Podrobné zobrazení

Podrobné zobrazení.

### Hledání dat

V nabídce Režim zvolte `Hledat`. Pole v seznamovém i podrobném zobrazení nyní budou prázdná a v dolní části okna se objeví tlačítko Hledat.

Zadejte údaj nebo jeho část do pole, podle kterého chcete najít záznamy. Například do pole pro jméno zadejte „Rychl“, aby se vyhledaly záznamy se jmény „Rychlý“ nebo „Rychlá“.

Po zmáčknutí tlačítka `Hledat` Glom vyhledá záznamy a zobrazí je. Když najde jen jeden záznam, zobrazí je v podrobném zobrazení. Když jich najde více, zobrazí je v seznamovém zobrazení.

### Tisk sestav

V případě, že návrhář databáze nadefinoval pro tabulky nějaké výstupní sestavy, uvidíte je vypsané v nabídce `Sestavy`. Zvolením sestavy v nabídce sestavu vytvoříte. Pokud jste před tím provedli vyhledávání, bude výstupní sestava obsahovat pouze aktuálně nalezená data. Jinak bude obsahovat všechna data. Uvědomte si, že každá tabulka má své vlastní sestavy, takže se musíte na patřičnou tabulku přepnout, abyste mohli příslušnou sestavu použít.

Tisková sestava

Tisková sestava.

## Používáme Glom jako vývojáři

Když vytvoříte nový dokument, bude Glom v `uživatelské úrovni` `vývojář`. Uživatelskou úroveň můžete změnit na `vývojář` i po otevření existujícího dokumentu v nabídce `Uživatelská úroveň`. Aplikace Glom to ale umožní jen v případě, že to povolil správce.

### Přidávání tabulek

Seznam existujících tabulek uvidíte po zvolení `Tabulky` v nabídce `Navigace`. To stejné okno uvidíte i po připojení k databázovému serveru, po vytvoření nového dokumentu. Když chcete vytvořit novou tabulku, klikněte na tlačítko `Přidat` a zadejte pro ni nový název. Glom očekává pro tuto tabulku název čitelný pro lidi. `Operátoři` uvidí tento název namísto aktuálního názvu tabulky. Můžete také tabulku označit jako `skrytou` pro operátory. Operátoři by například měli vidět „Řádky faktur“ jako příslušné záznamy z tabulky „Faktury“, ale nikdy by se neměli dostat přímo do tabulky „Řádky faktur“.

Jednu z tabulek můžete určit jako `výchozí tabulku`. Tato tabulka se zobrazí, kdykoliv operátor otevře existující dokument, bez toho aniž by byl vybídnut k výběru tabulky ze seznamu.

Toto okno můžete použít také k přejmenování existující tabulky.

Kliknutím na `Otevřít` si vybranou tabulku zobrazíte.

### Úprava polí

Zvolte `Pole` z nabídky `Vývojář`. Tím se zobrazí seznam polí v tabulce. Nové tabulky mají automaticky pole s primárním klíčem, ale pokud je potřeba, můžete toto pole změnit.

Když chcete přidat nové pole, klikněte na tlačítko `Přidat` a zadejte název nového pole. Odpovídající název vhodný pro lidi Glom odhadne, ale můžete jej změnit. `Operátoři` uvidí tento „lidský“ název namísto názvu pole.

Jestli potřebujete upravit podrobnosti pole, tak jej vyberte a klikněte na tlačítko `Podrobnosti`.

Úprava polí

Úprava polí tabulky.

#### Primární klíče

Každá tabulka musí mít jeden, a právě jen jeden, `primární klíč`. Hodnoty v tomto poli budou jedinečné, tzn. že každá z hodnot v tomto poli se bude vyskytovat právě jen v jednom záznamu tabulky. Například, každý záznam v tabulce „Zákazníci“ by měl „ID zákazníka“. Tato hodnota se bude používat pro odkazování na tohoto zákazníka ze záznamů v jiných tabulkách, např. „Projekty“ a „Faktury“. Viz kapitola Vytváření vztahů o tom, jak tabulky navzájem provázat.

#### Typy polí

Glom nabízí několik jednoduchých typů polí:

1. Číslo

2. Text

3. Datum

4. Čas

5. Pravdivostní – jedna z hodnota „pravda“ a „nepravda“

6. Obrázek

#### Vypočítávaná pole

Hodnota v poli může být vypočítávána v závislosti na jiných polích pomocí programovacího jazyka Python. Tento výpočet by měl být implementován funkcí v jazyce Python, která vrací hodnotu. Vrácená hodnota je právě použita jako hodnota pole. Takovéto pole je přepočítáno pokaždé, když se změní některé zdrojové pole. K DOPRACOVÁNÍ: V současnosti to funguje pouze pro výchozí hodnoty a zatím nejde ve výpočtu použít hodnoty polí.

Výpočet je možné použít také k určení výchozí hodnoty pole. Zvolte kartu `Výchozí hodnota` v okně `Podrobnosti pole`, klikněte na zaškrtávací pole `Vypočítat hodnotu` a zadejte výpočet v jazyce Python. Zadaný výpočet můžete vyzkoušet v okně `Úpravy`.

### Návrh rozvržení

Každá tabulka má zobrazení `Seznam` a `Podrobnosti` a ve výchozím stavu zobrazují všechna pole tabulky v pořadí, jak byla vytvořena. Jejich rozvržení můžete upravit volbou `Rozvržení` v nabídce `Vývojář`.

#### Návrh seznamového rozvržení

U zobrazení `Seznam` můžete určit pořadí sloupců s poli a zda mají být některá pole skrytá.

Úprava seznamového rozvržení

Úprava seznamového rozvržení.

#### Návrh podrobného rozvržení

U zobrazení `Podrobnosti` můžete pro pole vytvářet skupiny a těmto skupinám přidělovat názvy. Do skupin pak umisťujete jednotlivá pole a určujete jejich pořadí v rámci něj. Pořadí můžete určit i mezi skupinami. Například v tabulce „Kontakty“ můžete vytvořit skupinu „Jméno“ a do ní umístit pole „Titul“, „Křestní jméno“ a „Příjmení“. Dále můžete vytvořit třeba skupinu „Adresa“.

Úprava podrobného rozvržení

Úprava podrobného rozložení.

### Vytváření vztahů

Některé tabulky v databázi často patří k sobě. Například tabulka „Faktury“ může mít pole „ID zákazníka“. Hodnota v tomto poli určuje záznam se stejnou hodnotou v tabulce „Zákazníci“. Glom pak umí zobrazit dodatečné informace z tohoto navazujícího záznamu, jako třeba jméno zákazníka. Nebo může zobrazit seznam několika navazujících záznamů – například několik „Řádků faktury“, které mají vztah k záznamu v tabulce „Faktury“.

Když chcete vytvořit vztah mezi tabulkami, zvolte `Vztahy` z nabídky `Vývojář`. Zobrazí se seznam stávajících vztahů. Kliknutím na tlačítko `Přidat` vytvoříte nový vztah, kterému musíte dát název. Pak můžete vybrat pole v aktuální tabulce a pole v jiné tabulce, na které se bude odkazovat. Pomocí tohoto vztahu se potom dá najít libovolný záznam v druhé tabulce, pro který jsou hodnoty v obou polích stejné.

Vztahy můžete použít na následujících místech:

1. K zobrazení navazujícího pole v seznamovém nebo podrobném zobrazení.

2. K zobrazení seznamu navazujících záznamů v podrobném zobrazení.

3. K vyhledání hodnoty z pole v navazujícím záznamu. Například ke zkopírování aktuální ceny „Produktu“ do pole „Cena“ v záznamu „Řádek faktury“.

4. K výpočtu hodnoty pole.

### Správa uživatelů

Abyste mohli definovat `Operátory`, kteří mohou databázi používat, a přidělovat jim přístup k různým tabulkám, zvolte `Uživatelé` v nabídce `Vývojář`.

### Překlady

Uživatelské rozhraní aplikace Glom (a rovněž tento dokument) je přeloženo do několika jazyků, což byste měli vidět, pokud používáte počítač s jiným, než anglickým rozhraním. Navíc Glom automaticky zobrazuje a rozumí číslům a datům ve formátu podle konvencí aktuálního uživatelova národního prostředí. Například uživatel v USA může zadat cenu jako 1.99 a datum jako 1/13/2008, zatímco český uživatel té stejné databáze později uvidí 1,99 a 13.1.2008.

Protože však systém Glom, který vytvoříte, obsahuje také texty, musí být v případě, že jej budou používat lidé mluvící různými jazyky, přeložen. Například musíte poskytnout překlady pro názvy svých tabulek, polí a výstupních sestav. Všechny tyto položky můžete vidět v seznamu, který si zobrazíte pomocí `Překlady` v nabídce `Vývojář`. V tomto okně můžete určit jazyk, který bude použit pro originální texty a zadat překlady pro každou textovou položku v dalším jazyce. Když potom tento systém Glom otevře uživatel s tímto jazykem, zobrazí se mu uživatelské rozhraní v jeho jazyce.

Překlady

Překlady.

Zkušení překladatelé bývají zběhlí v používání souborů ve formátu .po, případně si můžete přát použít některý z mnoha nástrojů, které s formátem .po pracují. Pomocí tlačítka `Export` můžete vytvořit soubor .po, který potom můžete použít ve specializovaném nástroji nebo jej poslat překladateli. Výsledný překlad pak můžete naimportovat pomocí tlačítka `Import`.

### Definování výstupních sestav

#### Přidávání nebo upravování sestav

Glom umí produkovat výstupní sestavy, které zobrazují určená pole pro množinu záznamů, seřazená a seskupená. Například obchod může potřebovat seznam všech produktů prodaných za měsíc, seskupených podle typu produktu a seřazených podle ceny v rámci každé skupiny. Každá tabulka má své vlastní sestavy, které jsou operátorům dostupné z nabídky `Sestavy`.

Když chcete vytvořit sestavu nebo změnit definici stávající, zvolte `Sestavy` v nabídce `Vývojář`.

Vytváření nebo úprava sestav

Vytváření nebo úprava tiskových sestav.

Všimněte si, že každá sestava má ID a zároveň pro lidi čitelný název. Díky tomu může mít název přeložený, když se používá na počítači s víc používanými jazyky.

#### Úprava sestavy

Výstupní sestava v aplikaci Glom má tři oblasti:

1. Záhlaví, které se objevuje na začátku sestavy

2. Hlavní oblast, ve které jsou zobrazeny záznamy a souhrnné řádky s aktuálními daty z databáze.

3. Zápatí, které se objevuje na konci sestavy.

Do libovolné oblasti, například hlavní, můžete přidávat `součásti` sestavy, což jsou pole, texty nebo obrázky. Ty se obvykle vyskytují v řádcích u tištěné sestavy, co řádek, to záznam. V jednoduchých případech to vypadá hodně podobně jako zobrazení Seznam. Součásti můžete do sestavy přidávat výběrem ze seznamu `Dostupné součásti` a kliknutím na tlačítko `Přidat`. Součást bude přidána do seznamu `Součásti` ve vybrané oblasti.

Pokud potřebujete u součástí zadat doplňující údaje, jako text nebo obrázek, nebo vybrat pole, které se má zobrazit, vyberte součást v seznamu `Součásti` a klikněte na tlačítko `Upravit`. Můžete také specifikovat formátování kliknutím na tlačítko `Formátování`, stejně jako při definování podrobností nebo seznamového rozvržení.

Úprava sestavy

Úprava tiskové sestavy.

Některé součásti mohou obsahovat další součásti a mají doplňující vlastnosti, které řídí, jak mají zobrazovat své dceřiné součásti. Například součást `Seskupit podle` seskupuje záznamy podle pole. Takže např. sestava s produkty může seskupovat seznam produktů podle typu produktu. Můžete také přidat druhé podřízené seskupení do hlavní součásti `Seskupit podle` tak, že vyberete nejvrchnější součást `Seskupit podle` v seznamu součástí a poté přidáte novou součást `Seskupit podle` ze seznamu `Dostupné součásti`. Takto můžete své produkty seskupit třeba podle výrobce uvnitř každé skupiny s určitým typem produktů.

Pro určení pole, podle kterého by se záznamy měly seskupovat, vyberte součást `Seskupit podle` v seznamu `Součásti` a klikněte na tlačítko `Upravit`. Poté můžete vybrat pole, podle kterého se bude seskupovat a jedno čí více polí, podle kterých se budou záznamy řadit v rámci skupiny. Můžete také určit nějaká dodatečná pole, která se budou zobrazovat v řádku s názvem skupiny. Například můžete chtít seskupit produkty podle ID výrobce, ale také chtít zobrazit název výrobce.

Úprava součásti Seskupit podle

Úprava tiskové sestavy.

Součást `Svislá skupina` může obsahovat další položky. Například vám umožní uspořádat pole jedno po druhém pod sebe namísto jedno za druhým ve vodorovném řádku. To se může hodit pro seskupování souvisejících polí, jako jsou řádky adresy nebo pro vmáčknutí více informací do řádku jednoho záznamu v sestavě.

Sestava se svislými skupinami

Tisková sestava se svislými skupinami.

Až máte vše hotovo, klikněte na tlačítko `Zavřít` a definice výstupní sestavy se uloží. Zvolit si ji pak můžete v nabídce `Sestavy`. Víz další informace v oddíle Tisk sestav.

## Dialogová okna

### Dialogové okno: Úvodní dialog

V tomto dialogovém okně si uživatel může vybrat ze stávajících dokumentů nebo vytvořit nový. Existující dokumenty může vybrat ze seznamu nedávno otevřených dokumentů nebo vybrat soubor v dialogovém okně pro výběr souborů. Dokument je možné otevřít také přes síť v případě, že jiný uživatel v místní síti má také spuštěný Glom. A konečně, nový dokument se dá vytvořit otevřením souboru se šablonou, který obsahuje nějaké počáteční tabulky a záznamy, nebo vytvořením prázdného dokumentu.

### Dialogové okno: Nová databáze

### Dialogové okno: Vytvoření databáze

### Dialogové okno: Připojení

Toto dialogové okno požaduje jméno uživatele a heslo pro připojení k databázovému serveru. Obvykle to není ta samá kombinace jména a hesla, jako používáte pro přihlášení do systému. Všechny systémy aplikace Glom vyžadují databázový server, na kterém jsou uložena data. Pokud databázový server neběží na vašem lokálním počítači („localhost“), musíte zadat také název onoho počítače v síti, jako „glomserver.openismus.com“ (váš skutečný název bude jiný).

Údaje pro přihlášení k databázi by vám měl poskytnout váš správce systému.

Pokud jste sami správci systému, podívejte se na stránku nastavení databáze PosgreSQL na webu Glom, která vám poradí s instalací a nastavením databázového serveru (stránka je v angličtině).

### Dialogové okno: Chyba připojení

Toto dialogové okno se zobrazí, když se aplikace Glom nemůže připojit k zadanému databázovému serveru. Buď databázový server neběží na zadaném počítači nebo neakceptoval uživatelské jméno a heslo. Viz Dialogové okno Připojení pro více informací.

### Dialogové okno: Nastavení databáze

### Dialogové okno: Změna jazyka

### Okno: Textový objekt

### Okno: Objekt obrázku

### Dialogové okno: Poznámkový blok

### Dialogové okno: Neplatný formát data

### Dialogové okno: Přehled vztahů

### Okno: Skupiny

### Dialogové okno: Seskupení podle seřazených polí

### Dialogové okno: Seskupení podle podružný polí

### Okno: Skript tlačítka

### Okno: Výpočet pole

### Dialogové okno: Nová skupina

### Dialogové okno: Výběr uživatele

### Dialogové okno: Uživatel

### Dialogové okno: Rozpoznání originálu překladu

### Dialogové okno: Kopírování překladu

### Dialogové okno: Výběr data

### Dialogové okno: Import do tabulky

V tomto dialogovém okně může uživatel do aktuální tabulky databáze importovat soubory CSV. Zobrazí se vám pár prvních řádků importovaného souboru a uživatel má možnost ke každému sloupci v souboru CSV přiřadit cílové pole v databázi. Jeden ze sloupců může být importován i do pole určeného jako primární klíč, vyjma klíčů s automatickou inkrementací, ty jako cílové pole figurovat nemohou.

## O aplikaci Glom

Glom je udržován dobrovolníky z komunity okolo Glom a GNOME. Pokud se chcete o aplikaci Glom dozvědět více, navštivte prosím webové stránky Glom.

Pokud chcete oznámit chybu nebo navrhnout vylepšení vztahující se k této aplikaci nebo této příručce, můžete to zaslat pomocí systému bugzilla.

Dalším výborným zdrojem informací je poštovní konference Glom.

Tento program je šířen podle ustanovení GNU General Public License, vydávané Free Software Foundation; a to buď verze 2 této licence anebo (podle vlastního uvážení) kterékoliv pozdější verze. Kopii této licence naleznete pod tímto odkazem nebo v souboru COPYING přiloženém ke zdrojovým kódům tohoto programu.

## Koncepty

Glom je na snadný na používání, ale musíte porozumět následujícím základním konceptům.

1. `Databáze`: Každý dokument Glom umožňuje přístup do jedné databáze.

2. `Tabulka`: Každá databáze obsahuje několik tabulek, jako „Zákazníci“ nebo „Faktury“.

3. `Pole`: Každá tabulka má několik polí, jako „ID zákazníka“, „Příjmení“ nebo „Datum narození“. V některých jiných typech dokumentů nebo aplikacích bývají tato pole nazývána `sloupce`.

4. `Záznamy`: Každá tabulka obsahuje několik záznamů, přičemž každý z nich má hodnoty pro každé z polí. Například tabulka „Zákazníci“ bude mít záznam pro každého zákazníka. V některých jiných typech dokumentů nebo aplikacích bývají tato pole nazývána `řádky`.

5. `Vztahy`: Každá z tabulek může mít vztah k jiné tabulce pomocí polí v obou tabulkách. Například tabulka „Zákazníci“ by mohla mít vztah do tabulky „Faktury“, takže lidé mohou vidět všechny faktury daného zákazníka. Tomuto konceptu potřebují rozumět jen vývojáři. V některých jiných typech dokumentů nebo aplikacích bývají tyto vztahy nazývány „vazby“ nebo „relace“.

## Vypočítávaná pole a skripty tlačítek

Vypočítávaná pole a tlačítko skripty používají programovací jazyk Python. Výpočet či skript jsou implementací funkce, pro kterou je vám poskytnut podpis.

Úprava definice vypočítávaného pole

Úprava definice vypočítávaného pole.

### Hodnoty polí

Například

    record["krestni_jmeno"]

je hodnota pole krestni_jmeno v aktuálním záznamu.

### Navazující záznamy

Například

    record.related["misto"]

poskytuje záznamy navázané na aktuální záznam.

#### Jeden navazující záznam

Pro vztahy, které určují jeden záznam, můžete získat hodnotu pole v záznamu. Například

    record.related["misto"]["nazev"]

je hodnota pole „nazev“ v tabulce určené vztahem „misto“ (často označováno misto::nazev)

#### Vícenásobné navazující záznamy

Pro vztahy, které určují více záznamů, musíte použít agregační funkce (sum, count, average), abyste získali souhrnnou hodnotu. Například

    record.related["radky_faktur"].sum("celkova_cena")

.

### Test na prázdnou hodnotu

Jak můžete testovat na prázdné hodnoty u různých typů polí:

#### Netextová pole

Netextová pole mohou být prázdná, což znamená, že uživatel do pole nezadal žádnou hodnotu. Glom například nepředpokládá, že prázdná hodnota v číselném poli by měla znamenat 0.

Zda je pole prázdné můžete testovat pomocí hodnoty None jazyka Python. Například:

      if(record["kontakt_id"] == None):
        return "Žádný kontakt"
      else:
        return record.related["kontakty"]["cele_jmeno"]

Můžete také otestovat, jestli existují nějaké navazující záznamy. Například:

      if(record.related["kontakty"] == None):
        return "Žádný kontakt"
      else:
        return record.related["kontakty"]["cele_jmeno"]

#### Textová pole

U textových polí byste měli kontrolovat nulovou délku řetězce. V aplikaci Glom není možné rozlišit mezi nulovou délkou řetězce a nezadaným žádným řetězcem, protože to nemá žádný praktický význam. Například:

      if(record["cele_jmeno"] == ""):
        return "Žádné jméno"
      else:
        return record["cele_jmeno"]

### Používání úplného API pygda

pygda je API jazyka Python pro API libgda. Vlastnost `connection` u záznamu poskytuje gda.connection, které lze použít k přímému přístupu do aktuální databáze. Díky tomu můžete spustit libovolný dotaz v SQL, například přečíst data z databáze pomocí SELECT nebo změnit hodnoty v databázi pomocí UPDATE. Všimněte si, že spojení je již otevřeno, takže si ušetříte náročnou práci se zadáváním připojovacích údajů.

Vlastnost `table_name` u záznamu poskytuje název aktuální tabulky.

Tento příklad čte všechna data z aktuální tabulky a hodnoty vypisuje na terminál:

    # Použití aktuálního databázového připojení
    # k získání všech dat z aktuální tabulky.
    #
    # record.connection je již otevřený objekt gda.connection,
    # takže se nemusíme trápit s otevíráním připojení,
    # ani znalostí názvu databáze.

    query = "SELECT * FROM %s" % record.table_name
    data_model = gda.gda_execute_select_command(record.connection, query)

    rows = data_model.get_n_rows()
    columns = data_model.get_n_columns()
    print "    Počet sloupců: ", columns

    for i in range(columns):
        print "      sloupec ", i;
        print "        název=", data_model.get_column_title(i)

        # Zjistit, zda se jedná o primární klíč::
        field = data_model.describe_column(i)
        if field.get_primary_key():
            print "        (primární klíč)"

        print "\n";

    print "    Počet řádků: ", rows

    for row_index in range(rows):
        print "      řádek ", row_index;

        for col_index in range(columns):
            print "        hodnota=", data_model.get_value_at(col_index, row_index).get()

        print "\n";

MY-GNOME-APP
mygnomeapp