Changes for page Postup převodu dat z Clavia
Last modified by Jan Šimeček on 2025/11/03 15:11
From version 34.1
edited by Jan Šimeček
on 2024/06/28 10:42
on 2024/06/28 10:42
Change comment:
There is no comment for this version
To version 47.1
edited by Jan Šimeček
on 2024/06/28 11:05
on 2024/06/28 11:05
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -11,11 +11,13 @@ 11 11 {{html}} 12 12 <button onclick="toggleContent('content1')">Tipy a Triky - přečíst</button> 13 13 <div id="content1" style="display: none;"> 14 +<hr style="border: none; height: 5px; background-color: black;"> 14 14 <p>Revize se nepřevádí, musí být před zahájením převodu do Tritia uzavřena.</p> 15 15 <p>Dispečink Clavia se nepřevádí, pokud data potřebují, tak si je musí před vypnutím Clavia opsat.</p> 16 16 <p>Statistiky LWWW se nepřevádí, knihovna si je musí opsat.</p> 17 17 <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> 18 18 <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> 20 +<hr style="border: none; height: 5px; background-color: black;"> 19 19 </div> 20 20 <script> 21 21 function toggleContent(contentId) { ... ... @@ -60,11 +60,13 @@ 60 60 == Příprava CLAVIUS SQL == 61 61 62 62 {{html}} 63 -<button onclick="toggleContent('content4')">NASQL</button> 65 +<button onclick="toggleContent('content4')">O programu NASQL</button> 64 64 <div id="content4" style="display: none;"> 67 +<hr style="border: none; height: 5px; background-color: black;"> 65 65 <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. 66 66 <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. 67 67 <p>Je zapotřebí použít program <b>NASQL.exe</b></p> 71 +<hr style="border: none; height: 5px; background-color: black;"> 68 68 </div> 69 69 <script> 70 70 function toggleContent(contentId) { ... ... @@ -82,10 +82,10 @@ 82 82 83 83 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í: 84 84 85 - 86 86 {{html}} 87 87 <button onclick="toggleContent('content2')">Postup kontroly a příkazy pro vygenerování</button> 88 88 <div id="content2" style="display: none;"> 92 +<hr style="border: none; height: 5px; background-color: black;"> 89 89 <p><b>Kontrola dat v Claviu, jestli obsahují vygenerovaný správně ckod, kdy 31840 - je prefix nadřízené knihovny:</b></p> 90 90 <br> 91 91 <p>browse for betw(val(pcislo),500000,599999) and !empt(ckod) and ckod<>'31840'</p> ... ... @@ -96,7 +96,7 @@ 96 96 <br> 97 97 <p>repl ckod with '31840'+padl(allt(pcislo),8,'0') for betw(val(pcislo),500000,599999) and betw(len(allt(ckod)),0,8)</p> 98 98 <p>repl ckod with '31840'+right(ckod,7) for betw(val(pcislo),500000,599999) and !empt(ckod) and ckod<>'31840'</p> 99 -<br ><br>103 +<hr style="border: none; height: 5px; background-color: black;"> 100 100 </div> 101 101 <script> 102 102 function toggleContent(contentId) { ... ... @@ -115,12 +115,13 @@ 115 115 {{html}} 116 116 <button onclick="toggleContent('content3')">Postup kontroly a příkazy pro vygenerování</button> 117 117 <div id="content3" style="display: none;"> 122 +<hr style="border: none; height: 5px; background-color: black;"> 118 118 <p><b>Kontrola:</b></p> 119 119 <p>pohled("SELECT * FROM svazky where ckod <> ' ' AND ckod not like 'prefixImportovaneREKSovky%' AND pidkn != '˙'")</p> 120 120 <p></p> 121 121 <p><b>Oprava:</b></p> 122 122 <p>pohled("UPDATE svazky SET pidkn = '˙' where ckod <> ' ' AND ckod not like 'prefixImportovaneREKSovky%' AND pidkn != '˙'")</p> 123 -<br ><br>128 +<hr style="border: none; height: 5px; background-color: black;"> 124 124 </div> 125 125 <script> 126 126 function toggleContent(contentId) { ... ... @@ -151,11 +151,15 @@ 151 151 152 152 Je potřeba zaregistrovat novou knihovnu v Tritiu (Přihlášení do Tritia tlačítko Registrovat) 153 153 154 -Při převádění REKSového Clavia nebo převádění knihovny, která má <span style="color: red;">Carmen</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. 159 +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. 155 155 156 -~<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>{{/html}} 161 +{{html}} 162 +<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> 163 +{{/html}} 157 157 158 -~<span style="color: red;">!!!Před zahájením zkontrolovat dostatek místa na disku VM!!!</span>{{/html}} 165 +{{html}} 166 +<span style="color: red;">!!!Před zahájením zkontrolovat dostatek místa na disku VM!!!</span> 167 +{{/html}} 159 159 160 160 Kontrolu lze provést 2 způsoby: 161 161 ... ... @@ -164,54 +164,69 @@ 164 164 165 165 === Import dat === 166 166 167 -Import REKS: nezapomenout **zamknout** slovníky (především klíčová slova, popřípadě dodavatele) 176 +{{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) 168 168 169 -**POZOR!!!!**: kontrola na existenci A podpolí v Tritiu, které zbyli od minulého importu, pokud ano tak smazat před importem!: 178 +**{{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!: 170 170 171 -| 180 +{{html}} 181 +<button onclick="toggleContent('content5')">Příkaz pro kontrolu</button> 182 +<div id="content5" style="display: none;"> 183 +<hr style="border: none; height: 5px; background-color: black;"> 184 +<p>select count(*) from authority_data where subfield_definition in (</p> 185 +<p>select id from subfield_definition where name_sub='A')</p> 186 +<br> 187 +<p>select count(*) from work_data where subfield_definition in (</p> 188 +<p>select id from subfield_definition where name_sub='A')</p> 189 +<br> 190 +<p>dále:</p> 191 +<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> 192 +<hr style="border: none; height: 5px; background-color: black;"> 193 +</div> 194 +<script> 195 + function toggleContent(contentId) { 196 + var content = document.getElementById(contentId); 197 + if (content.style.display === "none") { 198 + content.style.display = "block"; 199 + } else { 200 + content.style.display = "none"; 201 + } 202 + } 203 +</script> 204 +{{/html}} 172 172 173 -{{{select count(*) from authority_data where subfield_definition in ( 174 -select id from subfield_definition where name_sub='A') 175 - 176 -select count(*) from work_data where subfield_definition in ( 177 -select id from subfield_definition where name_sub='A') 178 - 179 -dále: 180 -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 . }}} 181 - 182 182 * 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.** 183 -* Pokud se nejedná o multiknihovní instanci, nastavit v položkách nastavení **MULTI_LIBRARY_INSTANCE** na false ( -304 ) - musí se provést před importem vzkazů čtenářů. 184 -* V záložce **Systém** je volba **Import dat** 207 +* 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ářů. 208 +* V záložce **Systém** je volba **{{html}}<span style="color: green;">Import dat</span>{{/html}}** 185 185 * Spustí se importní mód - běžní uživatelé se do knihovny v importním módu nemohou přihlásit 186 186 * //Doporučení - naimportovat dump databáze na VM s Tritiem pod uživatelem root (import je řádově rychlejší)// 187 187 * URL spojení databázi Clavius SQL kde jsou výpůjčky : 188 -** Pro MySQL: **jdbc:mysql:~/~/server.lanius.cz:3306///<databaseName>//?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Europe/Prague** 189 -** Pro MSSQL: **jdbc:sqlserver:~/~/192.168.0.24:1433;databaseName=//<databaseName>//**;SendStringParametersAsUnicode=False; 190 -* Zadáte uživatele a heslo pro připojení do databáze a tlačítkem **Připojit** provedete spojení (po úspěchu se tlačítko změní na **Odpojit**) 191 -* **Start import mode** 212 +** Pro MySQL: **jdbc:mysql:~/~/server.lanius.cz:3306///{{html}}<span style="color: green;"><databaseName></span>{{/html}}//?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Europe/Prague** 213 +** Pro MSSQL: **jdbc:sqlserver:~/~/192.168.0.24:1433;databaseName=//{{html}}<span style="color: green;"><databaseName></span>{{/html}}//**;SendStringParametersAsUnicode=False; 214 +* 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**) 215 +* **{{html}}<span style="color: green;">Start import mode</span>{{/html}}** 192 192 * Postupně procházíme jednotlivé záložky zleva do prava. Vynecháváme ty které nejsou vždy (akvizice, webový katalog Carmen) 193 -** **Záložka Definice** - vybrat postupně po jedné definiční tabulky a dejte **Importuj** vybrané tabulky (v případě opakovaného importu podruhé neprovádět !!!) 217 +** **{{html}}<span style="color: green;">Záložka Definice</span>{{/html}}** - vybrat postupně po jedné definiční tabulky a dejte **Importuj** vybrané tabulky (v případě opakovaného importu podruhé neprovádět !!!) 194 194 *** **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) 195 195 *** 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: 196 196 *** SELECT distinct defWebId FROM car_cloud; 197 197 198 -* 222 +* 199 199 ** //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// 200 -** **Záložka Autority (u REKSovky zvážit neimportování!)**: 224 +** **{{html}}<span style="color: green;">Záložka Autority</span>{{/html}} {{html}}<span style="color: red;">(u REKSovky zvážit neimportování!)</span>{{/html}}**: 201 201 *** 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 202 202 ** 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 203 -** **Záložka Díla a Svazky (u REKSovky zvážit ztitulování a neskládání autorit!):** 227 +** **{{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}}:** 204 204 *** 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) 205 -*** Pozor: zkontrolovat názvy souborů pokud obsahují mezery nebo znaky s diakritikou nedojde k propojení !!! 229 +*** {{html}}<span style="color: red;">Pozor: zkontrolovat názvy souborů pokud obsahují mezery nebo znaky s diakritikou nedojde k propojení !!!</span>{{/html}} 206 206 *** 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) 207 207 *** 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 208 208 *** 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**! 209 -** **Čtenáři:** 210 -*** Vybrat CTENARI nebo CTENARI_DO_VSECH_KNIHOVEN - neimportovat obě! 211 -** **MVS** 233 +** **{{html}}<span style="color: green;">Čtenáři:</span>{{/html}}** 234 +*** Vybrat CTENARI nebo CTENARI_DO_VSECH_KNIHOVEN - {{html}}<span style="color: red;">neimportovat obě!</span>{{/html}} 235 +** **{{html}}<span style="color: green;">MVS</span>{{/html}}** 212 212 *** Lepší Vytvářet nové záznamy, aby nedocházelo k propojení rezervací na MVS. 213 -** **Záložka Výpůjčky**: 214 -*** Vybrat KPUJCKY nebo KPUJCKY_REKS - neimportovat obě! 237 +** **{{html}}<span style="color: green;">Záložka Výpůjčky</span>{{/html}}**: 238 +*** Vybrat KPUJCKY nebo KPUJCKY_REKS - {{html}}<span style="color: red;">neimportovat obě!</span>{{/html}} 215 215 *** postupně po jednotlivých tabulkách importovat a v logu kontrolovat provedení. 216 216 *** **Poplatky **- způsob uhrazení (poplatek.kartou) 217 217 **** 0 - platba v hotovosti ... ... @@ -222,12 +222,12 @@ 222 222 223 223 === Odstranění importovaných dat === 224 224 225 -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>> url:https://confluence.tritius.cz/pages/viewpage.action?pageId=102925148]]249 +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]] 226 226 227 227 == Nastavení po importu == 228 228 229 -* **Před ukončením importního módu je třeba vytvořit zálohu databáze.** 230 -* **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) 253 +* **{{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}}** 254 +* **{{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}}** 231 231 * Pokud se převáděla konfigurace výpůjčního protokolu je potřeba projít a opravit podmínky v následujících částek nastavení, jinak by spadla reindexace: 232 232 ** Kategorie operací 233 233 ** Pravidla registrací ... ... @@ -242,81 +242,138 @@ 242 242 * **Restart Tomcatu pomocí tools** (vyčistí se paměť po importu) !!!((( 243 243 244 244 ))) 245 -* **Provést nastavení podle checklist!!!!** 246 -* **Přečíst 2.1 Tipy a Triky na začátku stránky!** 269 +* **{{html}}<span style="color: red;">Provést nastavení podle checklist!!!!</span>{{/html}}** 270 +* **{{html}}<span style="color: red;">Přečíst 2.1 Tipy a Triky na začátku stránky!</span>{{/html}}** 247 247 248 248 = Regulární výrazy pro opravy dat = 249 249 250 250 Všechny nové regulární výrazy je třeba nejprve otestovat vývojářem - **ReplaceHelperTest**. 251 251 252 -|((( 253 -== Autority == 276 +{{html}} 277 +<button onclick="toggleContent('content6')">Příkaz pro kontrolu</button> 278 +<div id="content6" style="display: none;"> 279 +<hr style="border: none; height: 5px; background-color: black;"> 254 254 255 - |=Popis problému|=Regulární výraz|=Vstup|=Výstup|=(% colspan="1" %)Poznámka256 - |Pole 100 obsahuje podpole 4.|281 +Autority 282 + Pole 100 obsahuje podpole 4. 257 257 258 - {{{100\\ [\\ 0-9]{2}\\ \\$4.*}}}|284 +100\\ [\\ 0-9]{2}\\ \\$4.* 259 259 260 - {{{100 1 $4070}}}| |(% colspan="1" %)Celé pole se zahodí.286 + 261 261 262 - |Obsahujepole1??|288 + 100 1 $4070 263 263 264 -{{{(1\?\?\ )(.*,.*)§100 $2}}} 290 + 291 + Celé pole se zahodí. 292 + Obsahuje pole 1?? 265 265 266 - {{{(1\?\?\ )(.*)§110 $2}}}|294 +(1\?\?\ )(.*,.*)§100 $2 267 267 268 - {{{1??$aAudoly,Sylvie}}}|296 +(1\?\?\ )(.*)§110 $2 269 269 270 - {{{100 $aAudoly, Sylvie}}}|(% colspan="1" %)Pokusí se rozpoznat zda se jedná o osobní jméno, nebo korporaci (pokud je osobní jméno, obsahuje hodnota čárku)298 + 271 271 272 - |(%colspan="1"%)Pole1XXajeprázdné|(% colspan="1"%)300 + 1?? $aAudoly, Sylvie 273 273 274 - {{{^1??.*\\$a$}}}|302 + 275 275 276 - {{{199$a}}}|(% colspan="1"%) |Odstranísecelé opakovánípole304 + 100 $aAudoly, Sylvie 277 277 278 -|(% colspan="1" %)Obsahuje pole 100 a 110|(% colspan="1" %) 306 + Pokusí se rozpoznat zda se jedná o osobní jméno, nebo korporaci (pokud je osobní jméno, obsahuje hodnota čárku) 307 +Pole 1XXa je prázdné 279 279 280 - {{{^110.*}}}|309 +^1??.*\\$a$ 281 281 282 - {{{100 1 $aRoni, Luigi 110 2 $aRoni, Luigii}}}|311 + 283 283 284 - {{{1001$aRoni,Luigi}}}|(%colspan="1" %)Odstraní opakování pole 110313 +199 $a 285 285 286 -== Díla == 315 + 316 + Odstraní se celé opakování pole 317 +Obsahuje pole 100 a 110 287 287 288 -|=Popis problému|=Regulární výraz|=Vstup|=Výstup|=(% colspan="1" %)Poznámka 289 -|Odkazy na soubory v NAWEB obsahují před adresářem neplatné znaky.| 319 +^110.* 290 290 291 - {{{(X00[\ ]{4}.*\$[uo]).*(NAWEB.*)(\$.*)§$1$2$3 (X00[\ ]{4}.*\$[uo]).*(NAWEB.*)§$1$2}}}|321 + 292 292 293 -{{{X00 $uW:\NAWEB\OBSAHY\N38492.pdf$tObsah$oNAWEB\2016_Knihy\N38492.jpg X00 $uW:\NAWEB\OBSAHY\N38492.pdf$tObsah$oW:\NAWEB\2016_Knihy\N38492.jpg X00 $uNAWEB\OBSAHY\N38492.pdf$tObsah$oW:\NAWEB\2016_Knihy\N38492.jpg X00 $oW:\NAWEB\OBSAHY\N38492.pdf$tObsah$uNAWEB\2016_Knihy\N38492.jpg X00 $oW:\NAWEB\OBSAHY\N38492.pdf$tObsah$uW:\NAWEB\2016_Knihy\N38492.jpg X00 $oNAWEB\OBSAHY\N38492.pdf$tObsah$uW:\NAWEB\2016_Knihy\N38492.jpg}}}| 323 +100 1 $aRoni, Luigi 324 +110 2 $aRoni, Luigii 294 294 295 - {{{X00 $uNAWEB\OBSAHY\N38492.pdf$tObsah$oNAWEB\2016_Knihy\N38492.jpg X00 $uNAWEB\OBSAHY\N38492.pdf$tObsah$oNAWEB\2016_Knihy\N38492.jpg X00 $uNAWEB\OBSAHY\N38492.pdf$tObsah$oNAWEB\2016_Knihy\N38492.jpg X00 $oNAWEB\OBSAHY\N38492.pdf$tObsah$uNAWEB\2016_Knihy\N38492.jpg X00 $oNAWEB\OBSAHY\N38492.pdf$tObsah$uNAWEB\2016_Knihy\N38492.jpg X00 $oNAWEB\OBSAHY\N38492.pdf$tObsah$uNAWEB\2016_Knihy\N38492.jpg}}}|(% colspan="1" %)Odstraní znaky co nepatří před NAWEB.326 + 296 296 297 - |(% colspan="1" %)X00odakzujenaadresář, kterýneexistujez důvoduvelikostipísmen na linuxu (velikost písmen se musí shodovat).|(% colspan="1" %)328 +100 1 $aRoni, Luigi 298 298 299 -{{{(X00[\ ]{4}\$[ou]NAWEB[\\/])OBSAHY([\\/].*)§$1Obsahy$2}}}| 330 + Odstraní opakování pole 110 331 +Díla 332 +Odkazy na soubory v NAWEB obsahují před adresářem neplatné znaky. 300 300 301 -{{{X00 $oNAWEB/OBSAHY/NC3404.pdf}}}| 334 +(X00[\ ]{4}.*\$[uo]).*(NAWEB.*)(\$.*)§$1$2$3 335 +(X00[\ ]{4}.*\$[uo]).*(NAWEB.*)§$1$2 302 302 303 - {{{X00 $oNAWEB/Obsahy/NC3404.pdf}}}|(% colspan="1" %)Změna velikosti písmen "OBSAHY" → "Obsahy". Regulární příkaz se musí dát až za regulární příkaz opravující validnost cesty.337 + 304 304 305 -|(% colspan="1" %)Obsahuje pole ???.|(% colspan="1" %) 339 +X00 $uW:\NAWEB\OBSAHY\N38492.pdf$tObsah$oNAWEB\2016_Knihy\N38492.jpg 340 +X00 $uW:\NAWEB\OBSAHY\N38492.pdf$tObsah$oW:\NAWEB\2016_Knihy\N38492.jpg 341 +X00 $uNAWEB\OBSAHY\N38492.pdf$tObsah$oW:\NAWEB\2016_Knihy\N38492.jpg 342 +X00 $oW:\NAWEB\OBSAHY\N38492.pdf$tObsah$uNAWEB\2016_Knihy\N38492.jpg 343 +X00 $oW:\NAWEB\OBSAHY\N38492.pdf$tObsah$uW:\NAWEB\2016_Knihy\N38492.jpg 344 +X00 $oNAWEB\OBSAHY\N38492.pdf$tObsah$uW:\NAWEB\2016_Knihy\N38492.jpg 306 306 307 - {{{^\?\?\?.*}}}|346 + 308 308 309 -{{{??? $aCzech Republic$eautomapa}}}|(% colspan="1" %) |Odstraní otazníkové pole. 348 +X00 $uNAWEB\OBSAHY\N38492.pdf$tObsah$oNAWEB\2016_Knihy\N38492.jpg 349 +X00 $uNAWEB\OBSAHY\N38492.pdf$tObsah$oNAWEB\2016_Knihy\N38492.jpg 350 +X00 $uNAWEB\OBSAHY\N38492.pdf$tObsah$oNAWEB\2016_Knihy\N38492.jpg 351 +X00 $oNAWEB\OBSAHY\N38492.pdf$tObsah$uNAWEB\2016_Knihy\N38492.jpg 352 +X00 $oNAWEB\OBSAHY\N38492.pdf$tObsah$uNAWEB\2016_Knihy\N38492.jpg 353 +X00 $oNAWEB\OBSAHY\N38492.pdf$tObsah$uNAWEB\2016_Knihy\N38492.jpg 310 310 311 -|(% colspan="1" %)1XX4 nebo 7XX4 obsahuje neexistující kód role|(% colspan="1" %) 355 + Odstraní znaky co nepatří před NAWEB. 356 +X00 odakzuje na adresář, který neexistuje z důvodu velikosti písmen na linuxu (velikost písmen se musí shodovat). 312 312 313 - {{{(^[710]{3}.*)(\$4sut)(.*)§$1$3}}}|358 +(X00[\ ]{4}\$[ou]NAWEB[\\/])OBSAHY([\\/].*)§$1Obsahy$2 314 314 315 - {{{100 1 $A1000239919$aLiker, Jeffrey K.$7xx0031426$4sut}}}|360 + 316 316 317 - {{{1001$A1000239919$aLiker,JeffreyK.$7xx0031426}}}|(% colspan="1" %)kódrole z autority Neznámý kód role odstraní.362 +X00 $oNAWEB/OBSAHY/NC3404.pdf 318 318 319 - 320 -))) 364 + 321 321 322 - ~{~{/html}}~{~{/html}} 366 +X00 $oNAWEB/Obsahy/NC3404.pdf 367 + 368 + Změna velikosti písmen "OBSAHY" → "Obsahy". Regulární příkaz se musí dát až za regulární příkaz opravující validnost cesty. 369 +Obsahuje pole ???. 370 + 371 +^\?\?\?.* 372 + 373 + 374 + 375 +??? $aCzech Republic$eautomapa 376 + 377 + 378 + Odstraní otazníkové pole. 379 +1XX4 nebo 7XX4 obsahuje neexistující kód role 380 + 381 +(^[710]{3}.*)(\$4sut)(.*)§$1$3 382 + 383 + 384 + 385 +100 1 $A1000239919$aLiker, Jeffrey K.$7xx0031426$4sut 386 + 387 + 388 + 389 +100 1 $A1000239919$aLiker, Jeffrey K.$7xx0031426 390 + 391 +<hr style="border: none; height: 5px; background-color: black;"> 392 +</div> 393 +<script> 394 + function toggleContent(contentId) { 395 + var content = document.getElementById(contentId); 396 + if (content.style.display === "none") { 397 + content.style.display = "block"; 398 + } else { 399 + content.style.display = "none"; 400 + } 401 + } 402 +</script> 403 +{{/html}}