15 |
|
|
16 |
## LDR 05 - c ili d - iz 999a ili 999b ili 999 - provjeriti za svaku knjiznicu |
## LDR 05 - c ili d - iz 999a ili 999b ili 999 - provjeriti za svaku knjiznicu |
17 |
|
|
18 |
if ( rec('999') && frec('999') =~ m/(pregledan|P)/i) { |
if ( rec('999') && rec('999','a') =~ m/(pregledan|P)/i) { |
19 |
marc_leader('05','c'); |
marc_leader('05','c'); |
20 |
} else { |
} else { |
21 |
marc_leader('05','n'); |
marc_leader('05','n'); |
118 |
if ( frec('10') ne ( frec('290') ) ) { |
if ( frec('10') ne ( frec('290') ) ) { |
119 |
marc('020','a', |
marc('020','a', |
120 |
regex('s/-//g', |
regex('s/-//g', |
121 |
|
# regex('s/\(\d\)\(/$1 \(//g', |
122 |
rec('10') |
rec('10') |
123 |
) |
) |
124 |
); |
); |
321 |
|
|
322 |
marc_indicators('245', $i1, 0); |
marc_indicators('245', $i1, 0); |
323 |
|
|
324 |
if ( ( rec('200','a') =~ m/^Die /) || |
if ( rec('200','a') =~ m/^Einen / ) { |
325 |
( rec('200','a') =~ m/^Das /) || |
marc_indicators('245', $i1, 6); |
326 |
( rec('200','a') =~ m/^Der /) || |
} |
327 |
( rec('200','a') =~ m/^Les /) || |
|
328 |
( rec('200','a') =~ m/^The /) ) { |
if ( rec('200','a') =~ m/^Eine / ) { |
329 |
marc_indicators('245', $i1, 4); |
marc_indicators('245', $i1, 5); |
330 |
|
} |
331 |
|
|
332 |
|
if ( rec('200','a') =~ m/^(Die|Das|Der|Ein|Les|The) / ) { |
333 |
|
marc_indicators('245', $i1, 4); |
334 |
} |
} |
335 |
|
|
336 |
if ( ( rec('200','a') =~ m/^Un /) || |
if ( rec('200','a') =~ m/^(Um|Un|An|La|Le|Il) / ) { |
|
( rec('200','a') =~ m/^An /) || |
|
|
( rec('200','a') =~ m/^La /) || |
|
|
( rec('200','a') =~ m/^Le /) || |
|
|
( rec('200','a') =~ m/^Il /) ) { |
|
337 |
marc_indicators('245', $i1, 3); |
marc_indicators('245', $i1, 3); |
338 |
} |
} |
339 |
|
|
340 |
if ( ( rec('200','a') =~ m/^A /) || |
if ( rec('200','a') =~ m/^(A|L') / ) { |
|
( rec('200','a') =~ m/^L'/) ) { |
|
341 |
marc_indicators('245', $i1, 2); |
marc_indicators('245', $i1, 2); |
342 |
} |
} |
343 |
|
|
344 |
|
|
345 |
### 245 |
### 245 |
346 |
## potpolja i interpunkcije pripremljeni u modify |
## potpolja i interpunkcije pripremljeni u modify |
347 |
|
|
353 |
( rec('200','d') ) ? ' =' : |
( rec('200','d') ) ? ' =' : |
354 |
( rec('200','e') ) ? ' :' : |
( rec('200','e') ) ? ' :' : |
355 |
( rec('200','k') ) ? ' ;' : |
( rec('200','k') ) ? ' ;' : |
356 |
'', |
'.', |
357 |
rec('200','a'), |
rec('200','a'), |
358 |
), |
), |
359 |
'b', suffix( |
'b', suffix( |
423 |
rec('215','c') ? ' : ' : |
rec('215','c') ? ' : ' : |
424 |
rec('215','d') ? ' ; ' : |
rec('215','d') ? ' ; ' : |
425 |
rec('215','e') ? ' + ' : |
rec('215','e') ? ' + ' : |
426 |
' ', |
'', |
427 |
rec('215','a') |
rec('215','a') |
428 |
) |
) |
429 |
); |
); |
432 |
suffix( |
suffix( |
433 |
( rec('215','c') && rec('215','d') ) ? ' ; ' : |
( rec('215','c') && rec('215','d') ) ? ' ; ' : |
434 |
( rec('215','c') && rec('215','e') ) ? ' + ' : |
( rec('215','c') && rec('215','e') ) ? ' + ' : |
435 |
' ', |
'', |
436 |
rec('215','c') |
rec('215','c') |
437 |
) |
) |
438 |
); |
); |
440 |
marc('300','c', |
marc('300','c', |
441 |
suffix( |
suffix( |
442 |
rec('215','e') ? ' + ' : |
rec('215','e') ? ' + ' : |
443 |
' ', |
'', |
444 |
rec('215','d') |
rec('215','d') |
445 |
) |
) |
446 |
); |
); |
452 |
### 362 - brojčani podaci za nakladničku cjelinu - razjasniti upotrebu |
### 362 - brojčani podaci za nakladničku cjelinu - razjasniti upotrebu |
453 |
|
|
454 |
### 440 - indikatori |
### 440 - indikatori |
455 |
## 2.ind. prema jeziku i članu, provjeriri |
## 2.ind. prema jeziku i članu, provjeriti |
456 |
|
|
457 |
marc_indicators('440', ' ', '0'); |
marc_indicators('440', ' ', '0'); |
458 |
|
|
467 |
} |
} |
468 |
|
|
469 |
if ( ( rec('225','a') =~ m/^An /) && ( rec(101) =~ m/ENG/ ) ) { |
if ( ( rec('225','a') =~ m/^An /) && ( rec(101) =~ m/ENG/ ) ) { |
470 |
marc_indicators('440', ' ', 2); |
marc_indicators('440', ' ', 3); |
471 |
} |
} |
472 |
|
|
473 |
#_debug(3); |
#_debug(3); |
474 |
|
|
475 |
### 440 |
### 440 |
|
## marc_compose radi samo kad polje ni potpolja nisu ponovljivi. ne zapisuje dobro drugo pojavljivanje ^v (iz 225^w) |
|
476 |
|
|
477 |
marc_template( |
marc_template( |
478 |
from => 225, to => 440, |
from => 225, to => 440, |
485 |
'w' => 'v', |
'w' => 'v', |
486 |
], |
], |
487 |
isis_template => [ |
isis_template => [ |
|
'a ; |v. |i', |
|
|
'a ;|v.|i ;|w', |
|
|
'a.|i ;|w', |
|
|
'a.|h', |
|
|
'a.|h,|i', |
|
488 |
'a.|h,|i ;|w', |
'a.|h,|i ;|w', |
489 |
'a.|h ;|w', |
'a.|h.|w', |
490 |
'a.|i', |
'a.|i ;|w', |
491 |
'a ;|v.|h', |
'a ;|v.|i', |
492 |
'a ;|v,|w', |
'a ;|v.|i ;|w', |
493 |
'a ;|w', |
'a ;|v.|h,|i ;|w', |
494 |
'w', |
'a ;|v.|h ;|w', |
495 |
|
'a ;|v ;|w', |
496 |
|
#mozda greska: |
497 |
|
'a ;|v,|x ;|w', |
498 |
|
'a,|x ;|v', |
499 |
|
'a,|x.|p ;|w', |
500 |
], |
], |
501 |
marc_template => [ |
marc_template => [ |
502 |
'a', |
'a', |
503 |
'a,|x ;|v.|n,|p ;|v', |
'a ;|v', |
504 |
'a.|n.|p', |
'a,|x', |
505 |
'a ;|v.|p ;|v', |
'a.|n', # mozda greska |
506 |
'a.|p ;|v', |
'a.|n,|p', |
507 |
'a.|v', |
'a.|p', |
508 |
|
'a ;|v.|n', |
509 |
|
'a ;|v.|n,|p', # mozda greska |
510 |
'v', |
'v', |
511 |
|
'x', |
512 |
], |
], |
513 |
); |
); |
514 |
|
|
515 |
|
|
516 |
|
## marc_compose za 440 radi samo kad polje ni potpolja nisu ponovljiva. ne zapisuje dobro drugo pojavljivanje ^v, tj. ^v iza ^p (iz 225^w) |
517 |
|
|
518 |
#marc_compose('440', |
#marc_compose('440', |
519 |
# 'a', suffix( |
# 'a', suffix( |
520 |
# ( rec('225','v') ) ? ' ;' : |
# ( rec('225','v') ) ? ' ;' : |
762 |
### 760 w |
### 760 w |
763 |
## generiranje zapisa o nakladničkoj cjelini i povezivanje podređenog zapisa s nadređenim |
## generiranje zapisa o nakladničkoj cjelini i povezivanje podređenog zapisa s nadređenim |
764 |
|
|
765 |
if ( |
#if ( |
766 |
rec('225','a') # da li je nakladnička cjelina? |
# rec('225','a') # da li je nakladnička cjelina? |
767 |
) { |
#) { |
768 |
|
# |
769 |
my $series_key = |
#my $series_key = |
770 |
join_with('', |
#join_with('', |
771 |
rec('225','a'), |
# rec('225','a'), |
772 |
rec('210','a'), |
# rec('210','a'), |
773 |
rec('210','b'), |
# rec('210','b'), |
774 |
); |
#); |
775 |
|
# |
776 |
my $series = get( $series_key ); |
#my $series = get( $series_key ); |
777 |
|
# |
778 |
if ($series) { |
#if ($series) { |
779 |
warn "nije novi"; |
# warn "nije novi"; |
780 |
} else { |
#} else { |
781 |
|
# |
782 |
$series = join_with('', |
#$series = join_with('', |
783 |
uc( config() ), |
# uc( config() ), |
784 |
' LS', |
# ' LS', |
785 |
rec('000') |
# rec('000') |
786 |
); |
#); |
787 |
|
# |
788 |
set( $series_key => $series ); |
#set( $series_key => $series ); |
789 |
|
# |
790 |
} # $series |
#} # $series |
791 |
} # nakladnička cjelina |
#} # nakladnička cjelina |
792 |
|
# |
793 |
my $series_key = join_with('', |
#my $series_key = join_with('', |
794 |
rec('225','a'), |
# rec('225','a'), |
795 |
rec('210','a'), |
# rec('210','a'), |
796 |
rec('210','b'), |
# rec('210','b'), |
797 |
); |
#); |
798 |
|
# |
799 |
if ($series_key) { |
#if ($series_key) { |
800 |
|
# |
801 |
marc_indicators('760', 0, ' '); |
# marc_indicators('760', 0, ' '); |
802 |
|
# |
803 |
marc('760','w', |
# marc('760','w', |
804 |
get( $series_key ) |
# get( $series_key ) |
805 |
); |
# ); |
806 |
} |
#} |
807 |
|
|
808 |
# ## testing |
# ## testing |
809 |
# |
# |