|
![]() | Zamčená aplikace | ![]() | Aplikace |
Vnitřní formát definičního souboru aplikace není nutno znát, pokud chcete provádět pouze jednoduchý export a import. Existují však případy, kdy může být užitečné zasáhnout do definičního souboru vzniklého při exportu a tak ovlivnit, co a jak se bude importovat: když chcete provést update aplikace (import s nahrazením), potřebujete mít v APL souboru jen ty objekty, které byly změněny (a bez tabulek, aby se nepřepsala data)
Definiční soubor aplikace má podobu textového souboru ve formátu UTF-8 (znaky s diakritikou jsou uložena ve dvou bajtech). Na to je třeba dbát při případné editaci tohoto souboru: obsahuje-li APL soubor diakritiku, musí se uložit ve formátu UTF-8 (např. Notepad od Windows 2000 umožňuje volit formát ukládání).
Každá řádka definičního souboru obsahuje zápis v některém z těchto tvarů:
Application jméno_aplikace X id_aplikace Domain [příznaky] jméno_domény [soubor_s_objektem] [práva] Table [příznaky] jméno_tabulky [soubor_s_objektem] [práva] Data jméno_tabulky [soubor_s_objektem] [práva] Dataprv jméno_tabulky [soubor_s_objektem] [práva] Cursor [příznaky] jméno_dotazu [soubor_s_objektem] [práva] Program [příznaky] jméno_přenosu [soubor_s_objektem] [práva] Drawing [příznaky] jméno_diagramu [soubor_s_objektem] [práva] Graph [příznaky] jméno_pomocného_objektu [soubor_s_objektem] [práva] Proc [příznaky] jméno_procedury [soubor_s_objektem] [práva] Trigger [příznaky] jméno_triggeru [soubor_s_objektem] [práva] Sequen [příznaky] jméno_sekvence [soubor_s_objektem] [práva] Info [příznaky] jméno_fulltextu [soubor_s_objektem] [práva] Form [příznaky] jméno_XML_formuláře [soubor_s_objektem] [práva] StyleSh [příznaky] jméno_stylesheetu [soubor_s_objektem] [práva] Folder [příznaky] jméno_složky Role jméno_role [obsazení_do_role] Icon jméno_zástupce:jméno_složky parametry_pro_602SQL
Řádka začínající Application musí být uvedena jako první a nesmí se opakovat. Udává jméno a identifikaci importované aplikace. Pokud aplikace tohoto jména nebo stejné identifikace již na cílovém počítači existuje, bude uživatel při importu požádán o zadání nového jména a bude vytvořena nová identifikace.
Řádka začínající Role vytvoří v aplikaci roli zadaného jména. Pokud se exportují i práva uživatelů a skupin a jejich obsazení do rolí, na řádce jsou dále vyjmenováni uživatelé a skupiny obsazení do této role. Exportuje-li se aplikace včetně práv a zároveň bez dat v tabulkách, objeví se v APL souboru řádek Dataprv, který popisuje práva k datům této tabulky.
Řádka začínající Folder vytvoří v aplikaci složku zadaného jména. Vlastní informace o náležení do složky je obsažena v komentáři v definicí jednotlivých objektů.
Řádky začínající Domain, Table, Cursor, Program, Drawing, Proc, Trigger, Sequen a Info importují objekt uvedený v druhém sloupci. Řádky začínající Data importují data v interním tvaru do již existující tabulky uvedené ve druhém sloupci (tabulka může být importována na některé z předchozích řádek).
Položky označené znakem tečka (.) budou importovány v zašifrované podobě.
Případné "příznaky" před jménem objektu obsahují určité interní údaje o objektu.
Při exportu aplikace vznikne pro každý objekt aplikace jeden soubor. Soubor je umístěn ve stejném adresáři, v němž je definiční soubor aplikace. Jméno souboru je obvykle utvořeno ze jména objektu a přípony identifikující kategorii objektu, např. tdf (definice tabulky), crs (dotaz), pgm (transport), tdt (data ve vnitřním tvaru) apod. Kódování souborů s definicemi objektů je UTF-8.
V případě, že jméno objektu obsahuje diakritiku nebo "divné" znaky (jako mezera, lomítko apod.), nelze jednoduše použít jméno objektu pro jméno souboru, protože by pak export nebyl přenositelný mezi Windows a Linuxem. Jméno souboru v tomto případě vznikne tak, že znaky s diakritikou ve jméně objektu se nahradí znaky bez diakritiky a "divné" znaky znakem podtržítko. Na řádcích popisujících objekt je pak uvedeno kromě jména objektu i jméno souboru, aby bylo jasné, kde je definice objektu uložena.
Při importu se postupuje opačně - není-li na řádku s objektem jméno souboru, hledá se soubor se jménem objektu a danou příponou.
Práva k objektu jsou na řádce specifikována pouze pokud to uživatel vyžaduje, a zahrnují buď pouze práva rolí nebo také práva uživatelů a skupin. Práva jsou ve tvaru
({U|G|R} identifikace binární_práva)
pro uživatele (U) skupinu (G) a roli (R). Do těchto symbolů nezasahujte. Identifikace uživatelů a skupin je binární, identifikace rolí je textová (jejich jménem).
Řádka začínající slovem Icon vytváří zástupce aplikace zadaného jména v zadané složce. Od verze 9.0 se nepoužívá.
![]() | Zamčená aplikace | ![]() | Aplikace |