Lines 41-46
my $where;
Link Here
|
41 |
my $offset; |
41 |
my $offset; |
42 |
my $run_as_root; |
42 |
my $run_as_root; |
43 |
my $run_user = (getpwuid($<))[0]; |
43 |
my $run_user = (getpwuid($<))[0]; |
|
|
44 |
my $items_sort; |
45 |
my $items_limit; |
44 |
|
46 |
|
45 |
my $verbose_logging = 0; |
47 |
my $verbose_logging = 0; |
46 |
my $zebraidx_log_opt = " -v none,fatal,warn "; |
48 |
my $zebraidx_log_opt = " -v none,fatal,warn "; |
Lines 65-70
my $result = GetOptions(
Link Here
|
65 |
'offset:i' => \$offset, |
67 |
'offset:i' => \$offset, |
66 |
'v+' => \$verbose_logging, |
68 |
'v+' => \$verbose_logging, |
67 |
'run-as-root' => \$run_as_root, |
69 |
'run-as-root' => \$run_as_root, |
|
|
70 |
'items-sort:s' => \$items_sort, |
71 |
'items-limit:i' => \$items_limit, |
68 |
); |
72 |
); |
69 |
|
73 |
|
70 |
if (not $result or $want_help) { |
74 |
if (not $result or $want_help) { |
Lines 103-108
if ($process_zebraqueue and $do_not_clear_zebraqueue) {
Link Here
|
103 |
die $msg; |
107 |
die $msg; |
104 |
} |
108 |
} |
105 |
|
109 |
|
|
|
110 |
if (($items_limit or $items_sort) and !$biblios) { |
111 |
my $msg = "Cannot specify --items_limit or --items_sort without -b\n"; |
112 |
$msg .= "Please do '$0 --help' to see usage.\n"; |
113 |
die $msg; |
114 |
} |
115 |
|
106 |
if ($reset) { |
116 |
if ($reset) { |
107 |
$noshadow = 1; |
117 |
$noshadow = 1; |
108 |
} |
118 |
} |
Lines 563-569
sub get_raw_marc_record {
Link Here
|
563 |
$fetch_sth->finish(); |
573 |
$fetch_sth->finish(); |
564 |
return unless $marc; |
574 |
return unless $marc; |
565 |
} else { |
575 |
} else { |
566 |
eval { $marc = GetMarcBiblio($record_number, 1); }; |
576 |
eval { $marc = GetMarcBiblio($record_number); }; |
567 |
if ($@ || !$marc) { |
577 |
if ($@ || !$marc) { |
568 |
# here we do warn since catching an exception |
578 |
# here we do warn since catching an exception |
569 |
# means that the bib was found but failed |
579 |
# means that the bib was found but failed |
Lines 572-577
sub get_raw_marc_record {
Link Here
|
572 |
return; |
582 |
return; |
573 |
} |
583 |
} |
574 |
} |
584 |
} |
|
|
585 |
add_items_to_biblio($marc, $record_number); |
575 |
} else { |
586 |
} else { |
576 |
eval { $marc = GetAuthority($record_number); }; |
587 |
eval { $marc = GetAuthority($record_number); }; |
577 |
if ($@) { |
588 |
if ($@) { |
Lines 582-587
sub get_raw_marc_record {
Link Here
|
582 |
return $marc; |
593 |
return $marc; |
583 |
} |
594 |
} |
584 |
|
595 |
|
|
|
596 |
sub add_items_to_biblio { |
597 |
my $record = shift; |
598 |
my $biblionumber = shift; |
599 |
return unless $record && $biblionumber; |
600 |
|
601 |
my $items_query = q{ |
602 |
SELECT itemnumber |
603 |
FROM items |
604 |
WHERE biblionumber = ? |
605 |
}; |
606 |
if ($items_sort) { |
607 |
$items_query .= q{ ORDER BY } . $items_sort; |
608 |
} |
609 |
$items_query .= q{ LIMIT } . $items_limit if ($items_limit); |
610 |
my $items_sth = $dbh->prepare($items_query); |
611 |
$items_sth->execute($biblionumber); |
612 |
|
613 |
my @itemnumbers; |
614 |
while ( my $itemnumber = $items_sth->fetchrow_array ) { |
615 |
push @itemnumbers, $itemnumber; |
616 |
} |
617 |
|
618 |
C4::Biblio::EmbedItemsInMarcBiblio( $record, $biblionumber, \@itemnumbers ) |
619 |
if (@itemnumbers); |
620 |
} |
621 |
|
585 |
sub fix_leader { |
622 |
sub fix_leader { |
586 |
# FIXME - this routine is suspect |
623 |
# FIXME - this routine is suspect |
587 |
# It blanks the Leader/00-05 and Leader/12-16 to |
624 |
# It blanks the Leader/00-05 and Leader/12-16 to |
Lines 745-750
Parameters:
Link Here
|
745 |
--where let you specify a WHERE query, like itemtype='BOOK' |
782 |
--where let you specify a WHERE query, like itemtype='BOOK' |
746 |
or something like that |
783 |
or something like that |
747 |
|
784 |
|
|
|
785 |
--items-sort items sort column, from items table, and order. |
786 |
example: --items-sort "dateaccessioned DESC" |
787 |
--items-limit 50 max number of items per biblio |
788 |
|
748 |
--munge-config Deprecated option to try |
789 |
--munge-config Deprecated option to try |
749 |
to fix Zebra config files. |
790 |
to fix Zebra config files. |
750 |
|
791 |
|
751 |
- |
|
|