2 # Ova datoteka sadrĀ¾i pravila za generiranje MARC21 ISO 2709 izlazne
3 # datoteke. Ulazni format je CDS/ISIS izvorni format, sa zapisima u
4 # UNIMARC formatu, sa viĀ¹estrukim odstupanjima od standarda.
7 ## lookup rezultat za sabrana djela (probna procedura za filozofiju od koje se odustalo)
11 ## sve skupa se konvertira tek ako postoji polje 200^a
12 if ( rec('200','a') ) {
17 marc_leader('05','n');
19 ## LDR 06 - a - language material
20 marc_leader('06','a');
22 ## LDR 07 - m - Monograph/item
23 marc_leader('07','m');
25 # ovo je bila proba za filozofiju
26 # if ( config() =~ m/fffi/ ) {
37 # marc_leader('07','m');
39 # marc_leader('07','c');
42 ## LDR 17 - Encoding level ; 7 - minimal level, u - unknown
43 marc_leader('17','u');
46 marc_leader('18','i');
48 ## LDR 19 - Multipart resource record level ; # - Not specified or not applicable, a - Set, b - Part with independent title, c - Part with dependent title
50 #if ( ( ! $sabrana ) && ( rec('230') || rec('231') || rec('232') || rec('233') ) ) {
51 # marc_leader('19','a');
54 if ( ( rec('230') || rec('231') || rec('232') || rec('233') ) ) {
55 marc_leader('19','a');
58 ### 008 - All materials
59 ## dodati sve moguce slucajeve za datum, popuniti ono sto nedostaje
62 if ( rec('994','c') =~ m/\d{8}/ ) {
63 marc_fixed('008','00',
68 } elsif ( rec('994','c') =~ m/\d{6}/ ) {
69 marc_fixed('008','00',
74 marc_fixed('008','04',
77 } elsif ( rec('994','c') =~ m/\d{4}/ ) {
83 marc_fixed('008','02',
87 marc_fixed('008','00',
99 ## 008 06 - Type of date/Publication status
101 ## 008 07-10 - Date 1
102 ## 008 11-14 - Date 2
103 ## 210d kroz modify postaje 210c
105 if ( rec('210','c') ) {
108 if ( rec('210','c') =~ m/(\d{4})-/ ) {
109 marc_fixed('008','06','m');
110 if ( rec('210','c') =~ m/(\d{4})-/ ) {
114 if ( rec('210','c') =~ m/-(\d{4})/ ) {
118 marc_fixed('008','06','s');
119 if ( rec('210','c') =~ m/(\d{4})/ ) {
122 if ( rec('210','c') =~ m/(\d{2})(--|__)/ ) {
125 if ( rec('210','c') =~ m/(\d{3})(-|_)/ ) {
130 # if ( rec('210','c') =~ m/(\?)/ ) {
131 # marc_fixed('008','06','q');
132 # if ( rec('210','c') =~ m/(\d{2})(--|__)/ ) {
135 # if ( rec('210','c') =~ m/(\d{3})(-|_)/ ) {
138 # if ( rec('210','c') =~ m/(\d{4})/ ) {
141 # } elsif ( rec('210','c') =~ m/(\d{4})-/ ) {
143 # marc_fixed('008','06','i');
145 # marc_fixed('008','06','m');
147 # marc_fixed('008','06','m')
148 # if ( rec('210','c') =~ m/(\d{4})-/ ) {
152 # if ( rec('210','c') =~ m/-(\d{4})/ ) {
156 # marc_fixed('008','06','s');
157 # if ( rec('210','c') =~ m/(\d{4})/ ) {
162 marc_fixed('008','07',$d1); # 07-10 - Date 1
163 marc_fixed('008','11',$d2); # 07-10 - Date 1
166 marc_fixed('008','06','n'); # 06 - n = unknown date
167 marc_fixed('008','07','uuuu');
172 ## 008 15-17 - Place of publication, production, or execution - ako nema 102, popunjava se s |
173 marc_fixed('008','15','|||');
175 #marc_fixed('008','15',
185 # regex('s/[\s;:]/g',
192 ## 008 35-37 - Language
193 marc_fixed('008','35',
194 # first( lc(rec('101')) )
198 ## 008 38 - Modified record
199 marc_fixed('008','38','|');
201 ## 008 39 - Cataloging source - d (other)
202 marc_fixed('008','39','d');
204 ### 008 - Books - raspraviti upotrebu ovih polja
205 ## 008 18-21 - Illustrations
206 if ( rec('215','c') && rec('215','c') =~ m/ilustr/ ) {
207 marc_fixed('008','18','a')
210 ## 008 22 - Target audience
211 marc_fixed('008','22','|');
213 ## 008 23 - Form of item
214 marc_fixed('008','23','|');
216 ## 008 24-27 - Nature of contents
217 marc_fixed('008','24','||||');
219 ## 008 28 - Government publication
220 marc_fixed('008','28','|');
222 ## 008 29 - Conference publication
223 marc_fixed('008','29','|');
225 ## 008 30 - Festschrift
226 marc_fixed('008','30','|');
229 marc_fixed('008','31','|');
231 ## 008 32 - Undefined
232 ## 008 33 - Literary form
233 marc_fixed('008','33','|');
235 ## 008 34 - Biography
236 marc_fixed('008','34','|');
239 ## postoji modify za polje 10 -> drugi ISBN poĆØinje prefixom "ISBN" koji se miĆØe (pr. u sfb)
240 #if ( frec('10') ne ( frec('290') ) ) {
241 if ( rec('10','a') !~ /pogre/ ) {
245 # regex('s/\(\d\)\(/$1 \(//g',
251 if ( rec('10','a') =~ /pogre/ ) {
270 ## marc 035a - System Number
271 ## polje moĀ¾e sadrĀ¾avati slova i razmake
272 ## moguƦ problem u pretraĀ¾ivanju ako ima zagrade, kako bi trebalo po standardu
276 # config('input normalize path'),
281 # config('input name'),
305 ## pretpostavke o indikatorima
306 ## 1. Ako postoji polje 300 i ono sadrĀ¾i /Prijevod/ ili /Izv. stv. nasl./, i1 = 1
307 ## (Da li je napomena uvijek pisana?)
308 ## 2. Podatak o prevodiocu u 200g. Problem: razliĆØiti oblici rijeĆØi, razliĆØiti jezici.
309 ## 3. Ako u UDK oznaci postoji "=", bez zagrada, onda je to prijevod
310 ## (ako postoje zagrade pr. 94(=411.16) onda su to pomoƦne oznake)
311 ## pr. 821.111-2=163.42 je prijevod engleske drame na HR.
312 ## to ima samo za knjiĀ¾evna djela, eseje....
313 ## ovo treba kasnije ispravljati
315 #if ( rec('675') =~ m/\d=\d/ ) ?
318 grep( m/prijevod/i, rec('300') )
319 || grep( m/nasl.*izv/i, rec('300') )
320 # ( frec('300') =~ m/Prijevod/ )
321 # || ( rec('300') =~ m/izvorni stvarni naslov/i )
322 # || ( rec('300') =~ m/naslov izvornika/i )
323 # grep( m/[prijevod|stvarni\snaslov]/i, rec('300') )
325 marc_indicators('041', 1, ' ');
326 marc_repeatable_subfield('041','a',
327 map { lc($_) } rec('101')
330 count( rec('101') ) > 1
332 marc_indicators('041', 0, ' ');
333 marc_repeatable_subfield('041','a',
334 map { lc($_) } rec('101')
339 ## ponovljivo polje (101) konvertira se u ponovljivo potpolje (041a)
340 ## koristi se kad ima viĀ¹e od jednog jezika, ili kad se radi o prijevodu
344 ## koristi se kad ima viĀ¹e zemalja izdavanja
347 ## 675 podpolja b, c, d ... - Ā¹to s njima? - provjeriti za svaku bazu
349 ## sk: ima \r\n na kraju
368 ### 084 - other classification (R)
369 ## NSK ga koristi za struĆØnu oznaku NSK iz polja 681
370 ## NSK konvertira polje 686 u 084, u skladu s LOC konv. tablicom
371 ## polje 686 koristi FFPS. joĀ¹ netko?
381 ## I1 = 0 ako je pseudonim (ima 700a, nema 700b)
383 if ( rec('700','a') && ! rec('700','b') ) {
384 marc_indicators('100', 0, ' ');
386 marc_indicators('100', 1, ' ');
396 ### formalna odrednica - iz 503 u 110, i1=0, i2=1
399 ## provjeriti za svaku bazu
400 ## konverzija u 110 ili 111 ovisno o postojanju/nepostojanju nekih polja - provjeriti ispise naslova iz svake zbirke - moguƦe su greĀ¹ke.
401 ## popraviti interpunkciju
403 # ovo vrijedi za FFSFB
404 if ( rec('710','d') || rec('710','e') || rec('710','f') ) {
406 marc_indicators('111', 2, ' ');
410 rec('710','b') ? '.' :
416 rec('710','d') ? '(' :
421 ( ! rec('710','d') ) ? '(' :
422 ( ! rec('710','e') ) ? '(' :
427 ( rec('710','e') && ( rec('710','d') || rec('710','f') ) ) ? '; ' :
428 ( ! rec('710','d') && ! rec('710','f') ) ? '(' :
435 marc_indicators('110', 2, ' ');
442 if ( rec('710','c') ) {
444 surround('(', ')', rec('710','c'))
450 ## i1 = 0 za anonimne publikacije, i1 = 1 ako postoji 700 ili 710
451 ## i2 = pretpostavlja se na temelju ĆØlana na poĆØetku naslova i jezika
456 if ( rec('700') || rec('710') ) {
462 marc_indicators('245', $titleind1, 0);
464 if ( rec('200','a') =~ m/^Einen / ) {
465 marc_indicators('245', $titleind1, 6);
467 if ( rec('200','a') =~ m/^Eine / ) {
468 marc_indicators('245', $titleind1, 5);
470 if ( rec('200','a') =~ m/^(Die|Das|Der|Ein|Les|Los|The) / ) {
471 marc_indicators('245', $titleind1, 4);
473 if ( rec('200','a') =~ m/^(Um|Un|An|La|Le|Lo|Il) / ) {
474 marc_indicators('245', $titleind1, 3);
476 if ( ( rec('101') =~ m/ENG/ ) && ( rec('200','a') =~ m/^A / ) ) {
477 marc_indicators('245', $titleind1, 2);
479 if ( rec('200','a') =~ m/^L / ) {
480 marc_indicators('245', $titleind1, 2);
482 if ( rec('200','a') =~ m/^L'/ ) {
483 marc_indicators('245', $titleind1, 2);
489 ## da li treba makivati razmake u inicijalima?
495 ( ! ( rec('200','d') || rec('200','e') || rec('200','k') ) ) && ( rec('200','f') ) ? ' /' :
496 ( rec('200','d') ) ? ' =' :
497 ( rec('200','e') ) ? ' :' :
498 ( rec('200','k') ) ? ' ;' :
503 ( rec('200','d') && rec('200','f') ) ? ' /' :
504 ( rec('200','d') && rec('200','c') ) ? '.' :
509 ( rec('200','e') && rec('200','f') ) ? ' /' :
510 ( rec('200','e') && rec('200','c') ) ? '.' :
515 ( rec('200','k') && rec('200','f') ) ? ' /' :
516 ( rec('200','k') && rec('200','c') ) ? '.' :
521 ( rec('200','f') && rec('200','c') ) ? '. ' :
524 regex('s/(\S\.)\s(\S\.\s)/$1$2/g',
527 regex('s/(\S\.)\s(\S\.\s)/$1$2/g',
532 ## append to last subfield
544 ## i1=1 ukoliko pravilo nalaĀ¾e napomenu, ali napomenu necemo pisati ponovo u 500
545 ## i1=3 ako pravlo na nalaĀ¾e napomenu
547 ## i2 - pogledati za svaku bazu sto su ti naslovi, pa onda oderditi indikatoda oderditi indikatoree
548 marc_indicators('246', 3, ' ');
554 ## zapisima koji nemaju potpolje, dodaje se ^a u modify - provjeriti za svaku bazu
557 rec('205','f') ? ' / ' :
565 ## ponovljiva potpolja u originalnom redosljedu - priprema u modify
566 marc_original_order('260', '210');
570 ## urediti interpunkcije za sve kombinacije
573 rec('215','c') ? ' : ' :
574 rec('215','d') ? ' ; ' :
575 rec('215','e') ? ' + ' :
582 ( rec('215','c') && rec('215','d') ) ? ' ; ' :
583 ( rec('215','c') && rec('215','e') ) ? ' + ' :
590 rec('215','e') ? ' + ' :
599 ### 362 - brojĆØani podaci za nakladniĆØku cjelinu - to mi nemamo, polje se koristi samo za ĆØasopise
600 ## i1 = 0 - formalizirani oblik navoda
601 ## i1 = 1 - neformalizirani
604 # if ( ! rec('225','z') ) {
606 # ako je naslov nakladniĆØke cjeline sloĀ¾en, podatak se zapisuje u 490, s pripadajuƦim 830
608 #if ( frec('225','a') =~ m/[\/=:]/ ) {
613 ### 490: Subfield _p is not allowed.
615 #marc_indicators('490','0',' ');
618 # from => 225, to => 490,
619 # subfields_rename => [
644 # from => 225, to => 490,
645 # from => "{ z => 1 }",
646 # to => "{ a => 1 }",
653 # marc_indicators('830',' ','0');
654 # i2 ovisi ĆØlanu - popraviti
657 # regex('s/(^.*)\s\/\s(.*)/$1 ($2)/g',
666 ## 2.ind. prema jeziku i ĆØlanu, uskladiti s 245
668 marc_indicators('440', ' ', '0');
670 if ( rec('225','a') =~ m/^Einen / ) {
671 marc_indicators('440', ' ', 6);
674 if ( rec('225','a') =~ m/^Eine / ) {
675 marc_indicators('440', ' ', 5);
678 if ( rec('225','a') =~ m/^(Die|Das|Der|Ein|Les|The) / ) {
679 marc_indicators('440', ' ', 4);
682 if ( rec('225','a') =~ m/^(Um|Un|An|La|Le|Il) / ) {
683 marc_indicators('440', ' ', 3);
686 if ( rec('225','a') =~ m/^(A|L') / ) {
687 marc_indicators('440', ' ', 2);
690 ## 440v nije ponovljivo
693 from => 225, to => 440,
694 subfields_rename => [
711 'a,|x ;|v.|h,|i ;|w',
739 # from => 225, to => 490,
740 # subfields_rename => [
763 # from => "{ a => 1, i => 1, w => 1, \"x\" => 1 }",
764 # to => "{ a => 1, p => 1, v => 1, \"x\" => 1 }",
770 # 'a.|n', # mozda greska
774 # 'a ;|v.|n,|p', # mozda greska
776 # 'n ;|v', # mozda greska
785 ## 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)
789 # ( rec('225','v') ) ? ' ;' :
790 # ( rec('225','w') ) ? ' ; ' :
791 # ( rec('225','x') ) ? ',' :
792 # ( rec('225','h') || rec('225','i') ) ? '.' :
797 # ( rec('225','x') && ( rec('225','h') || rec('225','i') ) ) ? '.' :
802 # ( rec('225','v') && ( rec('225','h') || rec('225','i') ) ) ? '.' :
803 # ( rec('225','v') && rec('225','w') ) ? ' ; ' :
808 # ( rec('225','h') && rec('225','i') ) ? ',' :
809 # ( rec('225','h') && rec('225','w') ) ? ' ; ' :
814 # ( rec('225','i') && rec('225','w') ) ? ' ; ' :
815 # ( rec('225','i') && rec('225','x') ) ? ',' :
819 ## 225w treba ici u 440v, na kraj
820 # '+', join_with(' ; ',
825 #marc_original_order('440','225');
832 # sub { rec('225','a') }
858 ### 502 - biljeĀ¹ka o disertacijama
859 ## odgovarajuƦeg polja nema u originalnim podacima. moĀ¾da se moĀ¾e pretpostaviti?
868 ## FFPS 327 - sadrzaj
869 ## NSK konvertira 327 (NP) u 501 (R)
870 ## u LOC konv. tablici stoji 327 (NP) u 505 (NR)
871 ## standard i validacije dopuĀ¹taju 501 (R) i 505 (R)
872 ## za svaku bazu posebno provjeriti sta je u poljima 327 i 330
873 if ( config() =~ m/ffps|fftu/ ) {
874 marc_indicators('505', '0', ' ');
876 regex('s/\s*[\\r\\n]+\s*\**\s*/ ; /g',
882 if ( config() =~ m/ffan/ ) {
883 marc_indicators('505', '0', ' ');
892 ## NSK konvertira 330 (P) u 520 (P) = LOC konv. tablica
893 if ( config() =~ m/ffps/ ) {
895 regex('s/[\\r\\n]+/. /g',
901 ### 526 - STUDY PROGRAM INFORMATION NOTE
902 ## u nekim bazame je to u 996 - provjeriti za svaku bazu sta je u 996?
903 marc_indicators('526', 8, ' ');
908 ### 538 - zahtjevi sustava
913 ### 653 - Index Term-Uncontrolled
914 ## da li ponovljivo polje ili potpolje, pogledati u Koha tags
915 marc_indicators('653', ' ', ' ');
920 ### 655 - Index Term-Genre/Form
921 marc_indicators('655', ' ', 4);
930 ## ako je u originalu ponovljivo polje treba bioti i konvertirano u ponovljivo !!
931 ## ako ima samo podpolje a onda je pseudonim - nakon konverzije treba provjeriti
932 if ( rec('701','a') =~ m/, / ) {
933 marc_indicators('700', 1, ' ');
935 marc_indicators('700', 0, ' ');
984 ## eventualno nadopuniti 710 i 711 - provjetiti da li u podacima postoji u ISIS-u
987 ### 740 - Added Entry - Uncontrolled Related/Analytical Title
989 ## nadopuniti prvi indikator prema ĆØlanovima
990 marc_indicators('740', '0', ' ');
992 # if ( ! rec('464') ) {
1009 ### 760 w ---------------------------------------------
1010 ## generiranje zapisa o nakladniĆØkoj cjelini i povezivanje podreĆ°enog zapisa s nadreĆ°enim
1013 # rec('225','a') # da li je nakladniĆØka cjelina?
1023 #my $series = get( $series_key );
1029 #$series = join_with('',
1035 #set( $series_key => $series );
1038 #} # nakladniĆØka cjelina
1040 #my $series_key = join_with('',
1048 # marc_indicators('760', 0, ' ');
1054 # get( $series_key )
1060 # my $dup_key = join_with('',
1071 # marc_indicators('776', 0, ' ');
1077 # -------------------------------------------------------------------
1079 ### 774 - Constituent Item Entry - to bi trebali koristiti ali ne koristimo jer NSK to koristi za neĀ¹to drugo
1080 ### 787 - Nonspecific Relationship Entry
1082 #marc_indicators('787','0',' ');
1084 #marc_compose('787',
1085 # 'g', rec('230','v'),
1086 # 't', rec('230','a'),
1087 # 'b', rec('240','a'),
1088 # 'd', rec('250','a'),
1089 # 'd', rec('250','d'),
1090 # 'h', rec('260','a'),
1091 # 'k', rec('270','a'),
1092 # 'n', join_with('. - ',
1095 # 'x', join_with(', ',
1099 #marc_compose('787',
1100 # 'g', rec('231','v'),
1101 # 't', rec('231','a'),
1102 # 'b', rec('241','a'),
1103 # 'd', rec('251','a'),
1104 # 'd', rec('251','d'),
1105 # 'h', rec('261','a'),
1106 # 'k', rec('271','a'),
1107 # 'n', join_with('. - ',
1110 # 'x', join_with(', ',
1114 #marc_compose('787',
1115 # 'g', rec('232','v'),
1116 # 't', rec('232','a'),
1117 # 'b', rec('242','a'),
1118 # 'd', rec('252','a'),
1119 # 'd', rec('252','d'),
1120 # 'h', rec('262','a'),
1121 # 'k', rec('272','a'),
1122 # 'n', join_with('. - ',
1125 # 'x', join_with(', ',
1129 #marc_compose('787',
1130 # 'g', rec('233','v'),
1131 # 't', rec('233','a'),
1132 # 'b', rec('243','a'),
1133 # 'd', rec('253','a'),
1134 # 'h', rec('263','a'),
1135 # 'k', rec('273','a'),
1136 # 'n', join_with('. - ',
1139 # 'x', join_with(', ',
1145 ### 852 - ne koristimo, koristimo 942 i 952
1147 ### 876 - item information - basic bibliographic unit (R)
1148 ## da li ovdje zapisati stare inventarne brojeve?
1153 ### 886 - former marc
1154 # inicijale treba prebaciti u neko lokalno polje, a ovo polje nam ne treba
1156 # marc_indicators('886', 2, ' ');
1183 if ( grep( m/Posebni otisak/, rec('300') ) ) {
1193 ## 990 u sk ima \r\n na kraju
1210 sub { rec('C') . ' ' . rec('D') },
1224 if ( config() =~ m/ffar/ ) {
1245 if ( config() =~ m/ffsf|ffpo|fffi|ffar|ffsk/ ) {
1249 # 'fffi','signature',
1251 # sub { frec('990') },
1253 if ( rec('700','a') ) {
1257 if ( rec('200','a') =~ m/^(The|Die|Das|Der|Ein|Les) / ) {
1260 regex('s/(^.{3}).*/$1/',
1261 uc ( rec('700','a') )
1263 regex('s/^.{4}(.{1}).*/$1/',
1264 lc ( rec('200','a') )
1268 } elsif ( rec('200','a') =~ m/^(Um|Un|An|La|Le|Il) / ) {
1271 regex('s/(^.{3}).*/$1/',
1272 uc ( rec('700','a') )
1274 regex('s/^.{3}(.{1}).*/$1/',
1275 lc ( rec('200','a') )
1279 } elsif ( rec('200','a') =~ m/^Eine / ) {
1282 regex('s/(^.{3}).*/$1/',
1283 uc ( rec('700','a') )
1285 regex('s/^.{5}(.{1}).*/$1/',
1286 lc ( rec('200','a') )
1290 } elsif ( rec('200','a') =~ m/^Einen / ) {
1293 regex('s/(^.{3}).*/$1/',
1294 uc ( rec('700','a') )
1296 regex('s/^.{6}(.{1}).*/$1/',
1297 lc ( rec('200','a') )
1301 } elsif ( rec('200','a') =~ m/^(A|L) / ) {
1304 regex('s/(^.{3}).*/$1/',
1305 uc ( rec('700','a') )
1307 regex('s/^.{2}(.{1}).*/$1/',
1308 lc ( rec('200','a') )
1315 regex('s/(^.{3}).*/$1/',
1316 uc ( rec('700','a') )
1318 regex('s/(^.{1}).*/$1/',
1319 lc ( rec('200','a') )
1324 } elsif ( rec('710','a') ) {
1328 if ( rec('200','a') =~ m/^(The|Die|Das|Der|Ein|Les) / ) {
1331 regex('s/(^.{3}).*/$1/',
1332 uc ( rec('710','a') )
1334 regex('s/^.{4}(.{1}).*/$1/',
1335 lc ( rec('200','a') )
1339 } elsif ( rec('200','a') =~ m/^(Um|Un|An|La|Le|Il) / ) {
1342 regex('s/(^.{3}).*/$1/',
1343 uc ( rec('710','a') )
1345 regex('s/^.{3}(.{1}).*/$1/',
1346 lc ( rec('200','a') )
1350 } elsif ( rec('200','a') =~ m/^Eine / ) {
1353 regex('s/(^.{3}).*/$1/',
1354 uc ( rec('710','a') )
1356 regex('s/^.{5}(.{1}).*/$1/',
1357 lc ( rec('200','a') )
1361 } elsif ( rec('200','a') =~ m/^Einen / ) {
1364 regex('s/(^.{3}).*/$1/',
1365 uc ( rec('710','a') )
1367 regex('s/^.{6}(.{1}).*/$1/',
1368 lc ( rec('200','a') )
1372 } elsif ( rec('200','a') =~ m/^(A|L) / ) {
1375 regex('s/(^.{3}).*/$1/',
1376 uc ( rec('710','a') )
1378 regex('s/^.{2}(.{1}).*/$1/',
1379 lc ( rec('200','a') )
1386 regex('s/(^.{3}).*/$1/',
1387 uc ( rec('710','a') )
1389 regex('s/(^.{1}).*/$1/',
1390 lc ( rec('200','a') )
1395 } elsif ( rec('200','a') =~ m/^(The|Die|Das|Der|Ein|Les) / ) {
1400 regex('s/^.{4}(.{3}).*/$1/',
1401 uc ( rec('200','a') )
1410 regex('s/(^\w{3}).*/$1/',
1411 uc ( rec('200','a') )
1415 } # if config() za oznaku primjerka
1417 if ( ( rec('230') || rec('231') || rec('232') || rec('233') ) ) {
1418 warn "skupni zapis - nema primjeraka";
1441 ## 1. da li je zapis pregledan ili nije i datum kad je pregledan
1442 ## provjeriti za svaku bazu koje polje koristi
1444 ## AN: 999 Pregledan