abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 15:44 | Zajímavý projekt

Na webové stránce .bashrc PS1 generator si lze snadno naklikat preferovaný Bash prompt.

Ladislav Hagara | Komentářů: 0
dnes 08:00 | Komunita

Konference OpenAlt 2021 proběhne o víkendu 6. a 7. listopadu. Pořadatelé již šestnáctého ročníku této konference konané v Brně hledají dobrovolníky: Chceme, aby i tento ročník překonal předchozí. Aby se to celé podařilo, tak potřebujeme Vaši pomoc!

Ladislav Hagara | Komentářů: 6
včera 23:22 | IT novinky

Dnes zemřel John McAfee, zakladatel antivirové společnosti McAfee. Nalezli jej mrtvého ve vězeňské cele v Barceloně. Podle úřadů se nejspíše jednalo o sebevraždu.

Ladislav Hagara | Komentářů: 12
včera 21:11 | Komunita

Canonical, společnost stojící za Ubuntu, a Blender Foundation společně oznámili, že Canonical nabízí placenou podporu pro Blender LTS. Za 500 nebo 1000 dolarů ročně lze získat podporu 24×5 nebo 24×7.

Ladislav Hagara | Komentářů: 0
včera 14:44 | Nová verze Ladislav Hagara | Komentářů: 0
včera 12:22 | Nová verze

Byla vydána opravná verze 8.1-r6 projektu Android-x86, tj. portu mobilního operačního systému Android na standardní PC s architekturou x86. Přehled novinek v oficiálním oznámení.

Ladislav Hagara | Komentářů: 0
včera 08:00 | IT novinky

Byly vyhlášeny výsledky 7DRL Challenge 2021 aneb letošního ročníku soutěže 7DRL (Seven Day Roguelike) ve vytváření roguelike počítačových her za 7 dní.

Ladislav Hagara | Komentářů: 1
včera 07:00 | Zajímavý článek

Italo Vignoli z The Document Foundation informuje o novinkách v Technické komisi OpenDocument Format. Od roku 2020 má ODF TC (Technical Committee) dva spolupředsedy - Patricka Durusaua a Svanteho Schuberta - a čtyři spoluredaktory: Francise Cavea, Patricka Durusaua, Svanteho Schuberta a Michaela Stahla. V minulosti byli redaktoři pouze dva a zdvojnásobení jejich počtu poskytuje větší kapacitu a flexibilitu.

… více »
Zdeněk Crhonek | Komentářů: 0
22.6. 21:22 | Nová verze

Byla vydána nová verze 1.26 webového prohlížeče Brave (Wikipedie, GitHub). Nově lze mimo jiné v nastavení vybrat dnes spuštěný vyhledávač Brave Search. Ten lze využívat i v jiných prohlížečích na adrese search.brave.com.

Ladislav Hagara | Komentářů: 1
22.6. 15:33 | IT novinky

Hodnota Bitcoinu, decentralizované kryptoměny, klesla pod 30 000 dolarů. V dubnu byla hodnota Bitcoinu téměř 65 000 dolarů.

Ladislav Hagara | Komentářů: 43
Používáte kalkulačku?
 (10%)
 (31%)
 (62%)
 (26%)
 (11%)
Celkem 272 hlasů
 Komentářů: 26, poslední 22.6. 16:41
Rozcestník

MISU - účetnictví pro Linux

26. 3. 2003 | Juraj Václavík | Recenze | 14025×

Projekt účetnictví s webovým rozhraním postavený na PostgreSQL a PHP.

Před dávnými lety jsem otevřel živnost a s tím vyvstala potřeba fakturovat a účtovat. Skončil jsem u PC-FANDu a účetnictví napsal v něm. U toho jsem zůstal řadu let, ale pak nastal čas přechodu na Linux a potíže s užívanými DOS/Windows aplikacemi. Jednou z nejodolnějších byl právě PC-FAND.

Účetnictví pro Linux nebylo, zato byla lenost (a nedostatek času). Ovšem všiml jsem si výhody webových prohlížečů - jednoduchá tvorba uživatelského prostředí, které jsem již znal. Pak přišlo seznámení s PHP a následkem toho jsme se vrhli na SQL databáze.

V dalším vývoji jsme vsadili na prohlížeče podporující javaskripty (výpočty jako třeba DPH a další) a CSS2 (formátování, zvláště se zřetelem na provizorní řešení tiskových sestav).

