Masarykova univerzita Fakulta informatiky
Analýza a návrh webového informačního systému pro reporting podniku
Bakalářská práce
Jiří Škrobák
Brno, jaro 2010
Prohlášení Prohlašuji, ţe tato bakalářská práce je mým původním autorským dílem, které jsem vypracoval samostatně. Všechny zdroje, prameny a literaturu, které jsem při vypracování pouţíval nebo z nich čerpal, v práci řádně cituji s uvedením úplného odkazu na příslušný zdroj.
Vedoucí práce: prof. RNDr. Jiří Hřebíček, CSc.
ii
Poděkování Tímto bych chtěl poděkovat vedoucímu práce prof. RNDr. Jiřímu Hřebíčkovi, CSc. za hodnotné rady a odborné vedení během mé práce. Také bych chtěl poděkovat mojí rodině, která mi byla v průběhu celého mého studia velkou oporou.
iii
Shrnutí Cílem této práce je bliţší seznámení s environmentálním reportingem a jeho současným stavem. Dále analýza a studie environmentálních indikátorů, které jsou důleţitou součástí environmentálního reportingu. Hlavním úkolem této práce je návrh a implementace informačního systému Indikátory, který bude zaměřen na sběr podnikových zpráv. V návrhu systému vyuţiji nástroje pro modelování systémů pouţité v předmětech absolvovaných během mého studia, které se analýzou a návrhem systému zabývaly. Implementaci systému provedu pomocí redakčního systému Joomla!.
iv
Klíčová slova environmentální reporting, podnikové zprávy, indikátory ţivotního prostředí, udrţitelný rozvoj, informační systém, analýza systému, návrh systému, PHP, MySQL, Joomla!
v
Obsah 1 Úvod .......................................................................................................................... 1 2 Reporting podniku a indikátory............................................................................... 2 2.1
Povinný reporting .............................................................................................. 2
2.2
Dobrovolný reporting ........................................................................................ 3
2.3
Indikátory ......................................................................................................... 5
2.3.1
Klíčové indikátory ţivotního prostředí ....................................................... 5
2.3.2
Vyuţití a struktura...................................................................................... 5
2.3.3
Úrovně indikátorů ...................................................................................... 6
2.4
Výpočet indikátorů............................................................................................ 7
2.5
Projekt Indikátory ............................................................................................. 9
2.5.1
Metodická příručka .................................................................................. 10
2.5.2
Informační systém INDIKÁTORY........................................................... 11
3 Analýza.................................................................................................................... 12 3.1
Účel systému ................................................................................................... 12
3.2
Uţivatelé ......................................................................................................... 12
3.3
Seznam událostí .............................................................................................. 13
3.4
Kontextový diagram ........................................................................................ 14
3.5
DFD ................................................................................................................ 15
3.6
Datový slovník ................................................................................................ 17
3.7
Minispecifikace ............................................................................................... 20
3.8
Use Case ......................................................................................................... 23
3.9
ERD ................................................................................................................ 24
4 Implementace .......................................................................................................... 25 4.1
Technologie pouţité v projektu ....................................................................... 25
4.1.1
Joomla! .................................................................................................... 25
4.1.2
Přídavná komponenta Chronoform ........................................................... 25
4.1.3
PHP ......................................................................................................... 25
4.1.4
MySQL .................................................................................................... 26
4.2
Popis tvorby systému za pomoci nástroje Chronoform .................................... 26
4.3
Zdrojové kódy................................................................................................. 27
4.4
Zapojení systému do chodu ............................................................................. 28
5 Závěr ....................................................................................................................... 30 6 Literatura ................................................................................................................ 31 7 Obsah CD ................................................................................................................ 32
vi
1
Úvod V současné době vyspělých internetových technologií, elektronické komunikace a
snadné dostupnosti informací v elektronické podobě, je pro podnik velmi důleţité, aby vyuţil moţnosti prezentovat a více tak zviditelnit svoje působení pomocí těchto řešení. Pokud jich nebude vyuţívat v dostatečné míře, je téměř jistě odsouzen k zániku. Čím dál víc pak záleţí na tom, kdo ve světě podnikání udělá něco pro to, aby byl ještě o něco lepší, resp. vytvořil si před širokou veřejností, svými zákazníky, ale i konkurenčními podniky, dobré a zároveň silné jméno. Ve stále větší míře se k takovému účelu vyuţívá tzv. reporting. Jedná se o dobrovolné vydávání podnikových zpráv, zabývajících se environmentální, ekonomickou a sociální činností podniku. Toto jsou tři základní pilíře, pomocí kterých je zajištěn udrţitelný rozvoj podniku. Jsou zde zveřejňovány výsledky působení v těchto konkrétních oblastech, a tedy přispívají k vytvoření přehledu o aktuální situaci v nich. Neslouţí pouze k informování veřejnosti (zákazníci, orgány státní správy, odborné, oborové a finanční komunity), ale také vnitřním sloţkám podniku (zaměstnanci, management, vedení), ke zjištění vývoje a porovnání údajů z předchozích období. Dá se pomocí něj také měřit a analyzovat produkce a výkon podniku. Můţe také být nástrojem na vytváření mezinárodní spolupráce mezi podniky. Reporting poskytuje širokou škálu informací těm, kteří tyto informace jakýmkoliv způsobem vyţadují resp. zpracovávají. Některé organizace, jejichţ působení má nevyhnutelný neblahý vliv na ţivotní prostředí, či okolí mají toto podávání podnikových zpráv uloţené státními orgány dokonce za povinnost. Nyní k jednotlivým oblastem reportingu. Jako první bych zde uvedl environmentální reporting. Tím se totiţ v mé práci budu zabývat přednostně. Jak název napovídá, je zaměřen na podávání zpráv týkajících se vlivu činnosti podniku na environment čili ţivotní prostředí. Příčinou vzniku tohoto odvětví byly nedávné ekologické katastrofy způsobené např. chemickými továrnami, po nichţ byli zodpovědní lidé nuceni vydat na nátlak médií oficiální vysvětlení. Ekologická otázka je vzhledem k tvorbě skleníkového efektu, klimatických změn a neustále se zvětšujícího mnoţství odpadů na naší planetě čím dál víc aktuální. Proto environmentální reporting reflektuje zvýšený zájem veřejnosti o tuto problematiku. Zaměřuje se na hlášení tvorby emisí, skleníkotvorných plynů, spotřeby energií apod. Tyto informace můţou napomáhat jak interním sloţkám podniku, které se snaţí najít řešení slabších článků ekologické oblasti, tak zájmovým skupinám či správním orgánům, které se zabývají kontrolou dodrţování ekologických norem a standardů. Pomocí viditelných zlepšení v dopadu své činnosti na ţivotní prostředí můţe podnik také prokazatelně zlepšit svůj ekonomický výsledek. Sociální reporting zveřejňuje informace o sociální odpovědnosti (etice podnikání), zdraví zaměstnanců, bezpečnosti práce atd. Poukazuje také na příznivý vliv vzhledem k zaměstnanosti v regionu, kde podnik působí. Dále podává zprávy týkající se péče o
1
zaměstnance, nebo vyuţívání zaměstnaneckých výhod, které jsou vhodné ke zjištění toho, jak jsou výhody vyuţívány (zejména pro potřeby pracovního managementu). V neposlední řadě také zprávy o hygieně práce, které můţou nemalou mírou přispět k dobrému jménu podniku. Ekonomický reporting se zaměřuje převáţně na finanční oblast podniku. Je důleţitý jak pro akcionáře, tak pro ekonomické systémy lokální, národní a celosvětové úrovně (např. burzy). Informuje o výdajích, příjmech, zisku, zákaznické spokojenosti, ale také klasifikuje potencionální rizika u nákupu statků a dlouhodobých výdajů. Ekonomický reporting můţe mít příznivý vliv na vztahy mezi podnikem a veřejnou správou (coţ můţe mít za následek předejití případných kontrol). Cílem mé bakalářské práce je popsat hlavní myšlenku a cíle reportingu a jeho dělení na dobrovolný a povinný, dále vysvětlit pojem indikátory ţivotního prostředí, které hrají důleţitou roli v hlavní části této práce. Tou je analýza, návrh a implementace informačního systému Indikátory, do kterého se budou dobrovolně registrovat podniky a organizace, a který bude provádět sběr dat ve formě indikátorů a tyto pak ukládat do databáze indikátorů a generovat z nich konkrétní data podle zadaných údajů.
2
Reporting podniku a indikátory Reporting podniku, nebo také podávání zpráv o činnosti podniku je tedy
především jakési výkaznictví o konkrétních údajích týkajících se všech činností, které podnik provádí a které jsou středem zájmu jak interních tak i externích sloţek podniku. O zprávy podniku se také zajímají různé státní orgány, zájmové skupiny, ale například i obchodní partneři a konkurence podniku. Pomocí reportingu je moţné také provádět transformaci získaných dat v konkrétní znalosti. Toho lze dosáhnout například výpočtem statistik a průměrů v určitých oblastech. Reporting se podle svého charakteru dělí na povinný a dobrovolný.
2.1 Povinný reporting Do povinného reportingu je zahrnuto podávání zpráv o znečišťování ovzduší, vod, nakládání s chemickými odpady a další činnosti, které přímo ovlivňují negativním způsobem ţivotní prostředí. Podávání těchto zpráv je povinné téměř pro všechny podniky v České republice, které tyto činnosti provozují a nesplňují stanovené prahy maximálního produkovaného mnoţství konkrétních škodlivých látek. Tyto zprávy jsou určeny především státním orgánům, krajským a obecním úřadům a například také pro ministerstva.
2
Pro účely sběru a kontroly podávání povinných zpráv byl vytvořen organizací CENIA1 informační systém ISPOP2, který v podstatě navazuje na systém Centrální ohlašovna. Do tohoto informačního systému jsou podávány zprávy pomocí IRZ (Integrovaného Registru Znečišťování). Sledují se především znečišťující látky podle určené stavové hodnoty mnoţství a produkce odpadu předávaného mimo provozovnu. Provozovnou se rozumí ohlašovací jednotka (podnik) s konkrétním identifikačním číslem. Pokud tato provozovna nepřekročí za rok stanovené hranice, není povinna podávat do tohoto systému zprávu. Veškeré podávání zpráv probíhá elektronickou formou – buď softwarem, který musí splňovat platný datový standard, nebo přímo přes elektronickou podatelnu v informačním systému. Kontrolu reportů provádí Česká inspekce ţivotního prostředí a organizace CENIA.
2.2 Dobrovolný reporting Dobrovolný reporting je, jak jiţ název napovídá, činnost prováděná podnikem z vlastní iniciativy, která napomáhá k posílení transparentnosti podniku, dobrého jména a k větší důvěryhodnosti podniku. Jeho provádění sice ze začátku znamená pro podnik určité finanční náklady, z dlouhodobějšího hlediska je však průkazně dokázán nemalý ekonomický přínos pro podnik. Dobrovolné podávání zpráv lze dělit na takové, kde se pouţívají standardizované nástroje a takové, které pouţívají doporučené přístupy. U těch, které pouţívají doporučené přístupy, ovšem není zcela jasná jejich realizace. Proto se u těchto řešení zaměřují dobrovolné zprávy na poţadavky cílových skupin a podle nich jsou také tvořeny. Cílové skupiny je moţné rozdělit na tyto: -
Zaměstnanci – mají zájem v podstatě o vše co se děje kolem organizace a tudíţ co by mohlo mít vliv přímo na jejich osobu
-
Zákazníci – mají zájem o informace o environmentálních, sociálních a ekonomických dopadech
-
Dodavatelé – zájem o trţní chování organizace
-
Úřady – zájem o dodrţování předpisů
-
Sousedé – zájem především o to jak se organizace chová ke svému okolí a jaké na něj má následky
-
Investoři, akcionáři, banky a pojišťovny – zájem o finanční aspekty organizace
-
Veřejnost – zájem o chování organizace vzhledem k ţivotnímu prostředí
Na zájmy jednotlivých skupin se pak nahlíţí při tvorbě celého reportu.[1]
1 2
www.cenia.cz/__C12571B20041F1F4.nsf/index.html www.ispop.cz/web/website/index.html
3
Obrázek 1 – Cílové skupiny uţivatelů (zdroj: J. Hřebíček, Dobrovolný reporting v ČR a indikátory udržitelného rozvoje) Při pouţití standardizovaných nástrojů je na rozdíl od doporučovaných přístupů je téměř přesně dané jak mají jednotlivé zprávy vypadat. Záleţí pouze na zvolené normě pro vypracování (GRI, INEM, EFQM, OECD, UNO, Responsible Care, ORSE). V dnešní době se pouţívají 4 typy zpráv: 1. Environmentální zpráva – zpráva, která vznikla z nutnosti informovat veřejnost o vlivu činností organizace na ţivotní prostředí. Jedná se o základní typ zprávy, která obsahuje údaje o vyprodukovaných emisích, mnoţství vyprodukovaných odpadů, spotřebě zdrojů a energií a materiálových tocích v organizaci. 2. Zpráva o zdraví, bezpečnosti a ţivotním prostředí – tato zpráva rozšiřuje environmentální zprávu o údaje týkající se zdraví, bezpečnosti práce a ţivotního prostředí. Její sestavení není příliš náročné. 3. Zpráva o udrţitelném rozvoji organizace – informuje o problematice sociální a ekonomické. Pojednává o organizaci z pohledu trvale udrţitelného rozvoje. Je to nejnáročnější typ zprávy, která se nedoporučuje podnikům, které s reportingem začínají. 4. Zpráva o odpovědném podnikání – zpráva, která pojednává o sociálních a etických aspektech podnikání.
4
2.3 Indikátory Indikátor ţivotního prostředí nebo udrţitelného rozvoje je druh kvantitativní informace odvozený od primárních údajů, poskytující ucelenou a základní informaci o určitém jevu, který se týká ţivotního prostředí nebo/a udrţitelného rozvoje (ovzduší, vody, přírody, krajiny, průmyslu, zemědělství, dopravy, sociální sféry aj.)[2] Indikátor je politicky významný a adresný, analyticky dobře podloţený a zdůvodněný, snadno měřitelný, stanovitelný, vypočitatelný a to s dostatečnou přesností a s přijatelnými finančními náklady, uspořadatelný do vhodné časové řady a také v neposlední řadě srovnatelný v mezinárodním měřítku. Bez srovnatelnosti indikátorů, by tyto ztratily jednu ze svých nejpodstatnějších vlastností. Jedině srovnáváním se totiţ dokáţeme zaměřit na slabá místa v systému a tyto slabé články posílit zavedením stejných principů jako mají státy a organizace s nejlepšími dosaţenými výsledky.
2.3.1 Klíčové indikátory životního prostředí Hlavním účelem klíčových indikátorů ţivotního prostředí je především poskytnutí základu pro vyhodnocení pokroku v dané oblasti ţivotního prostředí a hodnocení dodrţování zadaných cílů stanovených systémem v rámci politiky ţivotního prostředí. Dále zodpovězení otázek pro politické vedení, které rozhoduje o tom, jakým směrem se bude ubírat další vývoj různých opatření a technik zdokonalujících ekologickou šetrnost jednotlivých odvětví. Dalším účelem klíčových indikátorů je poskytnutí odpovědí mezinárodního charakteru na klíčové otázky, které se týkají ţivotního prostředí a udrţitelného rozvoje, pro vytvoření mezinárodně kompatibilní standardizované sady indikátorů, která by mohla poslouţit pro mezinárodní srovnávání.
2.3.2 Využití a struktura Indikátory jako takové, by měly poskytnout nástroj pro vytváření zpráv o ţivotním prostředí, ale také nástroj pro hodnocení dodrţování stanovených cílů a priorit politiky ţivotního prostředí. Klíčové indikátory sestávají z osmi témat ţivotního prostředí – klima, znečišťování a kvalita ovzduší, vodní hospodářství a jakost vod, biodiverzita, lesy a krajina, odpady a materiálové toky, zdraví a financování ochrany ţivotního prostředí. Indikátory sestávají také z tří témat z oblasti vlivů sektorů na ţivotní prostředí – zemědělství, energetika a průmysl a doprava. Tyto témata jsou prioritami jak Státní politiky ţivotního prostředí ČR, tak I politiky EU. Konceptuální model interakce indikátorů “vliv-stav-odezva” mezi lidskou společností a ţivotním prostředím byl Evropskou agenturou pro ţivotní prostředí rozšířen na “hnací síla-vlivstav-dopad-odezva”:
5
Obrázek 2 – Model interakce indikátorů „hnací síla–tlak–stav–dopad–odezva“ (http://issar.cenia.cz/issar/page.php?id=1504) Soubor indikátorů by měl být stabilní, ale nikoliv statický – mělo by být moţné jej dále v budoucnu rozšiřovat o další prioritní témata. Do DPSIR rámce (D = hnací síla, P = tlaky, S = stav, I = dopady, R = reakce), jenţ je vhodný model pro znázornění interakce mezi lidskými aktivitami a ţivotním prostředím, lze umístit kaţdý indikátor ze souboru. Indikátory je ale moţné také třídit podle typu – A = popisné indikátory, B = indikátory pokroku a plnění, C = indikátory účinnosti, D = indikátory efektivnosti, E = indikátory celkové prosperity. Vytvoření standardních indikátorů má za cíl, právě projekt Masarykovy univerzity. Klíčové indikátory jsou určeny různým skupinám lidí, kde kaţdá skupina je zainteresovaná odlišným způsobem. Zaprvé jsou to tvůrci politik ţivotních prostředí v různých organizacích, národních společnostech, ministerstvech atd., kteří výsledky indikátorů vyuţívají k určení pokroku, či neúspěšné aplikaci konkrétních řešení v dané politice. Dále to jsou orgány veřejné správy, které vytvářejí různé prostředky pro zlepšení vlivu národní ekonomiky na ţivotní prostředí, prostřednictvím různých koncepčních a strategických dokumentů. Mezi zainteresované skupiny se nepochybně řadí také odborná veřejnost, která se zabývá touto problematikou a která můţe mít vlastní názory a poznatky nebo můţe přímo navrhnout různá zlepšení indikátorů. Poslední skupinou je široká veřejnost, která se pomocí indikátorů zveřejněných na internetu a podaných dostatečně srozumitelným způsobem, můţe seznámit s trendy v rámci udrţitelného rozvoje.[3]
2.3.3 Úrovně indikátorů Makroúroveň - v tomto případě se na společnost nahlíţí jako na jeden velký celek podobající se ţivému organismu, který ke své existenci spotřebovává určité mnoţství přírodních zdrojů a produkuje výstupy, kde některé z nich určitým způsobem poškozují ţivotní prostředí (ovzduší, vodu, půdu apod.) U materiálových toků, tedy u materiálových vstupů a výstupů, se zohledňuje také nakumulovaná zásoba materiálu vytvořená dočasně zadrţenými ekonomickými vstupy, a opotřebení fyzického kapitálu. Makroagregátní údaje představují: - Indikátory vstupů:
6
Přímý materiálový vstup, DMI (Domestic Material Input) – všechny materiály, které mají ekonomickou hodnotu a jsou pouţívány pro výrobu a spotřebu. Zahrnují se sem vytěţené suroviny i import
Celkové materiálové poţadavky, TMR (Total Material Requirements) – krom DMI, zahrnují také všechny skryté a nepřímé toky, které jsou spojeny s dovozem a zatěţují ţivotní prostředí v jiných zemích. Jsou to tedy celkové spotřebované zdroje při výrobních činnostech
- Indikátory výstupů
Domácí zpracovaný výstup, DPO(Domestic Processed Output) – celkové materiální výstupy, které vznikly po pouţití v domácím hospodářství tzn. emise, odpady, znečištění vod a rozptýlené uţití výrobků.
Celkový domácí výstup, TDO (Total Domestic Output) – zahrnuje DPO a domácí neuţitou těţbu, tedy celkové mnoţství materiálových výstupů do ţivotního prostředí.
- Indikátory spotřeby
Domácí materiálová spotřeba, DMC (Domestic Material Consuption) – DMI minus vývoz.
Celková materiálová spotřeba, TMC (Total Material Consumption) – Celková potřeba primárních materiálů spojených s domácí spotřebou (neobnovitelné zdroje). TMR minus vývozy a jejich nepřímé toky.
- Hrubý domácí produkt – coţ je celková peněţní hodnota statků a sluţeb vytvořených v určitém čase na určitém území Jednotlivé indikátory jsou zadávány jak absolutně, tak relativně (vzhledem k počtu obyvatel). Mezoúroveň Analýzy na této úrovni slouţí k hodnocení a formování odvětvových a úsekových politik. Indikátory na mezoúrovni tj. sektorové/odvětvové indikátory vyjadřují vazby mezi aktivitami společenských odvětví (doprava, energetika, potravinářský průmysl atd.) a ţivotním prostředím. Protoţe tato odvětví nevyhnutelně zatěţují ţivotní prostředí, dají se indikátory na mezoúrovni pouţít ke zkoumáním lepších a efektivnějších řešení v daných oblastech. Slouţí také k porovnávání jednotlivých odvětví. Indikátory jsou tedy efektivní nástroje na hodnocení integrace environmentálních aspektů do sektorových politik, vyjadřující vývojové trendy v odvětví, propojení mezi odvětvím a ţivotním prostředím a ekonomické vztahy mezi odvětvími a ţivotním prostředím.
2.4 Výpočet indikátorů Vyhodnocení stavu udrţitelného rozvoje je stanoveno pomocí následujících tří prvků.
7
1. Ekonomické přínosy ochranářských aktivit pro životní prostředí - Uvádí zda jsou aktivity v zachovávání ţivotního prostředí rozvoje ekonomicky racionální. Aktivity v oblasti řízení udrţitelného rozvoje lze povaţovat za ekonomicky racionální, jestliţe je kvocient jedna nebo více – to znamená, ţe jsou ekonomické výhody srovnatelné nebo vyšší neţ náklady na ochranu ţivotního prostředí. Vzorec pro výpočet kvocientu: 𝐸𝑘𝑜𝑛𝑜𝑚𝑖𝑐𝑘é 𝑝ří𝑛𝑜𝑠𝑦 𝑁á𝑘𝑙𝑎𝑑𝑦 𝑛𝑎 𝑜𝑐ℎ𝑟𝑎𝑛𝑢 ž𝑖𝑣𝑜𝑡𝑛íℎ𝑜 𝑝𝑟𝑜𝑠𝑡ř𝑒𝑑í Aktivity v zachovávání ţivotního prostředí jsou ekonomicky přínosné, pokud je jejich kvocient jedna nebo více, tzn. součet ekonomických přínosů a sníţení sociálních nákladů je stejný nebo vyšší neţ náklady na ochranu ţivotního prostředí Vzorec pro výpočet kvocientu: 𝐸𝑘𝑜𝑛𝑜𝑚𝑖𝑐𝑘é 𝑝ří𝑛𝑜𝑠𝑦 + 𝑠𝑛íž𝑒𝑛í 𝑠𝑜𝑐𝑖á𝑙𝑛í𝑐ℎ 𝑛á𝑘𝑙𝑎𝑑ů 𝑁á𝑘𝑙𝑎𝑑𝑦 𝑛𝑎 𝑜𝑐ℎ𝑟𝑎𝑛𝑢 ž𝑖𝑣𝑜𝑡𝑛íℎ𝑜 𝑝𝑟𝑜𝑠𝑡ř𝑒𝑑í Rovnice, která je pouţita pro vyhodnocení účinnosti provedených zlepšení ţivotního prostředí uskutečněných činnostmi, které se týkají různých projektů/investicí: 𝑆𝑛𝑖ž𝑜𝑣á𝑛í 𝑑𝑜𝑝𝑎𝑑ů 𝑛𝑎 ž𝑖𝑣𝑜𝑡𝑛í 𝑝𝑟𝑜𝑠𝑡ř𝑒𝑑í 𝑁á𝑘𝑙𝑎𝑑𝑦 𝑛𝑎 𝑜𝑐ℎ𝑟𝑎𝑛𝑢 ž𝑖𝑣𝑜𝑡𝑛íℎ𝑜 𝑝𝑟𝑜𝑠𝑡ř𝑒𝑑í 2. Environmentální účinnosti podnikání – Uvádí vliv podnikatelských činností na ţivotní prostředí a také to, zda jsou tyto činnosti přiměřenou reakcí na potřeby a očekávání veřejnosti. 𝑃𝑟𝑜𝑑𝑒𝑗𝑒 𝐶𝑒𝑙𝑘𝑜𝑣ý 𝑑𝑜𝑝𝑎𝑑 𝑛𝑎 ž𝑖𝑣𝑜𝑡𝑛í 𝑝𝑟𝑜𝑠𝑡ř𝑒𝑑í (𝑓𝑦𝑧𝑖𝑐𝑘á 𝑛𝑒𝑏𝑜 𝑝𝑒𝑛ěž𝑛í 𝑠𝑢𝑚𝑎) Tato rovnice se pouţívá k hodnocení vlivu na ţivotní prostředí a ke zjištění zda je tento vliv přiměřený vzhledem k velikosti podniku 𝑂𝑏𝑐ℎ𝑜𝑑𝑛í č𝑖𝑛𝑛𝑜𝑠𝑡𝑖 𝑝𝑜𝑑𝑛𝑖𝑘𝑢 𝐶𝑒𝑙𝑘𝑜𝑣ý 𝑑𝑜𝑝𝑎𝑑 𝑛𝑎 ž𝑖𝑣𝑜𝑡𝑛í 𝑝𝑟𝑜𝑠𝑡ř𝑒𝑑í (𝑓𝑦𝑧𝑖𝑐𝑘á 𝑛𝑒𝑏𝑜 𝑝𝑒𝑛ěž𝑛í 𝑠𝑢𝑚𝑎) Tato rovnice slouţí k určení, zda obchodní činnost generuje přiměřenou úroveň zisku vzhledem k jeho vlivu na ţivotní prostředí.
8
3. Environmentální management Uvádí, zda jsou procesy managementu ţivotního prostředí, jako například vnitřní audit, místní reporting, rozvoj ekologických technologií, apod. vhodné resp. dostatečné nebo ne. Hlavním cílem předchozích výpočtů je tedy měření ekonomické efektivity aktivit pro zachování ţivotního prostředí a měření environmentální účinnosti obchodních aktivit podniku.[4]
2.5 Projekt Indikátory Aby pomohla s rozvojem environmentálního reportingu v České republice, Masarykova Univerzita vytvořila tým odborníků v čele s panem prof. RNDr. Jiřím Hřebíčkem, CSc., který od roku 2007 pracuje na projektu zadaném Ministerstvem ţivotního prostředí, nazvaném SP/4i2/26/07 „Návrh nových indikátorů pro průběžné monitorování účinnosti systémů environmentálního managementu podle odvětví (NACE) a systému jejich environmentálního reportingu s hodnocením vazeb mezi životním prostředím, ekonomikou a společností“. Celý projekt je rozdělen do tří hlavních etap: 1. V první etapě byla hlavním cílem analýza stavu ekonomických činností podle NACE3 na jejímţ základě byl proveden výzkum, který umoţnil identifikovat stav vývoje ţivotního prostředí a provázanost mezi ţivotním prostředím, ekonomikou a společností s ohledem na zavedené systémy EMS a EMAS 4. Zjištěné vazby se přetvořily do vhodného systému indikátorů pro environmentální reporting a výroční zprávy EMAS pro vybraná odvětví. 2. Cílem druhé etapy bylo vytvoření metodické příručky pro stanovení standardizovaných indikátorů pro environmentální reporting a výroční zprávy EMAS. Tato příručka má usnadnit podnikům provozujícím environmentální reporting, proces jejich hodnocení z pohledu udrţitelného rozvoje. 3. Třetí etapa, která probíhá v době psaní mé bakalářské práce, je zaměřena na vytvoření informačního systému INDIKÁTORY. Tento systém bude zaloţen na volně šiřitelném software a to konkrétně na redakčním systému Joomla!.
3 4
http://wwwinfo.mfcr.cz/ares/nace/ares_nace.html.cz http://ec.europa.eu/environment/emas/index_en.htm
9
2.5.1 Metodická příručka Projekt Indikátory bude podle plánu dokončen v roce 2010 a jeho výstupem bude jiţ dříve zmíněná, metodická příručka, určená pro stanovení standardizovaných indikátorů pro environmentální reporting a výroční zprávy EMAS, která bude umoţňovat hodnocení podniků v daných odvětvích (spotřeba energie, vody, produkce odpadu apod.) a relevantních indikátorech. Tato příručka definuje základní pojmy z oblasti environmentálního reportingu, tak aby zadávání indikátorů do systému bylo co nejsrozumitelnější a nevznikaly ţádné nejasnosti. Zabývá se také vlastními úlohami environmentální komunikace. Ty jsou dvě - je to komunikační nástroj, pomocí kterého organizace buduje svoji důvěru, důvěryhodnost a partnerství. Ale je to také nástroj manaţerský, který slouţí k zajištění systematického řízení přístupu k manaţerským systémům řízení organizace. Touto příručkou se budou řídit podniky, které se tímto dobrovolně zapojí do projektu Indikátory, a tudíţ bude moţné po sesbírání určitého mnoţství dat, poskytnutých těmito podniky, vypočítat průměrné hodnoty a statistiky v jednotlivých indikátorech environmentální výkonnosti. Příručka je rozdělena do devíti částí, kde se kaţdá týká určité oblasti vlivů na ţivotní prostředí. Tyto části jsou: materiálová účinnost, energetická účinnost, vodní hospodářství, odpadové hospodářství, biodiverzita, emise do ovzduší, produkty a sluţby, soulad s legislativou a celkové výdaje a investice na ţivotní prostředí. Obsahem metodické příručky je podrobný popis všech zmíněných částí. Kaţdá část je rozdělena na několik konkrétních činností, kde ke kaţdé činnosti se vztahují tři hodnoty - hodnota A, která uvádí celkové roční vstupy/dopady v dané oblasti, hodnota B, která uvádí celkové roční výstupy organizace a hodnota R, coţ je poměr A/B.[5] Organizace, které se do projektu Indikátory zaregistrují se dělí v podstatě na: 1. Organizace pracující ve výrobním sektoru (průmysl OKEČ D), které do hodnoty B uvedou roční hrubé přidané hodnoty5 vyjádřené v milionech Kč.
v malých organizacích se uvede celkový roční obrat nebo počet zaměstnanců
2. Organizace v nevýrobním sektoru (sluţby, správa, tj. OKEČ G aţ P), které do hodnoty B uvedou počet zaměstnanců
5
HDP organizace + daně – státní dotace na výrobky
10
2.5.2 Informační systém INDIKÁTORY Druhým hlavním výstupem projektu bude informační systém Indikátory, který bude zaloţen na současných volně šiřitelných informačních technologiích, a bude podporovat výpočet systému standardizovaných indikátorů pro environmentální reporting. Budou jej také moci vyuţívat i uţivatelé se zavedeným systém EMS a EMAS. Bude kladen důraz na to, aby měli uţivatelé systému dostupnou on-line metodickou příručku a vyvinutý software a na základě vyplněných údajů se jim automaticky generovaly indikátory a “Výroční zpráva” EMAS. Vzhledem k povaze řešeného projektu budou pouţity následující metody softwarového inţenýrství: -
analýza technologií projektování a provozu informačních systémů
-
metody analýzy pouţitých ICT v daných IS
-
metody analýzy legislativy a organizačního rámce
-
identifikace a zhodnocení technologických a komunikačních standardů
-
metody měření jakosti softwarových produktů
Informační systém bude úzce spojen se samotnou Metodickou příručkou, ze které bude celý jeho koncept v podstatě vycházet. Bude v něm moţné generovat údaje všech podniků, které do projektu Indikátory poskytly svoje data. Bude moţné zobrazit celkové statistiky a porovnání jednotlivých ročních výsledků podniků. Hlavním úkolem mé bakalářské práce bude návrh a implementace části informačního systému Indikátory dostupného na stránkách projektu 6, který bude ve formě formuláře sloţeného z více kroků, slouţit k ukládání zadaných indikátorů různých podniků do databáze, jejíţ strukturu budu mít také za úkol navrhnout.
6
http://projects.cba.muni.cz/indikatory/
11
3
Analýza
V analytické části mé bakalářské práce jsem vyuţil princip strukturované analýzy, konkrétně metodiku YMSA (Yourdonova Moderní Strukturovaná Analýza), kterou v roce 1989 představil Edward Yourdon. YMSA se zaměřuje na nalezení esenciálního modelu systému, který je hlavní podstatou systému a nezávisí na implementačních omezeních. Hlavním úkolem této metodiky je stanovení, co je a co není součástí systému. Skládá se ze dvou modelů – Model okolí systému a Model chování systému. Model okolí systému se zaměřuje na rozhraní mezi systémem a jeho celkovým okolím. Zkoumá pohled a události z vnějšího světa, které nějakým způsobem ovlivňují systém. Na druhou stranu Model chování systému zkoumá jeho vnitřní chování a události probíhající pouze uvnitř systému.
3.1 Účel systému Hlavním přínosem informačního systému INDIKÁTORY bude sběr podnikových zpráv, a také výpočet standardizovaných indikátorů za určitý časový interval (zpravidla za jeden rok) všech podniků registrovaných v systému. Díky sesbíraným datům bude tedy v konečném důsledku moţné vyvodit úroveň jednotlivých podniků, zjistit nejhorší resp. nejlepší výsledky jednotlivých podniků v jednotlivých letech, porovnat celkové výsledky v rámci celé České republiky. Vyvinutý systém bude reflektovat poţadavky Ministerstva ţivotního prostředí a zavede nový normovaný systém ve sběru indikátorů, který doposud na úrovni udrţitelného rozvoje v České republice chyběl. Průběţné sledování vývoje ţivotního prostředí podle vybraných odvětví se tudíţ stane o poznání snazší.
3.2 Uživatelé -
Návštěvník (odborná veřejnost) – odbornou veřejností jsou myšleny různé spolky a organizace, zabývající se udrţitelným rozvojem, ţivotním prostředím, environmentální politikou, tvorbou zákonů a pravidel týkajících se ţivotního prostředí, ale také například politické a státní orgány, které dohlíţí na správu a dodrţování zákonů týkajících se vztahů mezi podniky a ţivotním prostředím.
-
Návštěvník (široká veřejnost) – do této skupiny se řadí všichni ti, kteří se zajímají o ţivotní prostředí, nebo ti kteří chtějí určité informace týkající se podniku, ve kterém můţou, ale nemusí být v nějakém vzájemném vztahu. Tyto informace pak posilňují důvěryhodnost podniku vzhledem k těmto jejich zákazníkům. Odbornou i širokou veřejnost budu dále v diagramu prezentovat jako jednu entitu, protoţe jsou jejich funkční poţadavky na systém totoţné.
-
Administrátor – administrátor je speciální případ uţivatele, který má na starosti správu systému a jeho bezchybný chod. Dále také provádí veškeré změny ve struktuře a funkčních resp. nefunkčních poţadavcích systému. Administrátor má
12
dohled nad celou databází registrovaných podniků a jejich indikátorů. Můţe rovněţ vykonávat různé implementační změny v systému. -
Uživatel – tito uţivatelé jsou zpravidla podniky nebo osoby jimi pověřené, které se dobrovolně nebo z důvodů určitých nařízení zapojily do programu Indikátory a tudíţ poskytují svoje údaje tomuto systému. Registrovat se můţe kaţdý podnik, který korektně a pravdivě vyplní registrační formulář, do kterého mimo jiné zadá své IČO, adresu sídla podniku, název podniku, email, telefon, ale také předmět hlavní činnosti podle NACE.
3.3 Seznam událostí Uţivatel: U1: Registruje podnik (F) U2: Ruší registraci podniku (F) U3: Přidává report (F) U4: Poţaduje zobrazení reportu (C) U5: Edituje svůj účet (F) U6: Edituje svůj report (F) U7: Přihlašuje se do systému (F) U8: Odhlašuje se ze systému (C) Administrátor: U8: Přidává uţivatele (F) U9: Odebírá uţivatele (C) U10: Mění své přihlašovací údaje (F) U11: Poţaduje zobrazení reportu podle parametru (F) U12: Mění přihlašovací údaje podniku (F) U13: Poţaduje zobrazení statistik (C) Návštěvník: U14: Poţaduje zobrazení reportu podle parametru (F) U15: Poţaduje zobrazení statistik (F) U16: Poţaduje zobrazení podniků (C) U17: Přihlašuje se k odběru novinek (F) U18: Odhlašuje se z odběru novinek (C) U19: Poţaduje export reportu do PDF (C) U20: První den v měsíci – odebírá novinky (T) U21: Registruje se (F)
13
3.4 Kontextový diagram Další částí modelu okolí je kontextový diagram, který znázorňuje systém a jeho vztahy s okolím. Jde o základní model, podle kterého je znázorněno hlavní chování systému.
Obrázek 3 – Kontextový diagram
14
3.5 DFD Dále zde uvedu pro lepší přehlednost první dvě úrovně DFD modelu, který v podstatě navazuje na kontextový diagram, s rozdílem ţe jsou podrobněji popsány jednotlivé procesy a do diagramů přibudou paměti, do kterých se ukládají zpracovávaná data.
Obrázek 4 – DFD 1. úrovně
Pro zjednodušení jsem v mé práci vynechal prvotní model chování a přejdu přímo k diagramům procesů na niţších vrstvách.
15
Obrázek 5 – DFD 2. úrovně (proces Správa reportů)
Obrázek 6 – DFD 2. úrovně (proces Správa podniků)
DFD 2. úrovně pro proces Správa uţivatelských účtů jsem úmyslně vynechal, protoţe je velmi jednoduchý - obsahuje pouze proces na editaci uţivatelských účtů.
16
Obrázek 7 – DFD 2. úrovně (proces Administrace systému)
3.6 Datový slovník Další částí datového modelu je datový slovník, který je vzhledem k charakteru systému indikátorů poměrně důleţitou součástí. Je to seznam definicí datových prvků systému. Popisuje obsah dat v datových tocích a DFD, entity a atributy na ERD i další klíčová slova, která se vyskytují ve specifikaci systému.[6]
Podnik = @cf_id + uid + recordtime + ipaddress + cf_user_id + organizace +ico+ ulice + mesto + psc + kraj + telefon + email + web + nace cf_id = {číslo} cf_user_id = {číslo} uid = {přípustný znak} recordtime = {číslo}4+ {pomlčka} + {číslo}2+ {pomlčka}+{číslo}2+ {pomlčka} ipaddress = {číslo} organizace = {přípustný znak} ulice = {přípustný znak} mesto = {přípustný znak} psc = {číslo}
17
kraj = [Jihočeský | Jihomoravský | Karlovarský | Královéhradecký | Liberecký | Moravskoslezský | Olomoucký | Pardubický | Plzeňský | Praha | Středočeský | Ústecký | Vysočina | Zlínský] telefon = {číslo} email = {přípustný znak}+ [tečka + {přípustný znak}] + zavináč + {přípustný znak} + tečka + {přípustný znak}2 web = {přípustný znak}+ tečka + {přípustný znak}+ tečka + {přípustný znak} nace = {číslo}2+ tečka + {číslo}2+ tečka + {číslo}2 číslo = [0-9] přípustný znak = [A-Z | a-z | „ |] tečka = “.” zavináč = “@” pomlčka = “-“ Report = @cf_id +uid+recordtime+ipaddress+ cf_user_id + organizace + rok + Materiálová účinnost + Energetická účinnost + Vodní hospodářství + Odpadové hospodářství + Biodiverzita + Emise do ovzduší + Produkty a sluţby + Soulad s legislativou + Celkové výdaje a investice v ŢP cf_id = {číslo} uid = {přípustný znak} recordtime = {číslo}4+ {pomlčka} + {číslo}2+ {pomlčka}+{číslo}2+ {pomlčka} ipaddress = {číslo} cf_user_id = {číslo} organizace = {číslo} rok = 2000{číslo}2012 Materiálová účinnost = Roční hmotnostní tok materiálů + Procento pouţitých recyklovaných vstupních materiálů Energetická účinnost = Celková přímá spotřeba energie + Celková spotřeba obnovitelné energie + Celková nepřímá spotřeba + Ušetřená energie jako výsledek zvýšené úspory a zlepšení efektivity + Sníţení poţadavku na energii jako výsledek iniciativy na poskytnutí produktů a sluţeb, které jsou energeticky efektivní nebo zaloţené na obnovitelných zdrojích energie + Sníţení nepřímé energie jako výsledek iniciativy na sníţení spotřeby nepřímé energie Vodní hospodářství = Celková roční spotřeba vody + Celkový objem recyklované a znovu pouţité vody + Celkový roční objem odpadní vody + Procento recyklované a znovu pouţité vody Odpadové hospodářství = Celková roční produkce odpadu + Celková roční produkce nebezpečného odpadu + Hmotnost transportovaného odpadu + Hmotnost importovaného
18
odpadu + Hmotnost exportovaného odpadu + Hmotnost zpracovaného nebezpečného odpadu + Procento mezinárodně transportovaného odpadu + Celkový počet významných kontaminací Biodiverzita = Vyuţívání půdy + Půda nacházející se, nebo sousedící s chráněným územím + Počet ohroţených druhů zařazených na Červený seznam Světové unie ochrany přírody a seznam národních chráněných druhů s výskytem na území ovlivněném provozem organizace + Velikost vodních nádrţí a přilehlých území signifikantně ovlivněných odtokem odpadních vod z organizace Emise do ovzduší = Celkové roční emise skleníkových plynů + Celkové roční vzdušné emise + Celkové přímé emise skleníkových plynů s uvedením jejich hmotnosti + Celkové nepřímé emise skleníkových plynů s uvedením jejich hmotnosti + Další relevantní nepřímé emise skleníkových plynů s uvedením jejich hmotnosti + Celkové emise látek poškozujících ozónovou vrstvu s uvedením jejich hmotnosti + NOx, SOx a další signifikantní emise do ovzduší s uvedením jejich typu a hmotnosti + Redukce emisí skleníkových plynů Produkty a sluţby = Rozsah sníţení dopadu jako výsledek iniciativy na sníţení environmentálních dopadů činností, produktů a sluţeb organizace + Procento předaných produktů a jejich balících materiálů vrácených výrobcům za účelem recyklace a dalšího zpracování Soulad s legislativou = Finanční hodnota závaţných pokut v důsledku nedodrţení zákonů a nařízení týkajících se ţivotního prostředí + Celkový počet nepeněţních pokut v důsledku nedodrţení zákonů a nařízení týkajících se ţivotního prostředí Celkové výdaje a investice v ŢP = Celkové výdaje a investice na ochranu ţivotního prostředí *Všechny uvedené prvky jednotlivých odvětví mají stejnou datovou strukturu, a proto je zkrátím do následující hodnoty* “Prvek” = {číslo}+{číslo}+{číslo} číslo = [0-9] Uživatel = @id + name + username + email + password + usertype + block + sendEmail + gid + registerDate + lastvisitDate + activation + params id = {číslo} name = {přípustný znak} username = {přípustný znak} email = {přípustný znak}+ [tečka + {přípustný znak}] + zavináč + {přípustný znak} + tečka + {přípustný znak}2 password = {znaková sada} usertype = [Author | Editor | Publisher | Manager | Administrator | Super Administrator] block = [true | false] sendEmail = [true | false] /* Příznak zasílání novinek
19
gid = {číslo} registerDate = {číslo} 4+ {pomlčka} + {číslo}2+ {pomlčka}+{číslo}2+ {pomlčka} lastvisitDate = {číslo} 4+ {pomlčka} + {číslo}2+ {pomlčka}+{číslo}2+ {pomlčka} activation ={ přípustný znak} params = [přípustný znak] email = {Přípustný znak}+ [tečka + {Přípustný znak}] + zavináč + {Přípustný znak} + tečka + {Přípustný znak}2 číslo = [0-9] přípustný znak = [A-Z | a-z] znaková sada = [A-Z | a-z | 0-9 | ASCII] ASCII = *speciální znaky*
3.7 Minispecifikace Jako další uvedu minispecifikaci systémových procesů, podle kterých se budu řídit při implementaci systému. Proces 1.1.1 Zpracování reportů IF (Uţivatel je v tabulce uţivatelé), THEN SELECT: CASE 1 (nový report): Zobraz prázdný formulář k vytvoření reportu, Načti data z vyplněného formuláře, IF zadané údaje jsou správné, THEN Uloţ data do tabulky Reporty. Potvrď uloţení dat ELSE PRINT „Chybně zadané údaje“. CASE 2 (editace stávajícího reportu): Zobraz reporty registrovaného uţivatele, Edituj data vybraného reportu. IF zadané údaje jsou správné, THEN Uloţ změněná data do tabulky Reporty. Potvrď editaci reportu ELSE PRINT „Chybně zadané údaje“. CASE 3 (zobrazení reportů ostatních uţivatelů) Zobraz reporty dle zadaných kritérií. ELSE IF (Uţivatel je administrátor), THEN SELECT CASE 1 (statistiky): Zobraz statistiky jednotlivých reportů dle zadaných kritérií CASE 2 (reporty): Zobraz reporty vybraných podniků. ELSE SELECT CASE 1(reporty): Zobraz reporty vybraných podniků, CASE 2(export): Předej data vybraného reportu procesu 1.1.2
20
Proces 1.1.2 Generování dat z reportů IF (Přijata data z procesu 1.1.1), THEN Exportuj report do formátu PDF. ELSE Nic. IF (Uţivatel přihlášen ke sběru novinek), THEN Zasílej v určitém intervalu na uvedený email seznam nových událostí. ELSE Nic. IF (Uţivatel je návštěvník), THEN Zobraz reporty podniků, Zobraz vybraný report. ELSE Nic. Proces 1.4.2 Přihlašování/odhlašování se do/ze systému IF (Uţivatel je v tabulce Uţivatelé), THEN Přihlas uţivatele. IF (Uţivatel je administrátor), THEN Povol administrátorská práva ELSE Povol práva běţného uţivatele. ELSE PRINT„Uţivatel neexistuje“. Proces 1.4.3 Ověření administrátorských práv IF (Uţivatel je administrátor), THEN Vrať hodnotu TRUE ELSE Vrať hodnotu FALSE. Proces 1.4.1 Provedení změn v systému IF (Proces 1.4.3 vrátí hodnotu TRUE), THEN Povol editaci systémových prvků. ELSE Zamítni poţadavek na provedení změn. Proces 1.3.2 Zobrazení podniků IF (Uţivatel je v tabulce Uţivatelé), THEN Zobraz seznam registrovaných podniků ELSE Nic. Proces 1.3.1 Editace podniků IF (Uţivatel je administrátor), THEN Zobraz seznam podniků z tabulky Podniky, SELECT CASE 1(vytvoř): Zobraz formulář pro vytvoření nového podniku. Načti údaje. IF (načtené údaje jsou správné), THEN Přidej podnik do tabulky Podniky. ELSE PRINT „Chybně zadané údaje“. CASE 2(edituj): Edituj údaje podniku, Uloţ změny do tabulky Podniky,
21
Potvrď editaci údajů. CASE 3(smaţ): Smaţ vybraný podnik z tabulky Podniky. Potvrď smazání podniku. ELSE IF (Uţivatel je v tabulce Uţivatelé), THEN SELECT CASE 1(vytvoř podnik): Zobraz formulář pro vytvoření nového podniku. Načti údaje. IF (načtené údaje jsou správné), THEN Přidej podnik do tabulky Podniky. ELSE PRINT „Chybně zadané údaje“. CASE 2(edituj podnik): Edituj údaje podniku, Uloţ změny do tabulky Podniky, Potvrď editaci údajů. CASE 3(zruš podnik): Smaţ vybraný podnik z tabulky Podniky, Potvrď smazání podniku. ELSE Nic. Proces 1.2.1 Editace uživatelských účtů IF (Uţivatel není v tabulce Uţivatelé), THEN Zobraz prázdný formulář pro zadání nových přihlašovacích údajů, Načti vyplněné údaje, IF (zadané údaje jsou korektní), THEN Uloţ přihlašovací údaje do tabulky Uţivatelé. Potvrď úspěšné uloţení. ELSE PRINT „Špatně zadané údaje“. ELSE IF (Uţivatel je administrátor), THEN Zobraz seznam všech zaregistrovaných uţivatelů z obsahu Uţivatelé. SELECT CASE 1(smaţ): Smaţ záznam vybraného uţivatele z tabulky Uţivatelé. Potvrď smazání záznamu. CASE 2(přidej): Vytvoř nový záznam v tabulce Uţivatelé. Potvrď vytvoření nového záznamu. CASE 3(edituj): Změň vybraný záznam z tabulky Uţivatelé. Potvrď změnu záznamu. ELSE Zobraz údaje přihlášeného uţivatele z obsahu tabulky Uţivatelé. SELECT CASE 1(edituj): Změň záznam přihlášeného uţivatele. Potvrď změnu záznamu. CASE 2(smaţ): Smaţ záznam uţivatele z tabulky Uţivatelé. Potvrď smazání záznamu.
22
3.8 Use Case
23
3.9 ERD
24
4
Implementace
4.1 Technologie použité v projektu Jednou z hlavních zásad systému Indikátory, bylo pouţít pouze volně šiřitelný software. Proto byl pro implementaci systému pouţit redakční systém Joomla spolu s programovacím jazykem PHP a databázovým systémem MySQL. Tyto technologie jsou všechny volně dostupné a zároveň poměrně oblíbené a tudíţ široce rozšířené.
4.1.1 Joomla! Celý web projektu, ale i samotný systém Indikátory je zaloţen na volně šiřitelném redakčním systému Joomla!. Tento systém je navrţen pro správu webového obsahu a podporuje mnoho funkcí jako například cashing, indexaci stránek, RSS, blogy, články, kalendář, vícejazyčné verze atd. První verze Joomly byla vydána v roce 1995 a byla téměř shodná se systémem Mambo, kde byly pouze opraveny některé bezpečnostní chyby.[7] Aktuální stabilní verze, na které je systém postaven je 1.5.15. K implementaci samotného formuláře pro zadávání indikátorů a spojení s databází indikátorů jednotlivých podniků byl pouţit modul Chronoform, který byl speciálně navrţen pro tvorbu formulářů a k tomuto účelu se tudíţ výborně hodí.
4.1.2 Přídavná komponenta Chronoform Pro tvorbu formulářů k zadávání reportů a registraci firem jsem v redakčním systému Joomla, pouţil přídavnou komponentu Chronoform, která je volně ke staţení na stránkách věnovaných podpoře a vývoji této komponenty7. Za poplatek je moţné odstranit z formulářů odkaz na tyto stránky, který se k formulářům automaticky přidává a poplatkem lze také podpořit další vývoj této komponenty. Já jsem problém s automaticky přidávanými odkazy vyřešil tím způsobem, ţe jsem do jejich vlastností dal atribut invisible, která je skryla a tento postup je dle vývojářů komponenty povolen.
4.1.3 PHP Určité části jako například návrh struktury formulářů, generování dat z databáze, ukládání dat do databáze, výpočet statistik atd. musely být dodatečně naprogramovány v jazyce PHP8, v němţ je mimochodem celá Joomla napsána. Je to skriptovací programovací jazyk určený k programování dynamických prvků internetových stránek. Kód PHP se začleňuje přímo do struktury jazyka HTML, resp. XHTML. Skript kódu je vykonáván na straně serveru a uţivateli jsou předány pouze výsledky tohoto skriptu.[8] Tím odpadají výpočetní nároky systému uţivatele, ale na druhou stranu přibývají na straně serveru.
7 8
http://www.chronoengine.com/ http://www.php.net/
25
4.1.4 MySQL Celý systém Indikátory vyuţívá databáze MySQL (to z toho důvodu, ţe ji pouţívá Joomla!). Jedná se také o volně šiřitelný software, jenţ byl vyvinut švédskou firmou MySQL AB. V současné době je MySQL asi nejpouţívanějším typem databáze pouţívané při tvorbě internetových aplikací. Systém s databází komunikuje pomocí jazyka SQL.
4.2 Popis tvorby systému za pomoci nástroje Chronoform Prvotní cíl bylo vytvořit dva formuláře, z nichţ jeden by zajišťoval registraci nového podniku a skládal se pouze z jednostránkového a v celku jednoduchého formuláře a druhý by shromaţďoval reporty do databáze. Ten jsem se ovšem pro lepší přehlednost rozhodnul udělat z formuláře sloţeného z více-kroků. Vzhledem k tomu, ţe čistá instalace Joomly je zaměřena především na tvorbu internetových článků stávajících převáţně z textu a obrázků a není pro tvorbu formulářů příliš ideální, se komponenta Chronoform jevila jako velmi vhodné řešení pro tento účel. Komponenta sice nabízí intuitivního průvodce pro tvorbu jednoduchých formulářů, kde jednotlivé komponenty formuláře “poskládáme” do výsledné podoby, avšak pro tvorbu mých formulářů nebyl dostačující.
Obrázek 8 - Průvodce vytvořením formuláře
Proto jsem vyuţil moţnosti dopsat hlavní zdrojový kód formuláře ve správci formulářů. V tomto správci formulářů jsou tři okna, z nichţ první je určené pro kód klasického HTML spojeného s PHP, druhé pro kód CSS a třetí pro funkce Javascriptu. Při psaní kódu se musí brát ohled na to, ţe vývojář píše kód pouze pro formulář, a tím pádem vynechává klasické tagy ,