E-R
Modeller v4.0
Obsah
2.3. Vzhled prostředí aplikace
2.4. Volby zobrazení detailů schématu
3.1. Grafické notace a jejich přepínání
3.3. Vytvoření vztahového typu a účasti
entitního typu ve vztahu
3.5. Operace se vztahovým typem
6. Tvorba a editace uživatelem definovaných datových typů
6.2. Editace existujícího uživatelem
definovaného typu
6.3. Smazání existujícího uživatelem
definovaného typu
6.5. Kontrola v průběhu vytváření
schématu
6.6.1. Vazba
mezi dialogem chyb a pracovní plochou
8.1. Zobrazení výsledné příkazové dávky
SQL
9.1. Dialog s nastaveními programu
Aplikace ER Modeller je program pro vytváření ER konceptuálních schémat. Schémata lze kreslit pomocí jedné ze 3 grafických notacích – Chenova, binární a UML notace. Výběr grafické notace je možno měnit i během práce se schématem. Je pouze nutno ctít omezení zobrazení některých grafických konstruktů. U vytvořených schémat lze kontrolovat konzistenci a následně lze schémata exportovat do SQL.
Uživatelské rozhraní aplikace se skládá z 5 základních částí (viz. Obrázek 1).
Obrázek 1 - Rozdělení plochy aplikace
· V horní části je zobrazeno hlavní menu, které obsahuje všechny nástroje, nastavení a nápovědu. Popis položek naleznete v kapitole 2.1.1.
· Pod hlavním menu je umístěna lišta s tlačítky - ToolBar. Před vlastními tlačítky je umístěna informační ikona, ve které se zobrazuje symbol aktuálně prováděné činnosti. V liště jsou dále tlačítka pro běžné operace a rozbalovací roleta pro volbu měřítka zobrazení. Jejich přehled a popis naleznete v kapitole 2.1.2.
· Hlavní část tvoří pracovní plocha, kde se provádí vlastní návrh ER konceptuálního schématu. Na okrajích pracovní plochy jsou posuvníky sloužící pro pohyb s pracovní plochou.
· V pravé části je umístěn panel s vlastnostmi aktuálně vybraného objektu. Pro každý objekt jsou zobrazeny pouze vlastnosti typické pro daný objekt a všechny jsou editovatelné.
· V dolní části aplikace se nachází informační panel, kde jsou zobrazeny informace o aktuální grafické notaci a nastavení detailů zobrazení.
Ovládací elementy aplikace mají k dispozici tzv. tipy - krátké popisky stručně vysvětlující význam příslušného elementu. Tento popis mají všechna tlačítka, veškeré přepínače a štítky u zadávacích polí. Tip se zobrazí, pokud zastavíte kurzor myši nad daným elementem a několik okamžiků vyčkáte.
Obrázek 2 - Strom hlavního menu
Složka FILE:
Složka VIEW:
Složka TOOLS:
Složka HELP:
- vytvoří nové schéma
- otevře existující schéma
- uloží schéma
- vytiskne schéma do souboru nebo na
tiskárnu
- překreslí schéma
- otevře přilévané schéma
- zkontroluje konzistenci vytvořeného
schématu
- vygeneruje SQL
- nastaví mód pro přidávání a editaci
objektů
- nastaví mód pro mazání objektů
- vytvoří nový entitní typ
- minimalizuje velikost všech objektů
- otevře dialog pro vytváření a
editaci uživatelsky def. datových typů
- otevře nápovědu
Program se ovládá převážně myší, pouze pro zadávání čísel a řetězců je nutno použít klávesnici.
Při vytváření schématu jsou všechny funkce (vytváření, dekompozice, editace a mazání objektů) přístupné z příslušného lokálního kontextového menu, které se vyvolává stiskem pravého tlačítka myši na objektu nebo pracovní ploše. POZOR, pro vyvolání lokálního menu musí být kurzor myši v okamžiku stisku nehybný.
S objekty na pracovní ploše můžete pohybovat – držením levého tlačítka myši a táhnutím po ploše. Dále můžete měnit velikost u objektů, které tuto akci podporují - kliknutím do objektu jej označíte (v rozích a středech stran se zobrazí 8 malých čtverečků) a chycením a posunem jednoho z nich měníte velikost v příslušném směru.
Pracovat můžete ve 2 režimech, které se přepínají
na liště tlačítky a
(význam tlačítek viz. kapitola 2.1.2). Pracovní mód slouží pro přidávání a editaci objektů
na pracovní ploše, mód pro mazání objektů objekty odstraňuje.
V hlavním menu po zvolení SETTINGS -> LOOK & FEEL si můžete vybrat ze 3 barevných schémat (METAL, WINDOWS a MOTIF) kliknutím na příslušnou položku.
V aplikaci je možno vytvářet
rozsáhlá schémata. Proto bylo od verze 4.0 implementováno zobrazování schémat
(pro lepší přehlednost) i bez některých detailů a to konkrétně ve 3 stupních:
Full details – schéma se zobrazuje se všemi podrobnostmi
Medium details – schéma se zobrazí bez atributů, které nejsou součástí primárního klíče a v UML notaci i bez Constraints
Low details - schéma se zobrazí bez atributů a v UML notaci i bez Constraints
Volbu zobrazení detailů přepnete v hlavním menu příslušnými položkami ve složce VIEW -> LEVEL OF DETAILS.
Jak již bylo uvedeno v úvodu, schéma je možné modelovat v jedné ze 3 grafických notací - Chenově, binární nebo UML. Než schéma začnete vytvářet, nejprve si rozmyslete ve které grafické notaci budete schéma tvořit. Každá grafická notace má svá specifika, která neumí zobrazit ostatní notace, a tudíž přepínání mezi notacemi má svá omezení (některé informace nejsou v ostatních notacích zobrazitelné a některé propojení prvků je dokonce zakázané).
Přepínat grafické notace lze i během práce, ale může se stát, že ve schématu bude nutno některé objekty dekomponovat nebo smazat. Na omezení při přepínání notací budete upozorněni v dialogu pro přepínání notací (viz. Obrázek 3).
Grafickou notaci přepnete z hlavního menu ve složce VIEW -> GRAPHIC NOTATION stiskem položky požadované notace. Následně se otevře dialogové okno, ve kterém jsou všechna omezení přepnutí na požadovanou notaci uvedena včetně seznamu objektů, které nesplňují kritéria notace do které přepínáte. Akce, která bude s nevyhovujícími objekty provedena je v popisu přepínání též specifikována.
Obrázek 3 - Dialog pro přepínání
notací
V následujícím popisu budete na příslušné rozdíly tvorby schématu v různých grafických notacích upozorněni.
Pro vytvoření entitního typu existují 2 rovnocenné postupy.
·
Na liště
s tlačítky stisknete tlačítko - vytvoření nového entitního typu (zkráceně
entity). Poté přesunete kurzor na pracovní plochu. Symbol kurzoru se změní na
kříž a v informační ikoně se zobrazí symbol pro přidávání entity. Stiskem
levého tlačítka myši vytvoříte nový entitní typ, jehož levý horní roh je usazen
do místa, kde bylo kliknuto. Nové entitě je přiděleno generické jméno ENTITYxx,
kde xx je
automatické pořadové číslo.
Obrázek 4 -Lokální kontextové menu
pracovní plochy
Položka Add entity
přidá entitní typ do schématu.
Položka Add relationship
přidá vztahový typ do schématu (k dispozici pouze u Chenovy grafické notace).
Po zvolení možnosti Add Entity se kurzor změní na kříž a indikace módu aplikace se změní na mód přidávání entity. Stiskem levého tlačítka myši vytvoříte v místě kurzoru nový entitní typ.
Nový vztah mezi dvěma
entitními typy navážete tak, že u jedné z entit vyvoláte lokální
kontextové menu stiskem pravého tlačítka myši na objektu a vyberete položku Add Relationship to other Entity. Kurzor
se změní na kříž, který přesunete nad entitní typ, který chcete zapojit do
vztahu a stisknete levé tlačítko myši. Vytvoří se vztahový typ s účastmi
k oběma entitním typům. Všechny nové objekty mají generická jména.
V případě, že máme
vztahový typ vytvořen, je možné entitní typ zapojit do vztahu – spojit ho
účastí se vztahovým typem. Vytvoření účasti je možné několika způsoby.
·
Na vztahovém typu vyvoláte stiskem pravého tlačítka myši lokální menu a
vyberete položku Add connection to entity....
Kurzor se změní na kříž a ikona symbolizující mód na přidávání. Kurzor umístíte
nad entitu, ke které chcete účast zapojit a stiskem levého tlačítka myši
vytvoříte účast.
·
Na entitním typu vyvoláte stiskem pravého tlačítka myši lokální menu a
vyberete položku Add connection to relationship....
Kurzor se změní na kříž a ikona symbolizující mód na přidávání. Kurzor umístíte
nad vztahový typ, ke kterému chcete účast připojit a stiskem levého
tlačítka myši účast vytvoříte.
·
Stále funkční způsob přidávání z předchozích verzí je
následující: uchopíte entitní typ pravým tlačítkem myši táhnete se stisknutým pravým tlačítkem nad
požadovaný vztahový typ, dokud se kurzor nezmění na ruku. Poté upustíte entitní
typ na vybraný vztahový typ. V případě, že pracujete v Chenově notaci
se změní kurzor na kříž a stiskem levého tlačítka umístíte integritní omezení
(dále IO) vztahu na plochu, v ostatních notacích se umístí účast rovnou.
Stejně lze postupovat ze strany vztahového typu a upustit ho na entitní typ.
V závislosti na grafické notaci vznikne obdobný fragment schématu, jako jedna varianta z následujícího obrázku (viz. Obrázek 5).
Obrázek 5 - Vztah mezi entitními
typy (nahoře Chenova notace, uprostřed binární a dole UML)
Většina operací, které lze s entitním typem provádět (kromě změny jména), se zobrazí v lokálním kontextovém menu po stisknutí pravého tlačítka myši na entitním typu (viz. Obrázek 6).
Obrázek 6 - Lokální kontextové menu
entitního typu
Jméno entitního typu se mění na panelu vlastností umístěném v pravé části aplikace, stejně jako jména všech ostatních objektů. Do položky name napíšete jméno a potvrdíte klávesou „ENTER“, „TAB“ nebo stiskem levého tlačítka myši na další položku v panelu.
Přidání atributu se provádí volbou Add atribute v lokálním kontextovém menu. V případě práce v Chenově grafické notaci se kurzor změní v kříž a stisknutím levého tlačítka myši na pracovní ploše atribut na příslušné místo vložíte. V ostatních notacích se atribut automaticky vloží na poslední místo do příslušného entitního typu.
Postup popsán v kapitole 3.3.
Podtyp z entitního typu vytvoříte jedním ze dvou způsobů:
· pokud entitní typ není již podtypem jiného entitního typu, použijete v lokálním menu položku Set as ISA child of… , po jejím zvolení se kurzor přepne na kříž. Kurzor přesunete nad entitní typ, který se má stát nadtypem a stisknete levé tlačítko myši, čímž se entitní typ zařadí do hierarchie objektů.
· uchopíte entitní typ, který se má stát podtypem, pravým tlačítkem myši a táhnete jej nad entitní typ, který se má stát jeho přímým nadtypem. Po změně kurzoru na ruku upustíte tažený entitní typ na nadtyp. Entitní typ je zařazen do hierarchie objektů.
Příklad ISA hierarchie naleznete na následujícím obrázku (viz. Obrázek 7).
Obrázek 7 - Příklad ISA hierarchie;
Chenova notace vlevo, binární vpravo
V případě, že je entitní typ nadtypem,
objeví se v jeho lokálním menu navíc volba Remove ISA childs. V případě, že je podtypem, objeví se volba Reset ISA
parent. A jestliže je
nadtypem i podtypem zároveň, bude mít v lokálním menu položky obě (viz. Obrázek 7).
Obrázek 8 - Položky lokálního menu pro rozbití ISA vztahu
Pokud chcete odstranit z entitního nadtypu všechny podtypy,
stisknete volbu Remove ISA child. Pokud chcete entitní podtyp odstranit
z ISA hierarchie, stiskněte volbu Reset ISA parent.
V obou případech odebrané entitní typy „odskočí“ doprava, takže je
na první pohled patrné, které entitní typy byly odebrány.
Entitní typ lze dekomponovat na dva ve dvou krocích.
Obrázek 9 - Příklad identifikační
závislosti (slabá entita vpravo)
Dekomponovat entitní typ lze i s využitím vztahového typu a to opět ve 2 krocích.
1. Zvolením volby Add relationship to new entity…
se změní kurzor na kříž a stiskem levého tlačítka myši umístíte na plochu nový
entitní typ a vztahový typ. Do vztahového typu jsou původní a nový entitní typ
zapojeny s účastí (1,1) – unární a povinná účast (příklad viz. Obrázek 10).
2. Atributy si můžete přenést z původní
entity na novou a zpět. Stisknete a držíte pravé tlačítko myši na atributu a
přesunete jej nad entitní typ, ke kterému jej chcete zapojit, a atribut zde
upustíte.
Obrázek 10 - Použití Add
relationship to new entity
Pro slévání entitních typů zvolíte položku Compose entity with z lokálního menu jednoho z entitních typů. Poté vyberete entitní typ se kterým chcete entitní typ slít. Při přesunu nad jiným entitním typem se kurzor změní na ruku a po stisknutí levého tlačítka myši dojde k přilití tohoto entitního typu do entitního typu, ze kterého byla akce vyvolána. Přepojí se všechny jeho atributy, účasti ve vztahu, identifikační závislosti a ISA podtypy. Následné konflikty lze řešit v dialogovém okně kontroly konzistence schématu.
Po stisku položky Readjust size z lokálního menu se velikost entity zmenší na minimální přizpůsobenou elementům uvnitř entitního typu (jménu, ISA podtypům, v binární notaci atributům, v UML notaci ještě jejich datovým typům).
U každého entitního typu můžete zadat další omezení. V lokálním menu entitního typu stisknete položku Edit constraints a otevře se dialogové okno – textový editor (viz. Obrázek 11), do kterého můžete zapsat omezení.
Obrázek 11 - Editor pro vytvoření a
editaci Constraints
Tyto omezení jsou zobrazitelná z definice grafických notací pouze v UML notaci. Příklad entitního typu s vyplněným Constraints naleznete na následujícím obrázku (viz. Obrázek 12).
Obrázek 12 - Entitní typ v UML
notaci s Constraints
Smazání entitního typu se provede volbou položky Delete z lokálního menu nebo označením objektu stiskem levého tlačítka myši na objektu a stiskem klávesy „Delete“. Spolu s entitním typem se též odstraní všechny identifikační závislosti, všechny podtypy odstraňovaného entitního typu a všechny účasti tohoto entitního typu i případných podtypů ve vztazích.
Primární klíč je nastavován pomocí příslušné volby u atributu, který do primárního klíče chcete zapojit. Postup je popsán v kapitole 3.6.3.
Identifikační závislost se vytvoří pomocí navázání identifikačního spojení mezi dva entitní typy. Pravým tlačítkem myši vyvoláte lokální kontextové menu budoucího identifikačně závislého entitního typu, vyberete položku Add identification dependency on… a kurzor se změní na kříž. Kurzor přesunete nad entitní typ, který se má stát identifikačním vlastníkem, stisknete levé tlačítko myši a vytvoří se vztah.
Příklad identifikační závislosti je zobrazen na následujícím obrázku (viz Obrázek 13).
Obrázek 13 - Příklad identifikační
závislosti
Identifikační závislost se zruší z lokálního menu identifikační závislosti volbou její jediné položky Delete nebo stiskem klávesy „Delete“ po jejím označení.
Veškeré činnosti spojené se vztahovým typem (kromě změny jména) naleznete v jeho lokálním kontextovém menu (viz. Obrázek 14), které vyvoláte stiskem pravého tlačítka myši nad zvoleným vztahovým typem.
Obrázek 14 - Lokální kontextové menu
vztahového typu
Jméno vztahového typu se mění na panelu vlastností umístěném v pravé části aplikace, stejně jako jména všech ostatních objektů. Do položky name napíšete jméno a potvrdíte klávesou „ENTER“, „TAB“ nebo stiskem levého tlačítka myši na další položku v panelu.
Atributy ke vztahovým typům lze přidat pouze v Chenově notaci (UML notace podporuje atributy u vztahových typů sdružené v Association Class, ale ta není v ERM v4.0 naimplementována).
Přidání
atributu ke vztahovému typu se provede volbou položky Add atribute
v lokálním menu. Kurzor se změní na kříž a indikovaný mód aplikace se
změní na přidávání atributu. Stiskem levého tlačítka myši na zvoleném místě
umístíte nový atribut na plochu.
Příklad atributu připojeného do vztahového
typu je uveden na následujícím obrázku (viz. Obrázek
15).
Obrázek 15 - Vztahový typ s
atributem
Dekompozici pomocí slabého entitního typu provedete volbou položky Decompose v lokálním menu vztahového typu. Vztahový typ je nahrazen slabým entitním typem, který je identifikačně závislý na všech entitních typech původně zapojených do vztahu (spojených s původním vztahovým typem).
Vztah před a po dekompozici je zobrazen na následujících 2 obrázcích (viz. Obrázek 16 a Obrázek 17).
Obrázek 16 - Dekompozice pomocí
slabého entitního typu - před dekompozicí
Obrázek 17 - Dekompozice pomocí
slabého entitního typu - po dekompozici
Pro slévání vztahových typů v Chenově notaci zvolte položku Compose with z lokálního menu vztahového typu. Při přesunu kurzoru přes jiný vztahový typ dojde ke změně symbolu kurzoru na ruku a stisknete-li levé tlačítko myši nad vztahovým typem, dojde k přilití tohoto vztahového typu. Přepojí se všechny jeho atributy a účasti. Následně vzniklé konflikty lze řešit v dialogovém okně kontroly konzistence schématu.
V binární a UML notaci jsou povoleny pouze binární vztahy a proto v nich není umožněno slévání vztahových typů.
Smazání vztahového typu provedete volbou položky Delete z lokálního menu nebo označením objektu stiskem levého tlačítka myši na objektu a stiskem klávesy „Delete“.
Spolu se vztahovým typem se odstraní i všechny účasti entitních typů ve vztahu, který tento vztahový typ reprezentuje.
Většina operací je prováděna z lokálního kontextového menu atributu a změna vlastností je prováděna z panelu vlastností (viz. Obrázek 18). Počet položek v menu atributu závisí na vlastníkovi (entitní nebo vztahový typ), zvolené grafické notaci a vlastnostech atributu.
¨
Obrázek 18 - Lokální kontextové menu
a panel vlastností atributu
Nový atribut je vytvářen volbou položky Add atribute u entitního typu, ke kterému má být vytvořen. Ke vztahovému typu lze stejným způsobem atribut vytvořit, ale pouze v Chenově grafické notaci.
Jméno atributu se mění na panelu vlastností umístěném v pravé části aplikace, stejně jako jména všech ostatních objektů. Do položky name napíšete jméno a potvrdíte klávesou „ENTER“, „TAB“ nebo stiskem levého tlačítka myši na další položky v panelu.
Přidání nebo odebrání atributu z primárního klíče lze provést 2 rovnocennými způsoby.
· V lokálním menu, pokud atribut není součástí primárního klíče, zvolíte položku Set primary. V případě, že atribut je součástí primárního klíče, můžete využít položku Reset primary pro odebrání z primárního klíče.
· V panelu vlastností přepnete vlastnost Primary.
S přidáním atributu do primárního klíče se automaticky nastaví vlastnosti Unique a Mandatory na „Yes“. Při odebrání atributu z primárního klíče se spolu s vlastností Primary změní na „No“ i vlastnost Unique. Vlastnost Mandatory zůstává implicitně na „Yes“.
Pokud je vlastníkem entitní podtyp nebo vztahový typ a pokusíte se v panelu vlastností nastavit vlastnost Primary na „Yes“, budete upozorněni, že to není možné, protože tyto konstrukty nemohou mít primární klíč.
Přepínání vlastnosti Unique je stejné jako přidávání/odebírání z primárního klíče, viz. kapitola 3.6.3. (buď vyberete příslušnou volbu z lokálního menu nebo přepnete vlastnost Unique v panelu vlastností).
Přepínání této vlastnosti je dostupné, pouze tehdy, je-li vlastníkem entitní typ.
Nepovinný atribut je v Chenově notaci zobrazen jako prázdný kruh, povinný jako kruh plný. V binární notaci je povinnost vyznačena symbolem „*“. Pokud je atribut povinný, má v menu volbu Optional a jejím zvolením se stane nepovinným. Pokud je nepovinný, potom má v menu volbu Mandatory a jejím zvolením se stane povinným.
Každému atributu lze určit datový typ Data type stiskem levého tlačítka myši na zadávacím poli v panelu vlastností. Zobrazí se dialog, kterým vyberete datový typ a upřesníte jeho vlastnosti (délku, přesnost), viz Obrázek 19.
Obrázek 19 - Dialog pro výběr
datového typu
V případě zvolení volby User defined lze vybrat konkrétní uživatelem nadefinovaný typ z nabídky, která se objeví (viz. Obrázek 20).
Obrázek 20 - Dialog pro výběr
datového typu - výběr uživatelsky definovaného
typu
Změny datového typu jsou aplikovány ihned. Dialog zavřete stisknutím křížku v pravém horním rohu okna.
V binární a UML grafické notaci jsou atributy drženy uvnitř entitního typu. Pokud chcete změnit pořadí atributu, musíte vyvolat lokální menu stisknutím pravého tlačítka myši a vybrat položku pro příslušný posun pořadí atributu.
Význam položek lokálního menu:
-
přesune atribut na první místo
-
posune atribut o jedno místo nahoru
-
posune atribut o jedno místo dolu
-
přesune atribut na poslední místo
Pozn.: V případě, že pracujete v binární notaci, jsou zvlášť seskupeny atributy primárního klíče a zvlášť ostatní. Mezi těmito skupinami nelze navzájem atributy pomocí těchto tlačítek přesouvat. Například přesunete-li atribut, který není součástí primárního klíče nahoru, posune se nejvýše na první místo za atributy primárního klíče.
Pro přesunutí atributu k jinému entitnímu typu chytnete atribut pravým tlačítkem myši a táhnete jej nad nového vlastníka, kde ho upustíte. Atribut je odpojen od původního entitního nebo vztahového typu a přidán k novému vlastníkovi. Takto lze přenášet atributy mezi entitními i vztahovými typy i kombinovaně (pokud notace dovoluje, aby vztahové typy vlastnily atributy).
Atribut odstraníte označením a stiskem klávesy „Delete“ nebo volbou položky Delete z lokálního kontextového menu.
Operace s účastmi jsou prováděny z lokálního kontextového menu atributu a změna vlastností je prováděna z panelu vlastností. Lokální menu účasti vyvoláte stisknutím pravého tlačítka myši na jménu účasti. Lokální kontextové menu a panel vlastností účasti jsou znázorněny na následujícím obrázku (viz. Obrázek 21).
Obrázek 21 - Lokální kontextové menu
a panel vlastností účasti
V případě, že máte
vytvořen nějaký vztahový a entitní typ, je možné entitní typ zapojit do vztahu
(spojit ho účastí se vztahovým typem), pokud není překročen maximální počet
účastí vztahového typu vzhledem k aktuální grafické notaci.
Vytvoření účasti je možné
několika způsoby.
·
Na vztahovém typu vyvoláte stiskem pravého tlačítka myši lokální menu a
vyberete položku Add connection to entity....
Kurzor se změní na kříž a ikona symbolizující mód na přidávání. Kurzor umístíte
nad entitu, ke které chcete účast zapojit a stisknete levé tlačítko myši.
·
Stejně lze postupovat ze strany entitního typu. Vyberete
z lokálního menu entity položku Add
connection to relationship a kliknete na vztah, ke kterému chcete účast
připojit.
Pokud je účast entitního typu nepovinná (0,x), potom se v lokálním menu objeví volba Mandatory, pomocí které je možné přepnout účast na povinnou. Pokud je účast povinná (1,x), potom se v lokálním menu zobrazí volba Optional, pomocí které lze účast přepnout na nepovinnou.
Podobně dvoustavově se nastavuje i kardinalita účasti. Pokud je účast n-ární, potom je v menu volba Unary cardinality, pokud je unární, je v menu volba N-ary cardinality.
Jedině účast nabízí volbu Customize pro vyvolání dialogů pro nastavení vlastností účasti. Po stisknutí tlačítka se zobrazí dialog, který umožňuje nastavit vlastnosti účasti (viz Obrázek 22).
Obrázek 22 - Customize dialog pro
účast
Dialog obsahuje jméno účasti Role, povinnost účasti Mandatory, přilepování entitní relace ke vztahové relaci Merge a kardinalitu Cardinality (unární nebo n-ární).
Za dialogovým oknem stojí logika, která nabízí přilepování tehdy, je-li to doporučované a naopak nenabízí tehdy, když to není možné, nebo nedoporučované. Pokud uživatel požaduje/nepožaduje přilepování, musí tuto volbu manuálně přepnout.
Textová položka se v dialogu po zadání potvrdí stiskem klávesy
„Enter“, ostatní vlastnosti jsou nastavovány okamžitě a nevyžadují žádné
potvrzení.
Volbou Delete nebo stiskem klávesy „Delete“ smažete účast entitního typu ve vztahu. Entitní typ i vztahový typ zůstávají nadále ve schématu.
Pro načtení a uložení schématu jsou určena tlačítka Open a Save v záložce menu File a na liště hlavního okna aplikace. Standardní přípona souborů se schématy je .xml.
Nové schéma vytvoříte stiskem tlačítka New z menu nebo lišty.
Po stisku tlačítka Print v hlavním menu nebo na liště hlavního okna se zobrazí dialog (viz. Obrázek 23), pomocí kterého vyberete způsob tisku - na tiskárnu nebo do souboru. Tiskem do souboru se rozumí uložení vizuální podoby schématu do rastrového obrázku typu BMP.
Obrázek 23 - Dialog pro výběr
způsobu tisku
·
tlačítko Image slouží
pro tisk do souboru
·
tlačítko Print
spustí tisk na tiskárnu
Po zvolení tisku do souboru (formát BMP) se zobrazí dialog, který umožňuje uživateli nastavit parametry ukládaného souboru (viz. Obrázek 24).
Obrázek 24 - Dialog s náhledem
tisku do souboru
Na levé straně dialogového okna je zobrazen náhled na výsledný obrázek. Každá stránka je reprezentovaná modrým obdélníkem a bude uložena v jednom souboru (nastavení uložení schématu v osmi souborech viz. Obrázek 24).
Prvním krokem, který musíte učinit, je volba rozlišení výsledné bitmapy. Stiskem tlačítka Image resolution se zobrazí okno, kde je možné nastavit rozlišení ve svislém (Y) a podélném (X) směru (viz. Obrázek 25).
Obrázek 25 - Dialog pro výběr
rozlišení
Dále je třeba nastavit požadované rozlišení, například X:640 a Y:480. Pro zrušení nastavení slouží tlačítko Cancel, pro potvrzení tlačítko OK. Po potvrzení se změní počet stránek, na které se obrázek vytiskne (viz. Obrázek 26).
Obrázek 26 - Dialog s náhledem tisku
do souboru – zvětšeno rozlišení obrázku
Nyní můžete zvolit, jakou
část stránky bude obrázek zabírat. Lze zvolit položku FitPage, která zajistí, že se
celý obrázek vejde na jednu stránku. Můžete také zvolit vlastní měřítko volbou
položky Custom zoom
a určit toto měřítko číslem Zoom [%]. Čím větší bude zadané číslo, tím větší bude
obrázek.
Tisk zahájíte tlačítkem Close (print). Nabídne se Vám dialog pro určení jména souboru. Pokud byl nastaven větší počet stránek než jedna, bude každá stránka uložena do samostatného souboru pod jménem, které jste určili, ale s pořadovým číslem, které jednotlivé soubory odlišuje. Tisk zrušíte stiskem křížku v záhlaví okna.
Po volbě tisku na tiskárnu se zobrazí standardní dialog s připojenými tiskárnami. Po výběru tiskárny a potvrzení tlačítkem OK se zobrazí podobný dialog, jako v případě tisku do souboru (viz. Obrázek 27). Při této formě tisku nelze změnit rozlišení, protože je určeno vlastnostmi zvolené tiskárny.
Obrázek 27 - Dialog s náhledem tisku
na tiskárnu
Opět můžeme určit FitPage nebo Custom zoom. Nakonec schéma vytiskneme tlačítkem Close (print). Pozor, tisk se v této fázi již nedá korektně zrušit.
Po stisknutí tlačítka pro vstup do modulu editace datových typů,
které se nachází na tlačítkové liště hlavního okna, se objeví dialog (viz Obrázek 28). Zde je možno definovat vlastní datové typy
postavené nad zabudovanými typy (Integer, Char, Varchar2 atd.) nebo nad již
existujícími typy uživatelem nadefinovanými.
Obrázek 28 - Dialog pro vytváření a
editaci uživatelsky definovaných datových typů
Pro tvorbu nového datového typu musíte nejprve zvolit možnost Add a new type. Do textového pole New type name zadáte jméno nově vytvářeného typu, poté zvolíte, případně ještě upřesníte datový typ, nad nímž bude tento nově vytvářený datový typ postaven, a nakonec stisknete tlačítko OK. Obrázek 29 ilustruje vytvoření typu muj_varchar2 postaveného nad typem Varchar2(1000).
Obrázek 29 - Tvorba nového
uživatelsky definovaného datového typu
Následuje popis tvorby netriviálních uživatelem definovaných datových typů (typy Object, Varray a Nested table).
Po zvolení položky Object v sekci Data type přibude do okna sekce Items in Object, která představuje seznam všech položek v tomto Objectu obsažených. Na počátku je tento seznam prázdný (viz. Obrázek 30).
Obrázek 30 - Tvorba datového typu Object
Do seznamu položek lze přidat novou položku dvojitým kliknutím na nápis <new>. Následně se zobrazí okno, kde je možno zvolit jméno a datový typ přidávané položky (viz. Obrázek 31). Po stisku tlačítka OK se položka přidá do seznamu. Pokud stisknete křížek v pravém horním rohu okna, okno se zavře a položka se do seznamu nepřidá.
Obrázek 31 - Změna položky v datovém
typu Object
Položku lze měnit tak, že na ní dvakrát kliknete myší. Tato akce otevře stejné okno, jako při přidávání položky (viz. Obrázek 31). V tomto okně lze měnit jak název, tak typ této položky. Stisk tlačítka OK změny potvrdí, stisk křížku v pravém horním rohu okna změny stornuje.
Položku lze smazat tak, že na ní najedete kurzorem a poté stisknete klávesu „Delete“.
Po zvolení položky Varray v sekci Data type se v pravé části okna objeví pole Length pro určení maximálního počtu prvků, které může tento typ Varray obsahovat, a tlačítko s datovým typem těchto prvků (viz. Obrázek 32).
Obrázek 32 - Tvorba datového typu
Varray
Počet prvků lze měnit snadno pomocí šipek, nebo přímým vepsáním číselné hodnoty do pole a potvrzením klávesou „ENTER“. Typ prvků lze změnit kliknutím na tlačítko s nadpisem Type of items a s názvem aktuálního typu prvků (zde Integer). To způsobí vyvolání okna, v němž lze nastavit nový datový typ prvků (viz. Obrázek 33).
Obrázek 33- Změna datového typu
prvků v typu Varray
Změnu typu není třeba potvrzovat, promítne se automaticky. O změně nás informuje změna popisu tlačítka v hlavním okně modulu tvorby a editace datových typů. Z nabídky datových typů prvků jsou automaticky odstraněny všechny typy Nested table a Varray a rovněž typy Object obsahující položky typu Nested table nebo Varray.
Po zvolení položky Nested table v sekci Data type se v pravé části okna objeví tlačítko s datovým typem prvků, které budou obsaženy v tomto typu.
Obrázek 34 - Tvorba datového typu Nested table
Typ prvků lze změnit kliknutím na tlačítko s nadpisem Type of items a s názvem aktuálního typu prvků (zde Integer). To způsobí vyvolání okna, v němž lze nastavit nový datový typ prvků (viz. Obrázek 33).
Změnu typu není třeba potvrzovat, promítne se automaticky. O změně nás informuje změna popisu tlačítka v hlavním okně modulu tvorby a editace datových typů. Z nabídky datových typů prvků jsou automaticky odstraněny všechny typy Nested table a Varray a rovněž typy Object obsahující položky typu Nested table nebo Varray.
Pokud chcete editovat existující typ, zvolíte nejprve možnost Edit / delete existing type. Tím se zpřístupní nabídka již vytvořených typů, ze které si vyberete ten, jehož vlastnosti chcete měnit. Po jeho zvolení se v pravé části okna zobrazí nastavení vybraného typu. Nyní lze zvolený typ měnit.
POZOR!!!
Veškeré provedené změny jsou aplikovány okamžitě a tudíž jsou nevratné!!!
Pro smazání typu zvolíte nejprve možnost Edit / delete existing type. Tím se zpřístupní nabídka již vytvořených typů, ze které si vyberete ten, který chcete smazat. Poté stisknete tlačítko „Delete“.
Pokud byl právě smazaný typ použit jako prvek jiného uživatelem definovaného datového typu, bude v něm nahrazen typem Integer. Na tuto skutečnost jste upozorněni zprávou (viz. Obrázek 35).
Obrázek 35 - Dialog s upozorněním na použití mazaného typu
Stisk tlačítka OK smazání potvrdí, stisk tlačítka CANCEL smazání zruší. Po zaškrtnutí políčka s nápisem Do not show this warning next time se toto varování příště již nebude zobrazovat.
· Při pokusu o uložení nového typu již existujícího jména aplikace tento typ uložit nedovolí a reaguje hlášením: ERROR, data type name duplicity!!
· Jeden typ Object nesmí mít více položek stejného jména. Při porušení tohoto pravidla aplikace nedovolí tuto položku vložit a reaguje hlášením: ERROR, item name duplicity in this object!!
· Ve jméně typu, resp. položky obsažené v typu Object se nesmí objevit jiné znaky než malá a velká písmena (bez diakritiky) a podtržítko. Pokud se tak stane, aplikace opět nedovolí typ uložit, resp. položku do typu Object přidat, a reaguje hláškou: ERROR, illegal character ‘ž’ in item name!! (hlášení pro znak ‘ž‘)
Některé podmínky konzistence konceptuálního schématu jsou hlídány v průběhu vytváření, některé teprve při požadavku transformace nebo na explicitní žádost.
V průběhu vytváření schématu je hlídána acykličnost grafu závislostí, povinnost atributů v primárním klíči a primární klíč jako takový. V případě chyby není požadovaná akce provedena a zobrazí se dialog s popisem chyby.
·
Entity EntityName have primary key
hlásí, když je entitní typ vkládán do hierarchie objektů jako
podtyp a přitom má určen primární klíč
·
After
adding entity EntityName to list of sons
of entity EntityName would appear cycleName cycle
hlásí, když by operací vznikl cyklus v závislostech
·
ISA child EntityName cannot have primary key
hlásí, když entitní typ je podtypem a tudíž mu nelze určit
primární klíč
·
Atribute AtributeName cannot be set optional
or
not unique while being part of primary key
hlásí, když je atribut součástí primárního klíče a přitom se ho
uživatel pokouší nastavit jako nepovinný nebo zrušit vlastnost Unique.
·
Entity EntityName is strong addicted
hlásí, když je odebírán nebo nastavován na jiný primární klíč
slabého entitního typu. Taková změna není dovolena
·
Relationship
RelationName cannot have primary key
hlásí, když by se někdo snažil nastavit atribut patřící k vztahovému typu
jako člena primárního klíče
·
Relationship
RelationName can't have more than 2 connections to entities
hlásí, když je přidávána třetí účast do vztahu v binární nebo UML notaci
Ostatní hlášené chyby jsou vnitřními chybami aplikace a v takovém případě není dobré pokračovat v práci, protože je vnitřní reprezentace schématu v nekonzistentním stavu. Tyto chyby mohou sloužit pro odhalování implementačních chyb v aplikaci.
Pro kompletní kontrolu
aktuálního schématu slouží tlačítko pro
kontrolu na liště hlavního okna aplikace. V tomto
případě platí, pokud není nalezena chyba, je zobrazený seznam prázdný a schéma
je naprosto v pořádku připravené pro transformaci. Pokud byla nalezena
chyba (nebo více chyb), potom jsou tyto chyby zobrazeny ve speciálním dialogovém
okně.
Obrázek 36 - Dialog s konflikty ve schématu
Levá část dialogového okna má stromovou strukturu. První úroveň stromu reprezentuje seznam všech chyb, druhá úroveň jednotlivé nalezené chyby a třetí úroveň je vždy seznam objektů, kterých se chyba týká. Příklad takové prezentace seznamu chyb naleznete na předchozím obrázku (viz. Obrázek 36).
V pravé části dialogového okna můžete provádět různé operace v závislosti na vybrané položce z levé části. Velikost obou částí můžete měnit tažením za středový panel. Tlačítkem Refresh aktualizujete seznam chyb.
Popis chybových hlášení:
·
Equal names of atributes in the scope of their owner
Atributy nesmí mít stejné jméno v rámci svého vlastníka.
·
Bad first character (‘char') in object's name
Nepovolený počáteční znak ve jménu objektu.
·
Bad characters (list of chars) in object's name
Nepovolené znaky ve jménu objektu.
·
Cannot be both strong addicted and ISA son
Entitní typ nesmí být slabý a zároveň podtyp.
·
Equal names of cardinalities
Účasti nesmí mít stejná jména.
·
Equal names of constructs
Entitní a vztahové typy nesmí mít stejná jména.
·
No atribute
Entitní typ nemá žádné atributy.
·
Relationship should be connected to at least 2
entities
Vztahový typ není připojen k dostatečnému počtu entitních typů, minimum
jsou 2 účasti.
·
No name
Objekt nemá jméno.
·
Subtype in ISA hierarchy may not have a primary key
Podtyp nesmí mít určen primární klíč.
·
No primary key
Entitní typ nemá určen primární klíč.
·
No atribute in unique key
Skupina unikátního klíče je prázdná.
·
Equal semantics of unique keys
Unikátní klíče definují stejnou skupinu atributů.
·
Unique key atributes cannot be a subset of primary
key atributes
Skupina unikátního klíče nesmí být podmnožinou skupiny atributů primárního
klíče.
·
Equal names of unique keys
Unikátní klíče nesmí mít stejné jméno.
·
Atribute of NESTED TABLE,
VARRAY or OBJECT data type cannot be in PRIMARY KEY
V primárním klíči nesmí být žádný atribut typu NESTED TABLE, VARRAY ani OBJECT.
·
Atribute of NESTED TABLE,
VARRAY or OBJECT data type cannot be in UNIQUE KEY
V unikátním klíči nesmí být žádný atribut typu NESTED TABLE, VARRAY ani OBJECT.
·
Atribute of NESTED TABLE
data type cannot be set NOT NULL
Atribut typu NESTED TABLE nesmí být zvolen jako povinný.
·
Datatype <type> is not
defined!!
Atribut má zvolen jako svůj datový typ uživatelem definovaný typ jménem
<type>, ale tento typ již neexistuje (pravděpodobně byl smazán).
Stromová reprezentace nabízí inteligentní navigaci na ploše. Vyberete-li levým tlačítkem myši nalezenou chybu, na ploše se vyberou všechny objekty, které jsou s chybou svázány nebo které chybu způsobily. Můžete vybrat také pouze jeden objekt a to tím, že vyberete ve stromu chyb uzel, který objektu odpovídá (viz. Obrázek 37).
Obrázek 37 - Vazba mezi dialogem chyb
a pracovní plochou
Nejprve jste vyzváni k výběru přilévaného souboru. Pokud není schéma v tomto souboru konzistentní nebo se liší grafické notace obou schémat, program slévání nepovolí.
Po vložení
nového schématu do volného místa na pracovní ploše se zobrazí okno s konflikty
vzniklými tímto slitím (příklad viz. Obrázek
38). V levé části jsou zobrazeny tyto konflikty stejně
jako při kontrole konzistence ve stromové struktuře a se stejnou funkčností. V
pravé části okna můžete provádět operace se zvoleným konfliktem z levé části.
Pokud vyberete kořen ze stromu chyb (
Obrázek 38 - Dialog konfliktů -
nastavení prefixu pro přilévané konfliktní objekty
Hvězdičkou jsou označeny objekty z přilévaného schématu.
Obrázek 39 - Dialog konfliktů -
detail konfliktu dvou entitních typů
Po výběru konkrétní entity nebo vztahu máte následující nabídku možností (viz. Obrázek 39). Individuální přejmenování konstruktu (políčko Rename) - u přilévaných objektů je automaticky přednastavena zadaná předpona ke jménu. V seznamu Compose si můžete vybrat, se kterým konstruktem chcete slévat. Tlačítko Accept provede nastavené změny. Pokud je v seznamu vybrána položka none, dojde pouze k individuálnímu přejmenování objektu, pokud je vybrán konstrukt dojde k jeho přilití – na předchozím obrázku (viz. Obrázek 39) se k entitě Entity1 z přilévaného schématu přilije entita Entity1 z původního schématu. Atributy a účasti ve vztahu můžeme pouze přejmenovat tlačítkem Accept nebo odstranit tlačítkem Remove.
Všechny změny se okamžitě promítají do seznamu konfliktů stejně jako u seznamu chyb změnou ikony. Tlačítko Refresh slouží k opětovné kontrole konfliktů a tím i k odstranění vyřešených konfliktů ze seznamu.
V případě, že je konceptuální schéma
konzistentní, tedy bez chyb, je možné generovat příkazovou dávku SQL. Požadavek
na generování se zadá stiskem tlačítka na liště hlavního okna aplikace.
Stisk tlačítka spustí nejdříve kontrolu konzistence schématu. Pokud kontrola najde chyby, aplikace tyto chyby zobrazí a dál nepokračuje. Pokud chyby ve schématu nejsou, zobrazí se dialog, kterým je možné ovlivnit výslednou příkazovou dávku SQL (viz. Obrázek 40).
Obrázek 40 - Dialog s volbami pro
generování SQL
Dialog Generate options obsahuje tyto položky:
·
Generate drop clauses
zaškrtnutí způsobí, že se budou generovat příkazy na odstranění tabulek a
uživatelem definovaných datových typů z databáze, nezaškrtnutí generování
těchto příkazů potlačí.
·
Shorten prefixes of atributes
zaškrtnutí značí, že se mají předpony přidávané ke jménům atributů maximálně
zkracovat (ale tak, aby předpony byly stále jedinečné) – to je výhodné proto,
že jména v databázovém systému mají většinou omezenou maximální délku.
·
User merging
zaškrtnutí znamená, že se má přilepovat tam, kde to uživatel označil a nemá
tam, kde to neoznačil. Nezaškrtnutí znamená, že bude přilepováno všude, kde je
účast (1,1) a nikde jinde bez ohledu na uživatelské nastavení.
Stiskem
tlačítka Cancel
generování přerušíte. Stiskem tlačítka OK se vytvoří výsledná
příkazová dávka v SQL.
Výsledek je zobrazen v dialogovém okně SQL commands (viz. Obrázek 41).
Obrázek 41 - Zobrazení výsledné
příkazové dávky SQL
Okno je rozděleno na dvě části, v levé části je reprezentace SQL pomocí stromu, v pravé části potom samotné fragmenty SQL.
První úroveň stromu má jediný uzel SQL commands in the schema, který je zástupcem celé dávky, ve druhé úrovni jsou jednotlivé příkazy SQL, třetí úroveň tvoří řádky v rámci příkazů (tedy definice sloupců, atributů typu Object, unikátních klíčů, primárních klíčů, cizích klíčů a integritních omezení). Jediný element ve třetí úrovni se dále větví, a tím je integritní omezení. Stiskem levého tlačítka myši na uzlu ve stromu se zobrazí příslušný fragment SQL v pravé části okna.
Okno je možné zavřít tlačítkem Close, nebo lze celou dávku SQL uložit pomocí stisku tlačítka Save SQL, popř. poslat přímo databázovému stroji tlačítkem Send. Jméno databáze a přihlašovací informace se nastavují v okně nastavení programu. Tlačítkem View log je zobrazen protokol o spojení s databází.
POZOR!!
Knihovna používaná aplikací k přímému spojení s databází nepodporuje vytváření uživatelsky definovaných datových typů. Pokud je chcete ve schématu použít, musíte příkazovou dávku SQL uložit a následně ručně spustit v prostředí SQL Plus.
V ERM v4.0 došlo k zásadní změně nastavování programu. Všechny nastavení lze provést v dialogovém okně OPTIONS, které vyvoláte z hlavního menu ve složce Settings. Dialogové okno s nastavením obsahuje záložky, ve kterých jsou tématicky seskupeny jednotlivé volby.
Dialog vyvoláte z hlavního menu kliknutím na složku Settings a poté na položku Options. V horní části naleznete 3 záložky s tématicky seskupeným nastavením, které se zobrazují ve střední části. Ve spodní části dialogu jsou pak tlačítka:
OK kterým potvrdíte změny, které jste v nastavení udělali; změny se okamžitě uloží do konfiguračního souboru a dialog se zavře.
APPLY kterým uložíte do konfiguračního souboru provedené změny, ale dialog zůstane otevřen.
CANCEL kterým zrušíte všechny změny v nastavení a dialog zavřete.
V této záložce jsou všechna nastavení týkající se globálních parametrů nebo zobrazování v programu (viz. Obrázek 42).
Obrázek 42 - Dialog nastavení
aplikace - záložka General
Default notation:
Touto volbou nastavujete grafickou notaci, která bude nastavena po spuštění aplikace a na kterou se aplikace automaticky přepne při klinutí na tlačítko NEW – vytvoření nového schématu.
Encoding:
Slouží pro nastavení položky Encoding v souboru, do kterého ukládáte vytvořené schéma.
POZOR, zvolené kódování při ukládání schématu je dáno operačním systémem. Položka Encoding v uloženém schématu pouze říká, jaké kódování má použít aplikace při načítání schématu ze souboru.
Display „pk“ symbol in UML notation:
Tato
volba slouží pro zobrazení/potlačení symbolu „pk“ před atributem, který je
součástí primárního klíče v UML grafické notaci. V UML není
definováno žádné označení primárního klíče. Pro lepší přehled o primárních
klíčích je v ERM možnost zapnout zobrazení symbolu upozorňující na
skutečnost, že daný atribut je součástí primárního klíče.
Display 0..N and 1..1 cardinality in UML as:
V UML notaci je možné zobrazovat zkráceně nepovinné N-ární a povinné unární vztahy. Proto je v nastavení volba zkráceného nebo plného zobrazení.
V této záložce si můžete nastavit parametry pro přímé spojení aplikace s databází (viz. Obrázek 43).
Obrázek 43 - Dialog nastavení
aplikace - záložka Database Connection
Pole Driver:
Obsahuje databázový ovladač. Ve škole se pro připojení k Oracle použije oracle.jdbc.driver.OracleDriver.
Pole URL:
Zde je umístěna adresa databáze. Na školních počítačích s Windows NT lze použít jdbc:oracle:oci8:@cs, popř. jdbc:oracle:thin:@cs:1526:oracle.
Poli User:
Zde se zadává jméno uživatele.
Pole Password:
Zde se zadává heslo uživatele, které se ale z bezpečnostních důvodů nezapisuje
do konfiguračního souboru a je nutno ho při každém spuštění ERM vyplnit znovu.
Tlačítko Test connection:
Slouží pro otestování spojení s databází. Při testování se spustí SQL log dialog s výsledkem, zda spojení bylo úspěšné či nikoli.
Tlačítko View log:
Zobrazí
protokol o spojení s databází.
V této záložce si můžete nastavit barvy pozadí, popředí a pozadí objektů a pozadí označených objektů (viz. Obrázek 44).
Obrázek 44 - Dialog nastavení aplikace
- záložka Colors
Změnu barvy provedete stisknutím tlačítka se stávající barvou u příslušné kolonky. Zobrazí se nové okno s barevnou paletou (viz. Obrázek 45), ve které si vyberete barvu novou a výběr potvrdíte tlačítkem OK nebo zrušíte tlačítkem CANCEL.
Obrázek 45 - Dialog pro vybírání
barev
V konfiguračním souboru jsou uloženy informace o nastavení aplikace ERM. Nastavení je ze souboru načítáno vždy při startu aplikace.
Vzhledem k požadavku spouštět vícenásobně jednu aplikaci ze serveru a požadavku na možnost individuálního nastavení každého uživatele, je od verze 4.0 zavedena dvoustupňová hierarchie konfiguračních souborů.
Konfigurační soubor nese vždy název config.erm. Cesta k uživatelskému konfiguračnímu souboru je stejná jako cesta k ukládání schémat a je definována ve spouštěcím dávkovém souboru (se jménem většinou erm.bat) v položce ER_DEFDIR. Tu je NUTNO nastavit na adresář, do kterého máte právo zápisu!
Pokud při startu aplikace nenajde konfigurační soubor v uživatelsky definovaném adresáři položkou ER_DEFDIR, zobrazí se dialog s upozorněním, že konfigurační soubor nebyl v zadané cestě nalezen a načte se konfigurační soubor z adresáře, kam byla aplikace ERM nainstalována a uloží se do uživatelského adresáře.
Pokud by se nenašel konfigurační soubor ani v adresáři, kam byla nainstalována aplikace, pak máte-li právo na zápis, vytvoří se nový konfigurační soubor s defaultními hodnotami do adresáře ERM a poté do uživatelského adresáře. V případě, že právo zápisu nemáte, nepodaří se aplikaci spustit a budete muset požádat někoho, kdo právo zápisu má o vytvoření konfiguračního souboru.
V případě, že budete mít zadanou uživatelskou cestu pro ukládání souborů přímo do adresáře, kde je aplikace nainstalována, bude konfigurační soubor aplikace zároveň Vaším uživatelským souborem. Proto pokud bude program spouštět více uživatelů buďte při nastavování obezřetní, protože toto nastavení se bude kopírovat novým uživatelům do jejich výchozích konfiguračních souborů.
Pro konfigurační soubor byl zvolen formát XML. Tento formát je snadno čitelný a srozumitelný.
Nastavení programu lze provést i přímou editací konfiguračního souboru, avšak tento způsob by měli používat jen pokročilí uživatelé, protože poškozením struktury a hodnot XML souboru lze způsobit nekorektní načtení hodnot nebo dokonce zamezení spuštění aplikace. Pokud by se tak stalo, stačí poškozený konfigurační soubor smazat a při startu aplikace se vytvoří nový defaultní konfigurační soubor.
Strukturu tohoto souboru si ukážeme na příkladu.
<?xml
version="1.0"?>
<!--
ER Modeller version 3.0 configuration file -->
<!DOCTYPE
options [
<!ELEMENT
options (encoding, preferences)>
<!ELEMENT
encoding (#PCDATA)>
<!ELEMENT
preferences (driver, url, user)>
<!ELEMENT
driver (#PCDATA)>
<!ELEMENT url
(#PCDATA)>
<!ELEMENT user
(#PCDATA)>
]>
<options>
<encoding>Windows-1250</encoding>
<!-- posibilities: Windows-1250, ISO-8859-1, ISO-8859-2,
UTF-16, UTF-8 -->
<dbconnection>
<driver>oracle.jdbc.driver.OracleDriver
</driver>
<url>jdbc:oracle:thin:@cs:1526:oracle</url>
<user>OPS$novak</user>
</dbconnection>
<general>
<defnotation>0</defnotation>
<pkshowuml>1</pkshowuml>
<shortencardsuml>1</shortencardsuml>
</general>
<colors>
<objectforeground>
<R>0</R>
<G>0</G>
<B>0</B>
</objectforeground>
<objectbackground>
<R>255</R>
<G>255</G>
<B>255</B>
</objectbackground>
<selectedobjectbackground>
<R>204</R>
<G>204</G>
<B>255</B>
</selectedobjectbackground>
<background>
<R>192</R>
<G>192</G>
<B>192</B>
</background>
</colors>
</options>
Hlavní, kořenový element nese název <options> a obsahuje podelementy:
· <encoding> – kódování znaků
národních abeced
· <dbconnection> – nastavení parametrů pro
přímé spojení aplikace s databází
·
<driver>
– jméno ovladače
·
<url>
– adresa databázového stroje
·
<user>
– přihlašovací jméno uživatele
·
<general>
–nastavení globálních parametrů aplikace
·
<defnotation>
- notace, která se nastaví při vytváření nového schématu
·
<pkshowuml> – příznak, zda se má zobrazovat u
atributu v UML notaci, který je součástí primárního klíče, symbol „pk“
tuto vlastnost vyjadřující
·
<shortencardsuml>
– příznak, zda se v UML notaci budou zobrazovat 0..N a 1..1 účasti ve
vztahu normálně nebo zkráceně
·
<colors> - hodnoty pro barvy pozadí a
popředí a pozadí objektů;
všechny elementy mají podlementy složek barev <R>, <G> a <B>
·
<objectforeground>
- barva popředí předmětů, např. orámování a názvy objektů
·
<objectbackground> – barva pozadí objektů,
např. výplň obdélníku entity
·
<selectedobjectbackground>
– barva pozadí označených objektů
· <background> – barva pozadí pracovní plochy aplikace
POZOR!!
Informace o kódování znaků národních abeced neříká, v jakém kódování bude aplikace ukládat data (názvy atributů, komentáře, atd.). Pouze říká, jak má aplikace uložená data interpretovat. Formát ukládání těchto národních znaků je daný operačním systémem!!
POZOR!!
Vzhledem k přejmenování elementu <preferences> na <dbconnection> nelze použít konfigurační soubor z ERM 3.0 do nové verze!
Tato uživatelská příručka obsahuje veškeré potřebné informace pro uživatele aplikace ER Modeller v4.0, uživatel tedy nemusí hledat informace v textu diplomové práce, která má charakter implementační dokumentace.