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 34).
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.
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.
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í:
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