Changes for page Postup převodu dat z Clavia
Last modified by Jan Šimeček on 2025/11/03 15:11
From version 39.1
edited by Jan Šimeček
on 2024/06/28 10:52
on 2024/06/28 10:52
Change comment:
There is no comment for this version
To version 46.1
edited by Jan Šimeček
on 2024/06/28 11:03
on 2024/06/28 11:03
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) { ... ... @@ -173,7 +173,7 @@ 173 173 **{{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!: 174 174 175 175 {{html}} 176 -<button onclick="toggleContent('content5')"> SELECT</button>181 +<button onclick="toggleContent('content5')">Příkaz pro kontrolu</button> 177 177 <div id="content5" style="display: none;"> 178 178 <hr style="border: none; height: 5px; background-color: black;"> 179 179 <p>select count(*) from authority_data where subfield_definition in (</p> ... ... @@ -199,17 +199,17 @@ 199 199 {{/html}} 200 200 201 201 * 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.** 202 -* 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ářů. 203 -* 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}}** 204 204 * Spustí se importní mód - běžní uživatelé se do knihovny v importním módu nemohou přihlásit 205 205 * //Doporučení - naimportovat dump databáze na VM s Tritiem pod uživatelem root (import je řádově rychlejší)// 206 206 * URL spojení databázi Clavius SQL kde jsou výpůjčky : 207 -** Pro MySQL: **jdbc:mysql:~/~/server.lanius.cz:3306///<databaseName>//?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Europe/Prague** 208 -** Pro MSSQL: **jdbc:sqlserver:~/~/192.168.0.24:1433;databaseName=//<databaseName>//**;SendStringParametersAsUnicode=False; 209 -* 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**) 210 -* **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}}** 211 211 * Postupně procházíme jednotlivé záložky zleva do prava. Vynecháváme ty které nejsou vždy (akvizice, webový katalog Carmen) 212 -** **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 !!!) 213 213 *** **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) 214 214 *** 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: 215 215 *** SELECT distinct defWebId FROM car_cloud; ... ... @@ -216,21 +216,21 @@ 216 216 217 217 * 218 218 ** //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// 219 -** **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}}**: 220 220 *** 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 221 221 ** 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 222 -** **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}}:** 223 223 *** 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) 224 -*** 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}} 225 225 *** 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) 226 226 *** 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 227 227 *** 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**! 228 -** **Čtenáři:** 229 -*** Vybrat CTENARI nebo CTENARI_DO_VSECH_KNIHOVEN - neimportovat obě! 230 -** **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}}** 231 231 *** Lepší Vytvářet nové záznamy, aby nedocházelo k propojení rezervací na MVS. 232 -** **Záložka Výpůjčky**: 233 -*** 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}} 234 234 *** postupně po jednotlivých tabulkách importovat a v logu kontrolovat provedení. 235 235 *** **Poplatky **- způsob uhrazení (poplatek.kartou) 236 236 **** 0 - platba v hotovosti ... ... @@ -241,12 +241,12 @@ 241 241 242 242 === Odstranění importovaných dat === 243 243 244 -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]] 245 245 246 246 == Nastavení po importu == 247 247 248 -* **Před ukončením importního módu je třeba vytvořit zálohu databáze.** 249 -* **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}}** 250 250 * 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: 251 251 ** Kategorie operací 252 252 ** Pravidla registrací ... ... @@ -261,81 +261,33 @@ 261 261 * **Restart Tomcatu pomocí tools** (vyčistí se paměť po importu) !!!((( 262 262 263 263 ))) 264 -* **Provést nastavení podle checklist!!!!** 265 -* **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}}** 266 266 267 267 = Regulární výrazy pro opravy dat = 268 268 269 269 Všechny nové regulární výrazy je třeba nejprve otestovat vývojářem - **ReplaceHelperTest**. 270 270 271 -|((( 272 -== Autority == 273 - 274 -|=Popis problému|=Regulární výraz|=Vstup|=Výstup|=(% colspan="1" %)Poznámka 275 -| Pole 100 obsahuje podpole 4.| 276 - 277 -{{{100\\ [\\ 0-9]{2}\\ \\$4.*}}}| 278 - 279 -{{{100 1 $4070}}}| |(% colspan="1" %)Celé pole se zahodí. 280 - 281 -| Obsahuje pole 1??| 282 - 283 -{{{(1\?\?\ )(.*,.*)§100 $2}}} 284 - 285 -{{{(1\?\?\ )(.*)§110 $2}}}| 286 - 287 -{{{1?? $aAudoly, Sylvie}}}| 288 - 289 -{{{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) 290 - 291 -|(% colspan="1" %)Pole 1XXa je prázdné|(% colspan="1" %) 292 - 293 -{{{^1??.*\\$a$}}}| 294 - 295 -{{{199 $a}}}|(% colspan="1" %) |Odstraní se celé opakování pole 296 - 297 -|(% colspan="1" %)Obsahuje pole 100 a 110|(% colspan="1" %) 298 - 299 -{{{^110.*}}}| 300 - 301 -{{{100 1 $aRoni, Luigi 110 2 $aRoni, Luigii}}}| 302 - 303 -{{{100 1 $aRoni, Luigi}}}|(% colspan="1" %)Odstraní opakování pole 110 304 - 305 -== Díla == 306 - 307 -|=Popis problému|=Regulární výraz|=Vstup|=Výstup|=(% colspan="1" %)Poznámka 308 -|Odkazy na soubory v NAWEB obsahují před adresářem neplatné znaky.| 309 - 310 -{{{(X00[\ ]{4}.*\$[uo]).*(NAWEB.*)(\$.*)§$1$2$3 (X00[\ ]{4}.*\$[uo]).*(NAWEB.*)§$1$2}}}| 311 - 312 -{{{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}}}| 313 - 314 -{{{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. 315 - 316 -|(% colspan="1" %)X00 odakzuje na adresář, který neexistuje z důvodu velikosti písmen na linuxu (velikost písmen se musí shodovat).|(% colspan="1" %) 317 - 318 -{{{(X00[\ ]{4}\$[ou]NAWEB[\\/])OBSAHY([\\/].*)§$1Obsahy$2}}}| 319 - 320 -{{{X00 $oNAWEB/OBSAHY/NC3404.pdf}}}| 321 - 322 -{{{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. 323 - 324 -|(% colspan="1" %)Obsahuje pole ???.|(% colspan="1" %) 325 - 326 -{{{^\?\?\?.*}}}| 327 - 328 -{{{??? $aCzech Republic$eautomapa}}}|(% colspan="1" %) |Odstraní otazníkové pole. 329 - 330 -|(% colspan="1" %)1XX4 nebo 7XX4 obsahuje neexistující kód role|(% colspan="1" %) 331 - 332 -{{{(^[710]{3}.*)(\$4sut)(.*)§$1$3}}}| 333 - 334 -{{{100 1 $A1000239919$aLiker, Jeffrey K.$7xx0031426$4sut}}}| 335 - 336 -{{{100 1 $A1000239919$aLiker, Jeffrey K.$7xx0031426}}}|(% colspan="1" %)kód role z autority Neznámý kód role odstraní. 337 - 338 - 339 -))) 340 - 341 - ~{~{/html}}~{~{/html}} 276 +<button onclick="toggleContent('content5')">Příkaz pro kontrolu</button> 277 +<div id="content5" style="display: none;"> 278 +<hr style="border: none; height: 5px; background-color: black;"> 279 +<p>select count(*) from authority_data where subfield_definition in (</p> 280 +<p>select id from subfield_definition where name_sub='A')</p> 281 +<br> 282 +<p>select count(*) from work_data where subfield_definition in (</p> 283 +<p>select id from subfield_definition where name_sub='A')</p> 284 +<br> 285 +<p>dále:</p> 286 +<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> 287 +<hr style="border: none; height: 5px; background-color: black;"> 288 +</div> 289 +<script> 290 + function toggleContent(contentId) { 291 + var content = document.getElementById(contentId); 292 + if (content.style.display === "none") { 293 + content.style.display = "block"; 294 + } else { 295 + content.style.display = "none"; 296 + } 297 + } 298 +</script>