[python] GUI ala PC-FAND
jnekolny na centrum.cz
jnekolny na centrum.cz
Úterý Listopad 14 10:56:03 CET 2017
Zdravím.
Jsem rád, že se tu objevil také nějaký FANDista. Já ho už léta využívám k tomu co potřebuje evidovat a rychle spočítat. Živí mě něco jiného.
Něco jsem už v životě ve FANDU naprogramoval, ale programátorem bych se rozhodně netroufl nazvat.
V pythonu jsem vytvořil jen jednu aplikaci, která mi vezme vytvořenou sestavu ve FANDu (vyúčtování stočného) a odešle na určenou emailovou adresu.
Jen klepnu na ikonku. V příkazovém řádku mi script vezme soubor, převede do správného formátu, odešle a zapíše do protokolu.
Můj největší problém - neumím anglicky a ve svých 58 letech se už asi nenaučím.
Já jsem si problém rozdělil na několik oblastí a zkoumal jsem proč už mi PC Fand nestačí.
PC FAND je DOS aplikace s velmi dobrým zpracování relační databáze.
Ideálně spojuje datový editor, textový editor, tvorbu, údržbu a zpracování datových tabulek, procedurální programování a tvorbu tiskových výstupů.
Při pořízení číselných dat vám stačí jen pravá ruka - numerická klávesnice a přilehlé kurzorové klávesy. Žádné použití Tab. Levou rukou si můžete ukazovat v textu
a pořízení dat fakt frčí.
Uživatel vůbec nepotřebuje znát SQL syntaxi a dotazy.
Rychlost a snadnost, jak vytvořit databázi, jak ji naplnit a jak modifikovat a udržovat považuji za bezkonkurenční.
Proč tedy hledám něco jiného?
1. Nelze dnes přímo spustit ani pod Windows ani pod Linuxem. Freedos jsem nezkoušel a myslím. že tudy cesta nevede.
Je ale úspěšně provozován pod DOS Boxem např. www.ucto2000.cz (výrazně pomalejší než pod čistým DOSEM, složité nastavování DOSBOXu).
RYCHLOST
2. Datový editor - je omezen na 80 sloupců (pokud nepoužiju rámečky) a to je mi na obrazovce často málo.
ROZSAH DAT NA OBRAZOVCE.
3. Data jsou ukládána v souborech v 8 bitovém formátu v omezeném kódování ASCCI, Kamenický a asi nejpoužívanejší LATIN.
Pro převod do WIN je nutno konvertovat (příkaz je přímo v programovém prostředí, ale už je to mezikrok).
KÓDOVÁNÍ
4. I když umožňuje zpracování v síti nepracuje v režimu client server.
5. Součástí aplikace je ohromně mocný generátor sestav, které ale nejdou přímo vytisknout ničím jiným než FANDem. Z DOSBOXu nejde přímo tisknout.
Firma Tichý a spol. v účtu mají vlastní program pro převod těchto sestav do PDF. (Neumí provést podtržené písmo - pro FANDISTY Ctrl S).
Tak k čemu jsem došel?
Hledal jsem všechno možné a python mi přišel jako nejbližší, i když proti *.exe programům je přeci jen pomalejší.
Má přístup k celé řadě databází MySQL, PostgreSQL, SQLite, Firebird.
První dvě mi přijdou zbytečně robustní, Firebird se mi jevil nejpodobnější.
SQlite skutečně zabere minimum místa na disku, ale rychlost mě také až tak nenadchla.
Grafická prostředí
TK je sice součástí Pythonu, ale jednoduché není. Zkoumal jsme Qt, Gnome,GTK,, a wxWidget.
Ten poslední se mi nakonec zdál zajímavý, ale neumím ho.
Co mi ale v poslední době přišlo zajímavé je projekt Django.
Využívá internetové prohlížeče a poměrně jednoduše lze deklarovat datový model a také ho udržovat a upravovat.
Velmi se mi líbil seriál https://tutorial.djangogirls.org/cs pro verzi 1.8
https://docs.djangoproject.com/en/1.11/intro/tutorial01/
Na lokálu pracuje s SQlite ale lze nastavit i na jinou databázi.
Pro tvorbu tiskových výstupů by zřejmě bylo možné dobře použít ReportLab. Pro mě je ale zatím moc složitý.
Spíše jsem hledal, kde je prakticky použit.
Jiří Nekolný jnekolny na centrum.cz
______________________________________________________________
> Od: Ondrej Tuma <konference na webjet.cz>
> Komu: python na py.cz
> Datum: 13.11.2017 21:21
> Předmět: [python] GUI ala PC-FAND
>
>Zdravím v konferenci,
>
>rád bych si napsal jednoduchý a specifický program na psaní faktur,
>jenž nahradí excel. Důvody pro "znovu-vynalézání kola", nechme prosím
>stranou, berte to jako příležitost rozšířit znalosti.
>
>Kdysi jsem programoval v PC-Fandu, což je takový český jazyk
>Pascalovského typu, s hezkým editorem databází, formulářů a tiskových
>výstupů (pamětníci, nechť zamáčknou slzu :-))
>
>No a v "podobném" duchu bych rád postavil i tuto moji mini-aplikaci.
>Původní požadavek byl, aby byla aplikace pokud možno multiplatformní.
>To už beru jako bonus, nikoli požadavek.
>
>Po dlouhém rozmyslu jsem došel k názoru, že klasické grafické GUI, je k
>takovému úkolu naprosto nevhodné. Nicméně:
> * GTK+ - znám velmi dobře, včetně mnoho neduhů, nicméně chtěl sem něco
> jednoduššího
> * TK - neznám, doufal jsem že se to naučím právě při tomto projektu,
> nicméně mám pocit, že je to velmi nevhodné a zřejmě je dobré to snad
> už ani nepoužívat.
>
>Tedy co dál, napadá mě curses, nebo python-dialog. Ale nejsem si jistý,
>že to bude tolik lepší než TK. Skoro mám pocit že nejlepší volba bude
>webová aplikace.
>
>Proto si Vás dovoluji zeptat, zda Vás nenapadá něco jiného,
>použitelného a funkčního. Ty hlavní požadavky jsou:
> * tvorba formulářů (ideálně neřešit miliardu grafických blbostí,
> prostě label, textový input, combobox, select z nějakého externího
> seznamu)
> * tvorba tabulek - vlastně stačí jen výběr, žádné editace v řádku nebo
> něco podobného. Po výběru prostě dojde k nějaké akci. Důležité je,
> aby byla tabulka scrollovatelná,
> * jednoduché menu - nepotřebuji žádnou stromovou strukturu
>
>Paradoxně nejlepší je pokud jednotlivé prvky (formuláře, menu,
>tabulky) budou na samostatné obrazovce, tak jak to dělají staré
>konzolové programy.
>
>Díky za nápady a rady
>--
>Ondřej Tůma <mcbig na zeropage.cz>
>www: http://ipv6.mcbig.cz jabber: mcbig na jabber.cz twitter: mcbig_cz
>
>
>----------
>
>_______________________________________________
>Python mailing list
>python na py.cz
>http://www.py.cz/mailman/listinfo/python
>
>Visit: http://www.py.cz
>
>
Další informace o konferenci Python