Strukturu tabulek jsem vlastně měl - opsané staré účetnictví. Potom jsme poměrně dlouho vytvářeli koncepci systému, přičemž jsme se snažili o maximální jednoduchost tvorby aplikace a univerzalitu řešení, čemuž jsme obětovali m.j. čistotu struktury tabulek.

Další problém zněl: jednoduché nebo podvojně? Celé účetnictví začalo vznikat teprve po rozhodnutí pracovat na podvojném systému s tím, že jednoduché účetnictví bude řešeno generováním účetního deníku jednoduchého účetnictví z účetního deníku ve skutečnosti účtovaného podvojně. Je to sice poněkud krkolomné, ale jednoduché účetnictví není účetnictví... Aby mohl se systémem pracovat člověk neznalý podvojného účtování, jsou k dispozici účetní souvztažnosti, které uživatele zbaví pohledu na podivnosti typu Má Dáti a Dal. To ovšem předpokládá správné naplnění souvztažností a nastavení systému.

Stav vývoje

Především: MISU toho moc zatím neumí. Lze vytvářet základní číselníky, souvztažnosti a přímo zapisovat účetní doklady. Kromě toho lenost psát knihu jízd a z ní počítat mě přiměla vytvořit ji také. Alespoň částečně. Bude ji ale zapotřebí rozšířit, neboť od 1.1.2003 máme na služebních cestách povinnost zapisovat dobu jízdy - takže přibude další položka.

Závažným nedodělkem je absence generátoru tiskových sestav. Zatím jsou tiskové sestavy generovány do prohlížeče se všemi důsledky z toho vyplývajícími - co klient, to originál. Zatím jsem jedině ověřil funkčnost lámání stránek pomocí CSS2 (ale ne na mém oblíbeném Konqueroru). Předpokládám však generování sestav na straně serveru skriptem HTML_ToPDF a odesílání klientovi - až bude trochu čas.

Dalším nedodělkem jsou zatím absentující uživatelské přístupy. Uživatel musí být sice v systému evidován, další kontrola ovšem je pouze v mojí hlavě.

Snad brzkou funkční novinkou budou obchodní knihy. Umožní vytvářet daňové doklady - faktury i pokladní doklady s charakterem zkrácených daňových dokladů a zálohové faktury. Rozsahem by měly pokrýt očekávané požadavky na záznamní povinnost, která vlastně má nahradit (a obejít nepoužíváné) registrační pokladny.

Jen částečně je řešena evidence DPH. Je to pouze zoufalé minimum - součty řad dokladů, které se pro potřeby zúčtování s finančním úřadem musí vhodně sečíst mimo tento systém vedle a ... k vytvoření daňového přiznání použijte šablonu pro OpenOffice.org.

Dále bude zapotřebí opravit chyby v souvztažnostech, které zde již jsou a jejich návaznost na můstky na jednoduché účetnictví. Otázkou je funkčnost na dalších systémech. My pracujeme na SuSE (dnes 8.1) a po zeditování souborů s deklaracemi tabulek (adresář sql) by systém měl běžet na Mandrake 9.0. Ze systémového hlediska chci na odlehčení SQL serveru zavést session a také transakční zpracování. Uvažuji o kontrole vstupujících dat, deklarace jsou již připraveny, vlastní výkonné procedury nikoliv.

O dalších cílech zatím nemá cenu psát, můžeme pokračovat velmi dlouho. Jasná je skladová evidence a ...

Pohled uživatele

MISU má dvě systémové části - správu účetnictví a správu uživatelů. Další částí je vlastní účetnictví se všemi svými tabulkami.

Správa účetnictví vede tabulku účetnictví, kde jsou základní parametry jednotlivých účetních evidencí. Předpokládá se, že pro každý rok bude založena nová účetní evidence s vlastním záznamem v této tabulce. Zde jsou základní informace o dané účetní evidenci - typ účetníctví, (ne-)evidence DPH a její sazby, DIČ a IČ.

Správa uživatelů vede tabulku uživatelů a jejich práv. S těmi právy (viz výše) to není zrovna žhavé, ale přihlásit se uživatel musí již teď. Lze změnit vlastní heslo a nastavit uživatelský profil - vybrat firmu k účtování, nastavit účetní období a podle vlastního prohlížeče nastavit velikost sestavy.

