CB klub Česká Lípa CL - Charlie Lima CB klub Česká lípa, z.s.

Formát souboru deníku v programu DENIKCL6 - specifikace

Kategorie: Všechny články, Lokátorové pomůcky, Návody a postupy
Formát souboru deníku v programu DENIKCL6 - specifikace

Ahoj, 

 tento článek je určen pro programátory čehokoliv co souvisí s DENIKCL6, pro ostatní to bude víceméně nuda a mohou článek přeskočit.

V roce 2004 jsem napsal jednu z prvních verzí programu DENIKCL6 původně pro vlastní potřebu. Program jsem tenkrát testoval spolu s Kidem Liberec a Čertem Liberec na několika portejblech a borcům se program s jediným vstupním řádkem natolik zalíbil, že mne přesvědčili o uvolnění programu pro veřejnost a tak se také stalo. 

Jedna z prvních verzí programu DENIKCL6

Po doplnění programu DENIKCL6 o databázi volaček, kterou jsem použil se souhlasem autora databáze volaček - Tomáše Roudnice - se program začal používat a používá se dodnes. ( zajímavost: Proto například soubor databáze volaček na počest autora Tomáše Roudnice má příponu *.tom .  Deníkcl6 si aktualizované databáze umí sám stáhnout.)

Rozšíření programu zřejmě posloužilo i to, že jsem pro naprostou většiinou souborů včetně souboru samotného deníku se spojeními použil otevřený formát CSV.  Programátoři samozřejmě vědí o co jde, pro ostatní budiž zjednodušeně řečeno, že se jedná o otevřený textový formát, kdy jsou jednotlivé položky odděleny definovaným oddělovačem, v našem případě středníkem.

Mělo by mne těšit, že se program používá dodnes a také mne to samozřejmě těší  i když vývoj programu byl již před lety zastaven. S tím je spojena obtíž - počítačový svět se nezastavil a vyvíjí se dál. Po WindowsXP, pro které byl program původně vyvíjen, přišly další verze Windows pod kterými sice program za určitých podmínek fungoval, ale "nebylo to ono". Potřeba instalovat program mimo přednastavené Program Files, potřeba někdy měnit formát desetinné čárky za tečku,  zobrazování programu s posuvnikama kolem programu a další drobnosti. Při provedení různých nastavení kompatibility se program DENIKCL6 dal i nadále používat a používá se dodnes - ale není to už tak přátelské program zprovoznit, je s tím práce navíc. (zajímavost: nejméně potíží a problémů jsem měl se zprovozněním DENIKCL6 pod WINDOWS10, nejvíc práce bylo ve VISTA a WIN7)

Dosud se nikdo moc nehrnul do další programové tvroby pro CB/PMR komunitu, což je určitě škoda. Zdá se, že se začíná blýskat na lepší časy - přišly dotazy z několika míst zda je možno použít naše databáze pro jiné projekty a odpověď jak Tomáše Roudnice tak moje byla nezávisle na sobě stejná - SAMOZŘEJMĚ ANO. Berte a použijte cokoliv potřebujete.

V souvislosti s tím mám vlastně jen jednu prosbu a to je zachování formátu deníku. Tím bude zajištěna i nadále přenositelnost deníků mezi různými bankami deníků a programy pro zpracování závodů a podobně. Není tajemstvím, že leckdo využívá i možnosti  editovat deník pomocí EXCELu, protože EXCEL formát výměny souborů CSV umí. Budiž ještě jednou jasně řečeno, že se jedná o prosbu,  doporučení. Není a ani nemůže to být podmínkou nebo něco podobného. 

Dodržením formátu deníku dosahnete toho, že deníky z vašich nových programů budou moci být okamžitě a bez úprav používány ve všech ostatních již vyvinutých aplikacích a to podle mne není zanedbatelný zisk.

Zastavím se ještě u jedné věci a to je kodování češtiny. Z historických důvodů je formát *.C6V v kodování WINDOWS-1250.  Současné kodování Unicode se začalo masově používat mírně později. Program DENIKCL6 s formátem UTF pracovat neumí a tak veškerá podpora pro program stále v současné době běží v kodování WINDOWS-1250 a vše díky tomu i nadále funguje. 

Níže ještě přidám popis samotného formátu deníku , teď přidám úvahu do budoucna - přechod na kodování UTF, Unicode.
Banka deníků již interně běží na UTF8 a při vkládání deníků nebo naopak při jejich stahování se interně provádí konverze, takže uživatel není kodováním vůbec obtěžován. 

Zajímavost: Je možné, že ještě nějaký denik pro PC napíšu. Zvažuji, zda zachovám kodování WINDOWS-1250. v návrhu zvažuji přejít na kodování UTF i pro samotný program a pro odlišení kodování použít příponu *U6F
Při uploadu deníku tak Banka deníků rovnou rozezná, že konverzi z WINDOWS-1250 do UTF nemá provádět a uživatelský komfort zůstane zachován. 

