[Koha-patches] [PATCH] Some code cleaning, and change the output to be greater
Nahuel ANGELINETTI
nahuel.angelinetti at biblibre.com
Sat Apr 18 17:57:09 CEST 2009
---
misc/batchRepairMissingBiblionumbers.pl | 77 +++++++++++++++----------------
1 files changed, 38 insertions(+), 39 deletions(-)
diff --git a/misc/batchRepairMissingBiblionumbers.pl b/misc/batchRepairMissingBiblionumbers.pl
index 9fe0d73..b9214d8 100755
--- a/misc/batchRepairMissingBiblionumbers.pl
+++ b/misc/batchRepairMissingBiblionumbers.pl
@@ -29,49 +29,48 @@ my $sth=$dbh->prepare("select biblionumber,biblioitemnumber from biblioitems ");
$sth->execute();
while (my ($biblionumber,$biblioitemnumber)=$sth->fetchrow ){
- my $record = GetMarcBiblio($biblionumber);
-
- MARCmodbiblionumber($biblionumber,$biblioitemnumber,$record);
+ my $record = GetMarcBiblio($biblionumber);
+ MARCmodbiblionumber($biblionumber,$biblioitemnumber,$record);
}
sub MARCmodbiblionumber{
-my ($biblionumber,$biblioitemnumber,$record)=@_;
-$kohafields{'biblio.biblionumber'}{'value'}=$biblionumber;
-$kohafields{'biblioitems.biblioitemnumber'}{'value'}=$biblioitemnumber;
-my $update=0;
-foreach my $kohafield (keys %kohafields){
- my $tag=$kohafields{$kohafield}{'tag'};
- my $subfield=$kohafields{$kohafield}{'subfield'};
- my @tags = $record->field($tag);
- if (!@tags){
- if ($tag>010){
- my $newrec = MARC::Field->new( $tag,'','', $subfield => $kohafields{$kohafield}{'value'});
- $record->append_fields($newrec);
- $update=1;
- }
- else {
- my $newrec = MARC::Field->new( $tag, $kohafields{$kohafield}{'value'});
- $record->append_fields($newrec);
- $update=1;
- }
- }
- else{
- if (@tags>1){
- warn "too many tags for $biblionumber $biblioitemnumber $tag $subfield";
- }
- elsif ($tag>010) {
- $record->field($tag)->update($subfield, $kohafields{$kohafield}{'value'});
- $update=1
- }
- else {
- next;
- }
- }
-}
-if ($update){
-&ModBiblioMarc($record,'',$biblionumber);
- print "$biblionumber \n";
+ my ($biblionumber,$biblioitemnumber,$record)=@_;
+ $kohafields{'biblio.biblionumber'}{'value'}=$biblionumber;
+ $kohafields{'biblioitems.biblioitemnumber'}{'value'}=$biblioitemnumber;
+ my $update=0;
+ foreach my $kohafield (keys %kohafields){
+ my $tag=$kohafields{$kohafield}{'tag'};
+ my $subfield=$kohafields{$kohafield}{'subfield'};
+ my @tags = $record->field($tag);
+ if (!@tags){
+ if ($tag>010){
+ my $newrec = MARC::Field->new( $tag,'','', $subfield => $kohafields{$kohafield}{'value'});
+ $record->append_fields($newrec);
+ $update=1;
+ }
+ else {
+ my $newrec = MARC::Field->new( $tag, $kohafields{$kohafield}{'value'});
+ $record->append_fields($newrec);
+ $update=1;
+ }
+ }
+ else{
+ if (@tags>1){
+ warn "too many tags for $biblionumber $biblioitemnumber $tag $subfield";
+ }
+ elsif ($tag>010) {
+ $record->field($tag)->update($subfield, $kohafields{$kohafield}{'value'});
+ $update=1
+ }
+ else {
+ next;
+ }
+ }
+ }
+ if ($update){
+ &ModBiblioMarc($record,'',$biblionumber);
+ print "\r$biblionumber";
}
}
END;
--
1.5.6.3
More information about the Koha-patches
mailing list