Všechny ostatní nabídky se již týkají vlastní zvolené účetní evidence. Tu vybranou účetní evidenci, období a svoje jméno ostatně uživatel vidí v záhlaví každé vygenerované stránky. V tuto chvíli ponechávám vše na na jeho touze klikat a procházet se bohatstvím (chudobou) nabídek. Vzhled hlavní nabídky se mění podle zvolené účetní evidence - jednoduše/podvojně a DPH.

Obchodní knihy, jak uvádím výše, jsou zatím nefunkční. Pracuji zatím na zkrácených daňových dokladech a v tuto chvíli je již lze pořídit, ale nemají vhodnou tiskovou sestavu, ani se nepřenesou do účetního deníku.

Jak tedy účtovat:

Musíme mít alespoň jedno středisko, alespoň jednu zakázku, základní sadu účtů a alespoň jednu řadu dokladů. Kromě toho je vhodné pracovat s účetními souvztažnostmi - tedy potřebujeme sadu souvztažností. Základní blok těchto tabulek je součástí instalačního balíku, ovšem asi ji nelze považovat za zcela korektní.

Potom tedy šlápneme na souvztažnosti, nějakou vhodnou si vybereme a klikneme daňový doklad. Objeví se formulář pro zadání nového dokladu, kde zadáme popis operace, částku a z rolet vybereme zakázku a středisko. Pokud jde o variantní souvztažnost, můžeme volit roletovou variantu. Pokud účtujeme DPH, potom se také dopočítává DPH a počítají součty. Odesláním formuláře se položka zapíše a vrátí číslo dokladu.

Pořízené doklady můžeme prohlédnout přes deník dokladů anebo řady dokladů. Zatímjediným výstupem je vygenerovaný účetního deníku jednoduchého účetnictví avýsledek.

Vnitřní řešení

Běhové parametry má systém uloženy v souboru misu.conf. Zde jsou proměnné nastavující logování (funkcí intralog) a komunikace s SQL serverem. Toto je také cesta, jak pro systém využít i jiné SQL servery, než PostgreSQL.

Vlastním východiskem každého skriptu je vložený skript _priprava.php. Zde je nejprve deklarace univerzální dotazovací funkce, která řeší všechny dotazy do databáze. Vzhledem k potřebě zamykat věty jsou obvyklé sql dotazy doplněny o metadotazy ZAMKNI a ODEMNKI, které jsou opět touto funkcí řešeny.

Následuje autorizace uživatele a naplnění proměnných z tabulek uziv (identita uživatele a přístupová práva), uzivrc (nastavení uživatele -účtovaná firma, velikost sestavy a účtovací období) a kmen (parametry účtované firmy).

Podle skriptu a jeho požadavků se dále čte z tabulky pristup (názvy sloupců tabulek - lze alternativně použít pro vícejazyčné řešení). V této tabulce jsou také zadání požadovaných kontrol vstupních dat - viz deklarace této tabulky vsql/_zaklad_tabulky. Další požadované zprávy systému se čtou z tabulky zpravy, opět s možností vícejazyčného řešení.

Následuje hlavička html stránky - jde buď o úplnou a faktickou hlavičku stránky, anebo o deklaraci funkce hlavičky používanou pro generování tiskových sestav. Podotýkám, že pokud jsou zapotřebí javaskripty, stačí jméno souboru vložit do proměnné $javaskript v hlavním skriptu (viz např. uct-doklad-novy.php).

V případě potřeby je k dispozici skript _funkce.php, který obsahuje řadu funkcí vyvinutých za účelem zjednodušení programování aplikace. Mimo jiné zde jsou funkce pro relativně jednoduché vytváření aplikací se zamykáním dat - otevri_detail(), zavri_detail(), pol_detail() a roleta_detail() (viz skripty *-detail.php).

