Table Of ContentInovace aplikace Paveza společnosti NWT a.s. pro
přechod na nový databázový engine
Bc. Petr Malý
Diplomová práce
2014
Příjmení a jméno: Bc. Petr Malý Obor: Informační technologie
P R O H L Á Š E N Í
Prohlašuji, že
beru na vědomí, že odevzdáním diplomové práce souhlasím se zveřejněním své práce
podle zákona č. 111/1998 Sb. o vysokých školách a o změně a doplnění dalších zá-
konů (zákon o vysokých školách), ve znění pozdějších právních předpisů, bez ohledu
na výsledek obhajoby 1);
beru na vědomí, že diplomová práce bude uložena v elektronické podobě v univer-
zitním informačním systému dostupná k nahlédnutí, že jeden výtisk diplomové práce
bude uložen v příruční knihovně Fakulty aplikované informatiky Univerzity Tomáše
Bati ve Zlíně a jeden výtisk bude uložen u vedoucího práce;
byl jsem seznámen s tím, že na moji diplomovou práci se plně vztahuje zákon č.
121/2000 Sb. o právu autorském, o právech souvisejících s právem autorským a o
změně některých zákonů (autorský zákon) ve znění pozdějších právních předpisů,
zejm. § 35 odst. 3 2);
beru na vědomí, že podle § 60 3) odst. 1 autorského zákona má UTB ve Zlíně právo
na uzavření licenční smlouvy o užití školního díla v rozsahu § 12 odst. 4 autorského
zákona;
beru na vědomí, že podle § 60 3) odst. 2 a 3 mohu užít své dílo – diplomovou práci
nebo poskytnout licenci k jejímu využití jen s předchozím písemným souhlasem Uni-
verzity Tomáše Bati ve Zlíně, která je oprávněna v takovém případě ode mne poža-
dovat přiměřený příspěvek na úhradu nákladů, které byly Univerzitou Tomáše Bati
ve Zlíně na vytvoření díla vynaloženy (až do jejich skutečné výše);
beru na vědomí, že pokud bylo k vypracování diplomové práce využito softwaru po-
skytnutého Univerzitou Tomáše Bati ve Zlíně nebo jinými subjekty pouze ke studij-
ním a výzkumným účelům (tedy pouze k nekomerčnímu využití), nelze výsledky
diplomové práce využít ke komerčním účelům;
beru na vědomí, že pokud je výstupem diplomové práce jakýkoliv softwarový pro-
dukt, považují se za součást práce rovněž i zdrojové kódy, popř. soubory, ze kterých
se projekt skládá. Neodevzdání této součásti může být důvodem k neobhájení práce.
Ve Zlíně
...................................................
1) zákon č. 111/1998 Sb. o vysokých školách a o změně a doplnění dalších zákonů (zákon o vysokých školách), ve znění pozdějších právních
předpisů, § 47 Zveřejňování závěrečných prací:
(1) Vysoká škola nevýdělečně zveřejňuje disertační, diplomové, bakalářské a rigorózní práce, u kterých proběhla obhajoba, včetně po-
sudků oponentů a výsledku obhajoby prostřednictvím databáze kvalifikačních prací, kterou spravuje. Způsob zveřejnění stanoví vnitřní
předpis vysoké školy.
(2) Disertační, diplomové, bakalářské a rigorózní práce odevzdané uchazečem k obhajobě musí být též nejméně pět pracovních dnů před
konáním obhajoby zveřejněny k nahlížení veřejnosti v místě určeném vnitřním předpisem vysoké školy nebo není-li tak určeno, v místě
pracoviště vysoké školy, kde se má konat obhajoba práce. Každý si může ze zveřejněné práce pořizovat na své náklady výpisy, opisy nebo
rozmnoženiny.
(3) Platí, že odevzdáním práce autor souhlasí se zveřejněním své práce podle tohoto zákona, bez ohledu na výsledek obhajoby.
2) zákon č. 121/2000 Sb. o právu autorském, o právech souvisejících s právem autorským a o změně některých zákonů (autorský zákon)
ve znění pozdějších právních předpisů, § 35 odst. 3:
(3) Do práva autorského také nezasahuje škola nebo školské či vzdělávací zařízení, užije-li nikoli za účelem přímého nebo nepřímého
hospodářského nebo obchodního prospěchu k výuce nebo k vlastní potřebě dílo vytvořené žákem nebo studentem ke splnění školních nebo
studijních povinností vyplývajících z jeho právního vztahu ke škole nebo školskému či vzdělávacího zařízení (školní dílo).
3) zákon č. 121/2000 Sb. o právu autorském, o právech souvisejících s právem autorským a o změně některých zákonů (autorský zákon)
ve znění pozdějších právních předpisů, § 60 Školní dílo:
(1) Škola nebo školské či vzdělávací zařízení mají za obvyklých podmínek právo na uzavření licenční smlouvy o užití školního díla (§ 35
odst. 3). Odpírá-li autor takového díla udělit svolení bez vážného důvodu, mohou se tyto osoby domáhat nahrazení chybějícího projevu
jeho vůle u soudu. Ustanovení § 35 odst. 3 zůstává nedotčeno.
(2) Není-li sjednáno jinak, může autor školního díla své dílo užít či poskytnout jinému licenci, není-li to v rozporu s oprávněnými zájmy
školy nebo školského či vzdělávacího zařízení.
(3) Škola nebo školské či vzdělávací zařízení jsou oprávněny požadovat, aby jim autor školního díla z výdělku jím dosaženého v souvislosti
s užitím díla či poskytnutím licence podle odstavce 2 přiměřeně přispěl na úhradu nákladů, které na vytvoření díla vynaložily, a to podle
okolností až do jejich skutečné výše; přitom se přihlédne k výši výdělku dosaženého školou nebo školským či vzdělávacím zařízením z užití
školního díla podle odstavce 1.
ABSTRAKT
Intranetová aplikace PAVEZA byla vytvořena společností NWT a.s., aby svým zákazníkům
pomohl s administrací spojenou se zadáváním a správou veřejných zakázek. V současné
době aplikace komunikuje pouze s databázovým enginem Oracle. Společnost NWT se
rozhodla rozšířit kompatibilní datové úložiště o Microsoft SQL Server. Cílem této práce je
návrh a realizace tohoto přechodu.
Klíčová slova: Microsoft SQL Server, Oracle, PAVEZA, veřejné zakázky, .NET
ABSTRACT
Intranet PAVEZA application was developed by NWT a.s. to help its customers with
administration associated with awarding and managment of public contracts. By now is the
Oracle database only database engine, which PAVEZA application can cooperate with.
NWT company wants to extend compatible database engines of Microsoft SQL Server. The
aim of this thesis is to design and implement this functionality.
Keywords: Microsoft SQL Server, Oracle, PAVEZA, Public Contracts, .NET
OBSAH
ÚVOD .................................................................................................................................. 10
I TEORETICKÁ ČÁST .................................................................................................... 11
1 APLIKACE PAVEZA ............................................................................................. 12
1.1 O SPOLEČNOSTI NWT A.S. ................................................................................... 12
1.2 O APLIKACI PAVEZA .......................................................................................... 15
1.2.1 Modul plánování .......................................................................................... 17
1.2.2 Modul veřejných zakázek ............................................................................ 18
1.2.3 Zákazníci ...................................................................................................... 20
1.3 VEŘEJNÉ ZAKÁZKY V ČR ..................................................................................... 21
1.3.1 Historie veřejných zakázek v ČR ................................................................. 21
1.3.2 Veřejné zakázky ........................................................................................... 22
1.3.3 Zadávací řízení ............................................................................................. 23
1.3.4 Zadávání VZ ................................................................................................. 24
1.3.5 Vymezení elektronických prostředků .......................................................... 24
1.3.6 Požadavky na elektronické nástroje ............................................................. 25
1.3.7 Elektronizace veřejných zakázek ................................................................. 26
1.3.8 Problémy se zadáváním VZ ......................................................................... 28
2 DATABÁZOVÉ ENGINY ....................................................................................... 29
2.1 DATABÁZOVÝ ENGINE ORACLE ............................................................................ 29
2.1.1 Verze Oracle DB .......................................................................................... 29
2.1.2 Oracle DB 12c .............................................................................................. 30
2.1.3 PL/SQL ........................................................................................................ 31
2.2 DATABÁZOVÝ ENGINE SQL SERVER .................................................................... 31
2.2.1 Verze SQL Server ........................................................................................ 31
2.2.2 SQL Server 2012 .......................................................................................... 32
2.2.3 T-SQL .......................................................................................................... 32
2.3 ODLIŠNOSTI DATABÁZÍ ORACLE A SQL SERVER .................................................. 33
2.3.1 Datové typy .................................................................................................. 33
2.3.2 DML ............................................................................................................. 36
II PRAKTICKÁ ČÁST ...................................................................................................... 39
3 NÁVRH A REALIZACE PŘECHODU NA NOVÝ DB ENGINE ...................... 40
3.1 POUŽITÉ TECHNOLOGIE ........................................................................................ 40
3.1.1 .NET Framework .......................................................................................... 40
3.2 POUŽITÉ VÝVOJOVÉ NÁSTROJE ............................................................................. 41
3.2.1 Microsoft Visual Studio ............................................................................... 41
3.2.2 SQL Server Management Studio ................................................................. 42
3.3 NÁVRH ŘEŠENÍ ..................................................................................................... 43
3.3.1 UniCommand ............................................................................................... 45
3.3.2 UniInsert ....................................................................................................... 45
3.3.3 UniSelect ...................................................................................................... 45
3.3.4 UniUpdate .................................................................................................... 46
3.3.5 UniDelete ..................................................................................................... 46
3.3.6 UniFunction .................................................................................................. 46
3.3.7 UniProcedure ................................................................................................ 46
3.4 IMPLEMENTACE NAVRŽENÉHO ŘEŠENÍ ................................................................. 47
3.4.1 Implementace UniInsert ............................................................................... 47
3.4.2 Implementace UniSelect .............................................................................. 49
3.4.3 Implementace UniUpdate ............................................................................. 51
3.4.4 Implementace UniDelete .............................................................................. 52
3.4.5 Implementace UniFunction .......................................................................... 54
3.4.6 Implementace UniProcedure ........................................................................ 55
3.4.7 Testování provedených změn ....................................................................... 56
4 VYHODNOCENÍ PROVEDENÝCH ÚPRAV ...................................................... 57
ZÁVĚR ............................................................................................................................... 59
SEZNAM POUŽITÉ LITERATURY .............................................................................. 60
SEZNAM POUŽITÝCH SYMBOLŮ A ZKRATEK ..................................................... 62
SEZNAM OBRÁZKŮ ....................................................................................................... 63
SEZNAM TABULEK ........................................................................................................ 64
UTB ve Zlíně, Fakulta aplikované informatiky 10
ÚVOD
Trendem několika minulých a budoucích let v oblasti veřejných zakázek je jejich kompletní
elektronizace a to nejen v České republice, ale po celém světě. Elektronizace veřejných za-
kázek přináší řadu výhod, mezi které nesporně patří snížení administrativní zátěže zadava-
tele i dodavatele, se kterým souvisí dále např. snížení personálních nákladů. Je třeba však
řešit i spoustu problémů, které se zadáváním a obecně vedením veřejných zakázek v elek-
tronické podobě souvisejí. Pro efektivní plánování a evidenci veřejných zakázek byla spo-
lečností NWT a.s. vytvořena aplikace PAVEZA, jež je předmětem této diplomové práce.
Aplikace PAVEZA přináší úsporu nákupů ve formě jejich sdružení, snížení personálních
nákladů, eliminuje riziko pokut vlivem porušení zákona o veřejných zakázkách atd. Její vy-
užití je však možné pouze se zakoupenými licencemi Oracle databáze, což je jediný databá-
zový engine, nad kterým je schopna aplikace PAVEZA pracovat. Cílem této práce je návrh
a realizace řešení přechodu na databázový engine SQL Server, s přihlédnutím k možnosti
v budoucnu aplikaci PAVEZA rozšířit pro práci nad dalšími databázovými enginy.
Teoretická část práce se analyzuje současný stav aplikace PAVEZA, okrajově se věnuje spo-
lečnosti NWT a.s., které je autorem této aplikace, dále se věnuje veřejným zakázkám v České
republice včetně fáze jejich elektronizace a vlastnostem elektronických nástrojů, které vy-
hovují zákonu o veřejných zakázkách a v poslední části zkoumá oba databázové enginy (stá-
vající a DB engine, na který aplikace PAVEZA přechází) a jejich odlišnosti.
V praktické části je navrhnut postup řešení, ukázány principiální části implementace a je
zhodnocen přínos realizovaných změn.
Description:Inovace aplikace Paveza společnosti NWT a.s. pro přechod na nový (DMS, spisová služba) x nelze Obr. 8 - Vývojové prostředí Microsoft Visual Studio 2010. Visual Studio přepsáno do WPF, změnil se i design UI, který se nyní více podobá UI Microsoft Visual .. Apress, 2013, xxviii, 65