Corrected some subfield visibility settings, mostly for hiding local holdings
[koha.git] / misc / koha2marc.pl
1 #!/usr/bin/perl
2
3 use C4::Context;
4 use CGI;
5 use DBI;
6 #use strict;
7 use C4::Biblio;
8 use C4::Output;
9 use Getopt::Long;
10
11 my ( $confirm,$delete);
12 GetOptions(
13         'c' => \$confirm,
14         'd' => \$delete,
15 );
16
17 my $dbh = C4::Context->dbh;
18 if ($delete) {
19         print "deleting MARC tables\n";
20         $dbh->do("delete from marc_biblio");
21         $dbh->do("delete from marc_subfield_table");
22         $dbh->do("delete from marc_blob_subfield");
23         $dbh->do("delete from marc_word");
24 }
25
26 my $userid=$ENV{'REMOTE_USER'};
27 my $sthbiblioitem = $dbh->prepare("select biblioitemnumber from biblioitems where biblionumber=?");
28 my $sthitems = $dbh->prepare("select itemnumber from items where biblionumber=?");
29 my $sth=$dbh->prepare("select biblionumber from biblio");
30 $sth->execute;
31 my $env;
32 $env->{'marconly'}=1;
33 my ($MARC, $biblionumber,$biblioitemnumber,$bibid);
34 while (($biblionumber) = $sth->fetchrow) {
35         print "Processing $biblionumber\n";
36         $sthbiblioitem->execute($biblionumber);
37         ($biblioitemnumber) = $sthbiblioitem->fetchrow;
38         $MARC =  &MARCkoha2marcBiblio($dbh,$biblionumber,$biblioitemnumber);
39         $bibid = &MARCaddbiblio($dbh,$MARC,$biblionumber);
40         # now, search items, and add them...
41         $sthitems->execute($biblionumber);
42         while (($itemnumber) = $sthitems->fetchrow) {
43                 $MARC = &MARCkoha2marcItem($dbh,$biblionumber,$itemnumber);
44                 &MARCadditem($dbh,$MARC,$biblionumber);
45         }
46 }