Tak a jsme připraveni k tomu, aby se něco provedlo. Přitom vlastně budeme dělat jednu z následujících operací:

  1. Necháme vystoupit nějakou tabulku, nebo její část. Schéma je velmi jednoduché a představuje dotaz do databáze a vygenerování sestavy s příslušnými html odkazy na detailní pohledy. Vzhledem k obecnosti řešení jsou jedinou zvláštností parametry předávané těmito odkazy - nesou informacive tvaru název_proměnné=hodnota.
  2. Budeme pracovat s detailem tabulky - jedním záznamem. Toto je nejsložitější část systému, ovšem díky kolekci funkcí otevri_detail (), zavri_detail () ad. je zápis relativně jednoduchý. Jde o skripty *-detail.php a další s těmito skripty spojenými. Funkce otevri_detail () řeší generování html formuláře podle požadavků hlavního skriptu, funkce zavri_detail () řeší tlačítka na konci formuláře a parametry předávané dalším skriptům a funkce jako roleta_detail () a pol_detail () řeší jednotlivé položky formuláře - buď jen zobrazení, nebo editování. Zápis a mazání záznamů obecně řeší univerzální zapisovací a mazací skript zapis.php a smaz.php. Ve složitějších případech lze skript zapis.php obejít explicitně definovaným skriptem jehož jméno se předává funkci otevri_detail() - viz například uct-doklad-novy.php. A něco k metodě zpracování: Otevřu detail a mohu ho pouze zhlédnout, nemohu v něm nic změnit. Pokud chci něco změnit, musím záznam zamknout - příslušné tlačítko. Zamčený záznam mohu změnit, smazat anebo opět odemknout. Ostatní mohou záznam jen prohlížet. Stejnou záležitostí je i pořízení nového záznamu. Toto vše zajišťují skripty *-detail.php, smaz.php a zapis.php. Podrobnosti nechť si zájemci nastudují sami ze zdrojáků (a pokud najdou chyby, tak prosím o zaslání)
  3. Budeme dělat něco jiného. Sem patří hlavní nabídka systému a tiskové sestavy. Zde většinou jde o jednoduché úlohy, které obdrží určité vstupní parametry a nějak je zpracují. Výjimkou je hlavní nabídka - to je stránka obyčejných html odkazů.

Další informace a popis instalace viz dokumentace v balíku.

       

Hodnocení: 37 %

        špatnédobré        

Nástroje: Tisk bez diskuse

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

26.3.2003 07:50 damned ( at ) hq dot sk
Rozbalit Rozbalit vše nemozem si pomoct
Ale mam pocit ze je vecna skoda ze si autor nedal trochu namahy s vytvaranim web stranky. Uctovnictvo ktore sa javi ako aspon ciastocne funkcne je velmi dobra vec.
26.3.2003 08:55 Jirka Jurek
Rozbalit Rozbalit vše nemozem si pomoct
Ta webova stranka je dokonala. Je tam vsechno a zadny zbytecnosti.
26.3.2003 09:06 Jirka Jurek
Rozbalit Rozbalit vše nemozem si pomoct
Teda uplne dokonala neni, neprojede html validatorem, ale to je tak vse, co ji lze vytknout.
4.8.2003 09:42 Jan Václavík
Rozbalit Rozbalit vše nemozem si pomoct
Na stránkách se pracuje
31.12.2003 17:22 Jan Václavík
Rozbalit Rozbalit vše nemozem si pomoct
nové stránky najdete na adrese http://vamad.czechian.net
26.3.2003 09:43 Petr Kristof
Rozbalit Rozbalit vše SQL-ledger
Nejsem odbornik na ucetnictvi. Nemohl by nekdo porovnat MISU s podobnym projektem SQL-ledger? Pripadaji mi hodne podobne. www.sql-ledger.com
26.3.2003 10:13 Petr Vavra
Rozbalit Rozbalit vše SQL-ledger
No ta podobnost je snad v tom, ze pouzivaji PostgreSQL, ale SQL-Ledger je jiny, nejede na jine SQL databazi (autor clanku v textu pripousti moznost jine databaze), pouzity programovaci jazyk je jiny (SQL-Ledger je v Perlu, tohle v PHP)... to je jen prvni pohled, myslim, ze tech rozdilu bude hodne.
26.3.2003 10:59 iRAY | skóre: 21 | blog: /.cz
Rozbalit Rozbalit vše alternativa & inspirace
Nedávno jsem něco podobného hledal a asi nejlepší mi připadala nola. Je to taky v PHP, ale využívá to MySQL. Myslím, že jako insporace pro autora by to nebylo špatné.
9.11.2008 17:08 Zdenek Kalousek
Rozbalit Rozbalit vše Re: MISU - účetnictví pro Linux
Odkaz nefunguje !!!

Založit nové vláknoNahoru

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.