Sfairadora

  • Referenční příručka

Sekce dokumentu Typ dat

Jednotlivé položky sekce Typ dat korespondují se stejnojmennými položkami sekce Data. Vytvořením nové položky v sekci Typ dat se automaticky vytvoří i stejnojmenná položka v sekci Data. V sekci Data je potom možné zadávat hodnotu položky, zatímco v sekci Typ dat její typ. Pokud například vybereme pro položku v sekci Typ dat typ Celé číslo (Int), bude mít odpovídající položka sekce Data podobu řádkového editoru, do kterého je možné vepsat nějaké číslo. Obdobně, pokud v sekci Typ dat určíme, že jde o tabulku se sloupci jméno a příjmení typu Řetězec (String), odpovídající položka sekce Data bude tabulka s těmito dvěma sloupci, do které lze zadávat seznam dvojic {jméno, příjmení}.
V pravém panelu hlavního okna dokumentu (případně v samostatném okně při poklepání na položku) je zobrazen název dat a vlastní editor datového typu. Název musí být identifikátor.
V průběhu úprav typu dat se zároveň okamžitě tyto změny promítají do vlastních dat v sekci Data, o což lze případně sledovat tak, že odpovídající položku sekce Data zobrazíme v samostatném okně (poklepáním myší), takže bude zobrazena zároveň s editorem jejího typu. Pokud není typ správně zadán (například dva sloupce mají stejný název a pod), zůstane typ položky v sekci Data beze změny. Hlášení o chybě je zobrazeno ve stavové řádce.

Zachování dat při změně typu

Za zmínku stojí, že se Sfairadora snaží při změně typu v maximální míře zachovat již zadaná data v instanci položky, jejíž typ je zobrazován. Triviálně to platí při přejmenování položky či sloupce tabulky, rovněž při změně typu je provedena datová konverze, takže změníme-li například typ sloupce tabulky z typu Řetězec na typ Celé číslo, v těch případech, kde hodnota řetězce měla formu čísla, budu řetězec převeden na číslo, v ostatních případech bude doplněna 0 (nebo bude hodnota ponechána nevyplněna, pokud je označena jako nepovinná).
Lze však provádět i složitější operace, při kterých zůstanou data zachována. Vytvoříme-li například nový sloupec tabulky tak, že okopírujeme definici sloupce stávajícího, budou i v instanci tabulky okopírovány hodnoty původního sloupce do sloupce nově vytvořeného. Data jsou nicméně zachována i v takovémto případě:
1.
V typu existující tabulky vytvořte novou položku (tj. nový sloupec), její typ nastavte na „Tabulka“.
2.
Stiskněte tlačítko Detaily – otevře se seznam sloupců nově vytvořené podřízené tabulky.
3.
Z nadřízené tabulky okopírujte jednu položku do nově vytvořené tabulky – v instancích podřízených tabulek bude po jednom řádku s hodnotou z výchozího okopírovaného sloupce.
Užitečná může být rovněž možnost změnit typ z počítaného na základní – tím dojde k zafixování vypočítaných hodnot.

Zámek typu dat

Pokud by se měla provést složitější manipulace s typem dat, mohlo by vadit, že se jednotlivé změny v typu promítají do vlastních dat okamžitě. V některých případech by bylo žádoucí, aby se typ upravil několika změnami a tyto změny se projevily v datech až nakonec najednou. K tomu slouží tlačítko s ikonou zámku vpravo od titulku „Typ dat“. Tlačítko funguje jako přepínač, pokud je ve stavu „zamknuto“, úpravy v typu dat se nepromítají do jejich instance. Až když je přepínač opět odemknut, všechny změny se do dat promítnou. Tento zámek zamyká najednou typ dat i typ pohledů.