JO70QR;poř.;čas;RV;Volačka;RP;Lokátor;km;Pozn. ;NázExp;NázQTH;LokátorQTH;NadmVýš;14.10.2006 14:09:15;;;;;;;;;
JO70QR;1;[14.10.2006] 14:09:15;;Fido Jablonec Nad Nisou;;JO70NR;18;;
JO70QR;2;[14.10.2006] 14:09:41;;Tarzan Modřany Praha;;JO70FA;102;;
JO70QR;3;[14.10.2006] 14:10:54;;Mendy Strašnice Praha;;JO70FB;99;;
JO70QR;4;[14.10.2006] 14:12:58;;Rosťa Karlák Praha /p Cukrák;;JN79DW;117;;
JO70QR;5;[14.10.2006] 14:42:27;;Honza Kašperky Kašperské Hory;;JN69SD;219;,DUPL ;
JO70QR;6;[14.10.2006] 14:17:42;;Honza Pelhřimov;;JN79OK;144;;
JO70QR;7;[14.10.2006] 14:21:41;;Pepa Kámen;;JN89FS;131;;
JO70QR;8;[14.10.2006] 14:23:42;;Radek Praha /p Česká Lípa;;JO70GQ;59;;
JO70QR;9;[14.10.2006] 14:24:13;;Sakura Praha /p Nymburk;;JO70MD;69;;
JO70QR;10;[14.10.2006] 14:26:01;;Hrabě Pardubice;;JO70VA;84;;
.
.


A nyní pojďme k formátu deníku *.C6V

Programátoři samozřejmě vědí o čem je řeč, ostatní kdo byli tak stateční a i přes úvodní doporučení pro koho je článek primárně určen dočetli až sem přidávám info na wikipedii.

Popis EXPEDICE
První řádek je informační popisný a je povinný, je v deníku i v Bance očekávaný. Uvádí jednotlivé názvy políček deníku, tím to ale nekončí - řádek pokračuje dalšími položkami, ve kterých se skrývají jednotlivé položky z popisu portejblu. Položky nejsou povinné a mohou být prázdné, nicméně se doporučuje zadání alespoň základních položek programem vynucovat, výrazně se tím následně zjednoduší dohledávání kam který deník zařadit.

Následné řádky jsou již řádky jednotlivých spojení. Jejich formát a pořadí se na každém řádku opakuje, pojďme se na pár řádků podívat : 

JO70QR;poř.;čas;RV;Volačka;RP;Lokátor;km;Pozn. ;NázExp;NázQTH;LokátorQTH;NadmVýš;14.10.2006 14:09:15;;;;;;;;;
JO70QR;1;[14.10.2006] 14:09:15;59;Fido Jablonec Nad Nisou;59;JO70NR;18;pozn;

JO70QR;2;[14.10.2006] 14:09:41;55;Tarzan Modřany Praha;55;JO70FA;102;echuje;
JO70QR;3;[14.10.2006] 14:10:54;33;Mendy Strašnice Praha;33;JO70FB;99;;

Jedná se vlastně o tabulku s těmito údaji :

Výchozí lokátor číslo spojení datum a čas Report vyslaný Volačka protistanice Report přijatý Lokátor protistanice vzdálenost v km poznámka
JO70QR 1 [14.10.2006] 14:09 59 Fido Jablonec Nad Nisou 59 JO70NR 18 pozn
JO70QR 2 [14.10.2006] 4:09:41 55 Tarzan Modřany Praha 55 JO70FA 102 echuje
JO70QR 3 [14.10.2006] 4:10:54 33 Mendy Strašnice Praha 33 JO70FB 99  


Všimněte si, že každý řádek začíná lokátorem expedice odkud expedice vysílá a dále na řádku je lokátor protistanice  do kterého se expedice dovolala. Každý řádek obsahuje OBA lokátory. Formát deníku je tedy připraven i na měnící se výchozí lokátor expedice, což může vzniknout například za jízdy autem. Představme si situaci, kdy jedete autem přes ČR, GPS vám  trvale v programu doplňuje aktuální lokátor a spolujezdec provádí a zapisuje jednotlivá spojení. Vždy se tedy uvede aktuální výchozí lokátor. To je důvod, proč se výchozí lokátor uvádí u každého spojení a ne jen jednou na prvním řádku.

K číslu spojení - jedná se samozřejmě o pořadí v jakém expedice jednotlivá spojení prováděla. Vždy začíná číslicí 1

K formátu datumu a času: pokud datum jako součást spoení uvádět nechcete - není to nutné. Vše co je v hranatých závorkách včetně závorek není povinné. Čas spojení povinný je. S tímto formátem datumu v hranatých závorkách umí Banka deníků pracovat a z deníku si sama zjistit skutečný začátek a konec portejblu.

Report vyslaný - jak expedice slyší protistanici. Tento údaj vždy víte (jak slyšíte protistanici), ale i tak není tento údaj povinný.

Volačka protistanice - může být doplněna /p (portable) nebo /m (mobil) údajem o QTH ye kterého protistanice skutečně vysílá. Volačka je samozřejmě povinná.

Vzdálenost - program vypočítá vzdálenost mezi oběma lokátory na řádku, v km.

Poznámka - jakákoliv poznámka k provedenému spojení.

Přeji úspěch všem, kdo pro naši komunitu vytvoří jakoukoliv lokátorovou pomůcku.

Bavte se !

Bohouš CL6

Komentáře

postPřidat komentář

Nebyly přidány žádné komentáře.