Zdrojový kód wiki Postup převodu dat z Clavia

Version 57.1 by Jan Šimeček on 2024/11/18 10:33

Hide last authors
Jan Šimeček 1.1 1
2
3 = Záloha dat Clavia pro převod do Tritia =
4
Jan Šimeček 2.1 5 Postup pro malé knihovny k poslání je zde: [[Záloha dat Clavia pro převod do Tritia>>doc:.Zaloha-dat-Clavia-pro-prevod-do-Tritia.WebHome]]
Jan Šimeček 1.1 6
7 = Převod =
8
9 == Tipy a Triky ==
10
Jan Šimeček 14.1 11 {{html}}
Jan Šimeček 23.1 12 <button onclick="toggleContent('content1')">Tipy a Triky - přečíst</button>
13 <div id="content1" style="display: none;">
Jan Šimeček 40.1 14 <hr style="border: none; height: 5px; background-color: black;">
Jan Šimeček 18.1 15 <p>Revize se nepřevádí, musí být před zahájením převodu do Tritia uzavřena.</p>
16 <p>Dispečink Clavia se nepřevádí, pokud data potřebují, tak si je musí před vypnutím Clavia opsat.</p>
17 <p>Statistiky LWWW se nepřevádí, knihovna si je musí opsat.</p>
18 <p>Neměnit klíč v definici poplatků po testovacím převodu, nepovede se pak napojení poplatků při dalším importu - měnit až po posledním importu knihovny.</p>
19 <p>Neměnit zkratky v odděleních, nebude fungovat vazba výchozího oddělení čtenáře - měnit až po ostrém startu.</p>
Jan Šimeček 40.1 20 <hr style="border: none; height: 5px; background-color: black;">
Jan Šimeček 14.1 21 </div>
Jan Šimeček 16.1 22 <script>
Jan Šimeček 23.1 23 function toggleContent(contentId) {
24 var content = document.getElementById(contentId);
Jan Šimeček 16.1 25 if (content.style.display === "none") {
26 content.style.display = "block";
27 } else {
28 content.style.display = "none";
29 }
30 }
31 </script>
Jan Šimeček 14.1 32 {{/html}}
Jan Šimeček 1.1 33
34 == Příprava převodu ==
35
Jan Šimeček 2.1 36 * Zeptat se knihovny před převodem: [[Dotazy na knihovnu před převodem>>doc:.Dotazy-na-knihovnu-pred-prevodem.WebHome]]
Jan Šimeček 7.1 37 * Zálohu rozbalovat přes **{{html}}<span style="color: red;">Total Commander </span>{{/html}}**- ne přes Windows průzkumníka!!!
Jan Šimeček 1.1 38
Jan Šimeček 7.1 39 1. **{{html}}<span style="color: green;">Aktualizovat Clavius</span>{{/html}}** na současnou verzi (Pomůcky → Update přes internet)
40 1. **{{html}}<span style="color: green;">Provést synchronizaci polí</span>{{/html}}** (Pomůcky → Editace polí → Sync → Aktualizovat)
41 1. **{{html}}<span style="color: green;">Provést kontrolu integrit dat </span>{{/html}}**(chyby opravovat !!! hlavně dogenerovat autority a smazat chybná pole)
Jan Šimeček 1.1 42 1*. Katalogizace:
43 1**. **do integrit with .t.,.t. **( lze využít i příkazu **do tritius** , dělá to samé )
44 1***. vyzve ke sloučení slovníků C1 a C3 do C1 - dát ano
45 1**. **do OKindik with .T.**
46 1*. Výpůjčák
47 1**. Clex.exe → Systém → Provést Kontrolu integrity dat)
Jan Šimeček 7.1 48 1. **{{html}}<span style="color: green;">pohled([select !s.scislo, s.pcislo, s.ucislo, #s.ckod from svazky s, (select ckod from svazky group by ckod having count(*)>1) s1 where s.ckod<>'' and s.ckod=s1.ckod order by s.ckod])</span>{{/html}}**
Jan Šimeček 1.1 49 1*. duplicity čárových kódů svazků řešit ve foxíku tak že za čárový kód přídáte písmeno a,b,c ...  kromě prvního výskytu čárového kódu
Jan Šimeček 12.1 50 1. **{{html}}select isxn, count(*) as pocet from tituly group by isxn order by pocet desc{{/html}}**
Jan Šimeček 52.1 51 1*. kontrola na duplicitu ISBN -> opravit hromadně v TAGu
Jan Šimeček 1.1 52
53 == Vlastní export dat z Clavia - automaticky (verze Clavia od 28.2.2019) ==
54
Jan Šimeček 14.1 55 * **{{html}}<span style="color: red;">Pokud se jedná o reksové centrum, musí export probíhat pod uživatelem Správce Reksu!!</span>{{/html}}** ( Systém - Servis dat - Výběr jiné knihovny - zaškrtnout Správce REKSu - OK )
Jan Šimeček 1.1 56 * Při importu REKS knihovny = přečíst oddíl 2.5 ( možná úprava svazků v Claviu )
57 * ve foxíku spustit:
58 * **do FULLEXPORT**
59 ** -vyzve ke kontrole OKAcisla - dát ano a lze jít spát, bude následně automaticky pokračovat export tagů
60 * TAG soubory se automaticky vygenerují do složky TXT ve složce Clavius
61
62 == Příprava CLAVIUS SQL ==
Jan Šimeček 32.1 63
Jan Šimeček 31.1 64 {{html}}
Jan Šimeček 41.1 65 <button onclick="toggleContent('content4')">O programu NASQL</button>
Jan Šimeček 31.1 66 <div id="content4" style="display: none;">
Jan Šimeček 40.1 67 <hr style="border: none; height: 5px; background-color: black;">
Jan Šimeček 32.1 68 <p>Pro převod dat akvizice, výpůjčního protokolu a další částí se používá přímý převod do Tritiia z SQL databáze Clavius.
69 <p>Proto je nutné převést celý Clavius do SQL (lze využít SQL server pro Tritius), tento krok lze vynechat jen pokud se importuje pouze fond.
70 <p>Je zapotřebí použít program <b>NASQL.exe</b></p>
Jan Šimeček 40.1 71 <hr style="border: none; height: 5px; background-color: black;">
Jan Šimeček 31.1 72 </div>
73 <script>
74 function toggleContent(contentId) {
75 var content = document.getElementById(contentId);
76 if (content.style.display === "none") {
77 content.style.display = "block";
78 } else {
79 content.style.display = "none";
80 }
81 }
82 </script>
83 {{/html}}
Jan Šimeček 1.1 84
85 == Importování knihovny pokud v cílovém Tritiu již je část svazků (např. Výměnné soubory) ==
86
Jan Šimeček 57.1 87 {{html}}
88 <span style="color: red;">Při importu např. na Lounský serveru je někdy VF v Claviu jako vlastní fond, a u některých VF svazků v Claviu je v čárovém jiný prefix, něž mají Louny, takže se importem nerozpozná, že jde o duplicitu. Je potřeba toto při každém importu REKSovky do Tritia pečlivě hlídat.</span>
89 {{/html}}
90
Jan Šimeček 1.1 91 V případě připojování dat je nutná existence čárového kódu v tabulce svazky u výměnných souborů, aby došlo ke správnému napárování:
92
Jan Šimeček 42.1 93 {{html}}
94 <button onclick="toggleContent('content2')">Postup kontroly a příkazy pro vygenerování</button>
Jan Šimeček 25.1 95 <div id="content2" style="display: none;">
Jan Šimeček 40.1 96 <hr style="border: none; height: 5px; background-color: black;">
Jan Šimeček 30.1 97 <p><b>Kontrola dat v Claviu, jestli obsahují vygenerovaný správně ckod, kdy 31840 - je prefix nadřízené knihovny:</b></p>
Jan Šimeček 27.1 98 <br>
99 <p>browse for betw(val(pcislo),500000,599999) and !empt(ckod) and ckod<>'31840'</p>
100 <br>
Jan Šimeček 30.1 101 <p><b>Pokud nic nevrátí, tak netřeba dělat! V opačném případě je potřeba předem dogenerovat do svazky.ckod čárový kód s prefiem nadřízené knihovny:</b></p>
Jan Šimeček 27.1 102 <br>
103 <p>browse for betw(val(pcislo),500000,599999) and betw(len(allt(ckod)),0,8)</p>
104 <br>
105 <p>repl ckod with '31840'+padl(allt(pcislo),8,'0') for betw(val(pcislo),500000,599999) and betw(len(allt(ckod)),0,8)</p>
106 <p>repl ckod with '31840'+right(ckod,7) for betw(val(pcislo),500000,599999) and !empt(ckod) and ckod<>'31840'</p>
Jan Šimeček 40.1 107 <hr style="border: none; height: 5px; background-color: black;">
Jan Šimeček 25.1 108 </div>
109 <script>
110 function toggleContent(contentId) {
111 var content = document.getElementById(contentId);
112 if (content.style.display === "none") {
113 content.style.display = "block";
114 } else {
115 content.style.display = "none";
116 }
117 }
Jan Šimeček 42.1 118 </script>
119 {{/html}}
Jan Šimeček 29.1 120
Jan Šimeček 28.1 121 Je nutné zkontrolovat u VS, aby svazky měli {{html}}<span style="color: red;">vyplněný</span>{{/html}} CKOD (viz výše) a poté {{html}}<span style="color: red;">PIDKN</span>{{/html}} obsahovalo znak {{html}}<span style="color: red;">˙</span>{{/html}} :
Jan Šimeček 29.1 122
Jan Šimeček 30.1 123 {{html}}
124 <button onclick="toggleContent('content3')">Postup kontroly a příkazy pro vygenerování</button>
Jan Šimeček 29.1 125 <div id="content3" style="display: none;">
Jan Šimeček 40.1 126 <hr style="border: none; height: 5px; background-color: black;">
Jan Šimeček 30.1 127 <p><b>Kontrola:</b></p>
Jan Šimeček 28.1 128 <p>pohled("SELECT * FROM svazky where ckod <> ' ' AND ckod not like 'prefixImportovaneREKSovky%' AND pidkn != '˙'")</p>
129 <p></p>
Jan Šimeček 54.1 130 <p>- Zontrolovat okem, ujistit se že jsou to VS a až pak opravit.</p>
Jan Šimeček 30.1 131 <p><b>Oprava:</b></p>
Jan Šimeček 28.1 132 <p>pohled("UPDATE svazky SET pidkn = '˙' where ckod <> ' ' AND ckod not like 'prefixImportovaneREKSovky%' AND pidkn != '˙'")</p>
Jan Šimeček 40.1 133 <hr style="border: none; height: 5px; background-color: black;">
Jan Šimeček 28.1 134 </div>
135 <script>
136 function toggleContent(contentId) {
137 var content = document.getElementById(contentId);
138 if (content.style.display === "none") {
139 content.style.display = "block";
140 } else {
141 content.style.display = "none";
142 }
143 }
Jan Šimeček 30.1 144 </script>
145 {{/html}}
Jan Šimeček 29.1 146
Jan Šimeček 1.1 147 //Rozdíly oproti bodu 2.6.2 Import dat~://
148
Jan Šimeček 33.1 149 1. **{{html}}<span style="color: green;">Díla:</span>{{/html}}**
Jan Šimeček 1.1 150
Jan Šimeček 34.1 151 * vybrat v roletce pro duplicity: {{html}}<span style="color: red;">Kontroluje duplicitu čárových kódů - duplicitní čárové kódy neimportuje a nepřidá je failed souboru</span>{{/html}}
152 ** doporučuji použít až na druhý pokus a okem zkontrolovat, že jsou to opravdu duplicity s knihovnou, která už je na serveru
Jan Šimeček 1.1 153
Jan Šimeček 33.1 154 1. **{{html}}<span style="color: green;">Výpůjčky:</span>{{/html}}**
Jan Šimeček 1.1 155
Jan Šimeček 34.1 156 * Vybrat {{html}}<span style="color: red;">KPUJCKY_REKS</span>{{/html}} a neimportovat KPUJCKY!
Jan Šimeček 1.1 157
158 == Import dat v Tritiu, pokud v cílovém Tritiu není část svazků (např. Výměnné soubory) ==
159
160 === Založení knihovny v Tritiu ===
161
162 Je potřeba zaregistrovat novou knihovnu v Tritiu (Přihlášení do Tritia tlačítko Registrovat)
163
Jan Šimeček 35.1 164 Při převádění REKSového Clavia nebo převádění knihovny, která má {{html}}<span style="color: red;">Carmen</span></span>{{/html}} (Knihovna s REKSovkami - Clavius neobsahuje pouze jednu knihovnu) nedávat po registraci vytvořit webovou definici - vznikne naimportováním DEFWEB, kdy dojde k založení webové definice pro každou REKSovou knihovnu.
Jan Šimeček 1.1 165
Jan Šimeček 35.1 166 {{html}}
167 <span style="color: red;">!!!Pokud se jedná o sdílený server, kde již běží knihovny na ostro, tak provést zálohu databáze, kdyby se něco zvrtlo co nedokáže <a href="https://doc.tritius.cz/bin/view/uzivatelsky-manual/Pro-spravce/Postup-prevodu-dat-z-Clavia/Postup-Odstraneni-importovanych-dat/">Postup Odstranění importovaných dat</a> vyřešit a bylo potřeba provést obnovení!!!</span>
168 {{/html}}
Jan Šimeček 1.1 169
Jan Šimeček 35.1 170 {{html}}
171 <span style="color: red;">!!!Před zahájením zkontrolovat dostatek místa na disku VM!!!</span>
172 {{/html}}
Jan Šimeček 1.1 173
174 Kontrolu lze provést 2 způsoby:
175
176 1. přes putty pomocí příkazu df -h
177 1. v Zabixxu: Sledování → Obrazovky → VM Overview → Hostitel vybrat VM a podívat se na graf Disk space usage
178
179 === Import dat ===
180
Jan Šimeček 36.1 181 {{html}}<span style="color: red;">Import REKS:</span>{{/html}} nezapomenout **{{html}}<span style="color: red;">zamknout</span>{{/html}}** slovníky (především klíčová slova, popřípadě dodavatele)
Jan Šimeček 1.1 182
Jan Šimeček 36.1 183 **{{html}}<span style="color: red;">POZOR!!!!</span>{{/html}}**: kontrola na existenci A podpolí v Tritiu, které zbyli od minulého importu, pokud ano tak smazat před importem!:
Jan Šimeček 1.1 184
Jan Šimeček 37.1 185 {{html}}
Jan Šimeček 42.1 186 <button onclick="toggleContent('content5')">Příkaz pro kontrolu</button>
Jan Šimeček 37.1 187 <div id="content5" style="display: none;">
Jan Šimeček 39.1 188 <hr style="border: none; height: 5px; background-color: black;">
Jan Šimeček 37.1 189 <p>select count(*) from authority_data where subfield_definition in (</p>
190 <p>select id from subfield_definition where name_sub='A')</p>
191 <br>
192 <p>select count(*) from work_data where subfield_definition in (</p>
193 <p>select id from subfield_definition where name_sub='A')</p>
194 <br>
195 <p>dále:</p>
196 <p>Po zapnutí Importovacího módu nesmí tabulka import_id_backup obsahovat jediný řádek, který má ve sloupci library ID právě převáděné knihovny, tedy select * from import_id_backup where library = ID_prave_prevadene_knihovny musí vrátit 0 .</p>
Jan Šimeček 39.1 197 <hr style="border: none; height: 5px; background-color: black;">
Jan Šimeček 37.1 198 </div>
199 <script>
200 function toggleContent(contentId) {
201 var content = document.getElementById(contentId);
202 if (content.style.display === "none") {
203 content.style.display = "block";
204 } else {
205 content.style.display = "none";
206 }
207 }
208 </script>
209 {{/html}}
Jan Šimeček 1.1 210
Jan Šimeček 2.1 211 * Pokud importuji do knihovny s defaultně jiným jazykem (slovenské knihovny) musím před importem správně nastavit **SYSTEM_DEFAULT_LANGUAGE **tak i** LOCALE.**
Jan Šimeček 44.1 212 * Pokud se nejedná o multiknihovní instanci, nastavit v položkách nastavení **{{html}}<span style="color: red;">MULTI_LIBRARY_INSTANCE</span>{{/html}}** na false ( -304 ) - musí se provést před importem vzkazů čtenářů.
213 * V záložce **Systém** je volba **{{html}}<span style="color: green;">Import dat</span>{{/html}}**
Jan Šimeček 1.1 214 * Spustí se importní mód - běžní uživatelé se do knihovny v importním módu nemohou přihlásit
215 * //Doporučení - naimportovat dump databáze na VM s Tritiem pod uživatelem root (import je řádově rychlejší)//
216 * URL spojení databázi Clavius SQL kde jsou výpůjčky :
Jan Šimeček 43.1 217 ** Pro MySQL: **jdbc:mysql:~/~/server.lanius.cz:3306///{{html}}<span style="color: green;"><databaseName></span>{{/html}}//?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Europe/Prague**
218 ** Pro MSSQL: **jdbc:sqlserver:~/~/192.168.0.24:1433;databaseName=//{{html}}<span style="color: green;"><databaseName></span>{{/html}}//**;SendStringParametersAsUnicode=False;
Jan Šimeček 44.1 219 * Zadáte uživatele a heslo pro připojení do databáze a tlačítkem **{{html}}<span style="color: green;">Připojit</span>{{/html}}** provedete spojení (po úspěchu se tlačítko změní na **Odpojit**)
220 * **{{html}}<span style="color: green;">Start import mode</span>{{/html}}**
Jan Šimeček 1.1 221 * Postupně procházíme jednotlivé záložky zleva do prava. Vynecháváme ty které nejsou vždy (akvizice, webový katalog Carmen)
Jan Šimeček 55.1 222 ** **{{html}}<span style="color: green;">Záložka Definice</span>{{/html}}** **{{html}}<span style="color: red;">(u sdíleného serveru zvážit neimportování kvůli tvorbě duplicit nebo je naimportovat a pak ty co už na serveru jsou vymazat)</span>{{/html}}**- vybrat postupně po jedné definiční tabulky a dejte **Importuj** vybrané tabulky (v případě opakovaného importu podruhé neprovádět !!!)
Jan Šimeček 1.1 223 *** **Definici webů (DEFWEB)** importovat pouze pro REKSové knihovny (při převodu do sdílené knihovny je třeba založit ručně při registraci knihovny)
224 *** Pokud se nepodaří v případě knihovny, která má Carmen převést DEFWEB, tak stačí v Tritius založit ručně webovou definici a do import_id vyplnit ID, které se najde v databázi Clavia:
225 *** SELECT distinct defWebId FROM car_cloud;
226
Jan Šimeček 57.1 227 *
Jan Šimeček 1.1 228 ** //Doporučení - Pokud se jedná o převod větší knihovny, tak po importu větších dat (autorit, díla, poplatky, čtenáři, výpůjčky, ...) dělat zálohu databáze//
Jan Šimeček 44.1 229 ** **{{html}}<span style="color: green;">Záložka Autority</span>{{/html}} {{html}}<span style="color: red;">(u REKSovky zvážit neimportování!)</span>{{/html}}**:
Jan Šimeček 1.1 230 *** tlačítko Nahrát soubor nalistujeme **AUTORITY.TAG** a po jeho nahrání jej vybereme a dáme Importovat. Po importu jsou chybné, neimportované záznamy v souboru failed
231 ** Pokud je soubor velký desítky MB a nejde nahrát zkuste přímou adresu např.  : [[http:~~/~~/192.168.0.250:8080/Tritius/>>url:http://192.168.0.250:8080/Tritius/cz.effectiva.tritius.Application/Application.html#Import_wizard]]  takto obejdete Apache web server
Jan Šimeček 44.1 232 ** **{{html}}<span style="color: green;">Záložka Díla a Svazky </span>{{/html}} {{html}}<span style="color: red;">(u REKSovky zvážit ztitulování a neskládání autorit!)</span>{{/html}}:**
Jan Šimeček 1.1 233 *** obsah složky **NAWEB** z Clavia (pokud existuje) - v průvodci importu dat je na záložce import děl tlačítko, které nahraje zabalenou složku (NAWEB.zip) do příslušné složky a rozbalí. (dříve - ručně nakopírovat do složky Tritia (\tritius\files\Clavius\WORK\NAWEB)
Jan Šimeček 44.1 234 *** {{html}}<span style="color: red;">Pozor: zkontrolovat názvy souborů pokud obsahují mezery nebo znaky s diakritikou nedojde k propojení !!!</span>{{/html}}
Jan Šimeček 1.1 235 *** Typ importu duplicit - kontroluje duplicitu podle typu dokumentu a ISBN, popřípadě podle typu dokumentu, názvu, autora a roku (Zkontrolovat duplicity ISBN v TAGu)
236 *** Přes Nahrát soubor vybereme **DATA.TAG** a po jeho nahrání jej vybereme a dáme Importovat. Po importu jsou chybné, neimportované záznamy v souboru failed
237 *** Problémové záznamy v souboru failed, které se nenaimportovaly, je potřeba hned řešit tzn. **opravit a opakovaně importovat teprve pak se může pokračovat**!
Jan Šimeček 44.1 238 ** **{{html}}<span style="color: green;">Čtenáři:</span>{{/html}}**
239 *** Vybrat CTENARI nebo CTENARI_DO_VSECH_KNIHOVEN - {{html}}<span style="color: red;">neimportovat obě!</span>{{/html}}
240 ** **{{html}}<span style="color: green;">MVS</span>{{/html}}**
Jan Šimeček 1.1 241 *** Lepší Vytvářet nové záznamy, aby nedocházelo k propojení rezervací na MVS.
Jan Šimeček 44.1 242 ** **{{html}}<span style="color: green;">Záložka Výpůjčky</span>{{/html}}**:
243 *** Vybrat KPUJCKY nebo KPUJCKY_REKS - {{html}}<span style="color: red;">neimportovat obě!</span>{{/html}}
Jan Šimeček 1.1 244 *** postupně po jednotlivých tabulkách importovat a v logu kontrolovat provedení.
245 *** **Poplatky **- způsob uhrazení (poplatek.kartou)
246 **** 0 - platba v hotovosti
247 **** 1, 2, 3, 4 - platba kartou
248 **** 5, 6, 7 - platba na účet
249 **** 8, 9 - platba kreditem
250 * //Odstranit z VM databázi Clavia, pokud byla naimportována do VM.//
251
252 === Odstranění importovaných dat ===
253
Jan Šimeček 45.1 254 Pokud dojde během importu k problému s některou částí importu (kromě nastavení), tak ji lze smazat pomocí: [[Postup Odstranění importovaných dat>>doc:.Postup-Odstraneni-importovanych-dat.WebHome]]
Jan Šimeček 1.1 255
256 == Nastavení po importu ==
257
Jan Šimeček 45.1 258 * **{{html}}<span style="color: red;">Před ukončením importního módu je třeba vytvořit zálohu databáze.</span>{{/html}}**
Jan Šimeček 46.1 259 * **{{html}}<span style="color: red;">Ukončit import mód - až v momentě, kdy jsou všechna data správně převedená! **(u velkého serveru může zastavení trvat i půl hodiny)</span>{{/html}}**
Jan Šimeček 51.1 260 * Pokud se převáděla konfigurace výpůjčního protokolu je potřeba projít a opravit [[podmínky >>doc:uzivatelsky-manual.Pro-spravce.Priklady-podminek.WebHome]]v následujících částek nastavení, jinak by spadla reindexace:
Jan Šimeček 1.1 261 ** Kategorie operací
262 ** Pravidla registrací
263 ** Prohledávané oblasti
264 ** Definice webů - nastavit také výp. kategorii **Nezobrazovat na WWW** ((itemBorrowCategoryId IS NULL OR itemBorrowCategoryId <> 3)) - ID se liší podle převodu
265 * Na poslední záložce **Naplánované úlohy** spustit postupně od shora jednotlivé operace
266 ** u malé knihovny nečekat na dokončení a lze pustit od shora najednou
267 ** u velké knihovny pustit 1., 2., 3., počkat na dokončení a poté pustit 4. a po dokončení pustit 5. a po dokončení pustit 6.
268
269 == Závěrečné důležité operace ==
270
271 * **Restart Tomcatu pomocí tools** (vyčistí se paměť po importu) !!!(((
272
273 )))
Jan Šimeček 45.1 274 * **{{html}}<span style="color: red;">Provést nastavení podle checklist!!!!</span>{{/html}}**
275 * **{{html}}<span style="color: red;">Přečíst 2.1 Tipy a Triky na začátku stránky!</span>{{/html}}**
Jan Šimeček 1.1 276
277 = Regulární výrazy pro opravy dat =
278
Jan Šimeček 50.1 279 Všechny nové regulární výrazy je třeba nejprve otestovat vývojářem - **ReplaceHelperTest**. - příklady viz poslední stránka:
Jan Šimeček 1.1 280
Jan Šimeček 49.1 281 [[attach:TP-109543491-280624-1107-24.pdf||target="_blank"]]