View | Details | Raw Unified | Return to bug 17196
Collapse All | Expand All

(-)a/misc/migration_tools/switch_marc21_series_info.pl (-6 / +33 lines)
Lines 58-73 if ( ! $result || $show_help ) { Link Here
58
58
59
my $dbh = C4::Context->dbh;
59
my $dbh = C4::Context->dbh;
60
60
61
my $count_sth = $dbh->prepare( 'SELECT COUNT(biblionumber) FROM biblio CROSS JOIN biblioitems USING (biblionumber) WHERE ExtractValue(marcxml,\'//datafield[@tag="440"]/subfield[@code="a"]\') OR ExtractValue(marcxml,\'//datafield[@tag="440"]/subfield[@code="v"]\') OR ExtractValue(marcxml,\'//datafield[@tag="440"]/subfield[@code="n"]\') OR ExtractValue(marcxml,\'//datafield[@tag="490"]/subfield[@code="a"]\') OR ExtractValue(marcxml,\'//datafield[@tag="490"]/subfield[@code="v"]\')' );
61
my $count_sth = $dbh->prepare(
62
62
    q|
63
my $bibs_sth = $dbh->prepare( 'SELECT biblionumber FROM biblio CROSS JOIN biblioitems USING (biblionumber) WHERE ExtractValue(marcxml,\'//datafield[@tag="440"]/subfield[@code="a"]\') OR ExtractValue(marcxml,\'//datafield[@tag="440"]/subfield[@code="v"]\') OR ExtractValue(marcxml,\'//datafield[@tag="440"]/subfield[@code="n"]\') OR ExtractValue(marcxml,\'//datafield[@tag="490"]/subfield[@code="a"]\') OR ExtractValue(marcxml,\'//datafield[@tag="490"]/subfield[@code="v"]\')' );
63
    SELECT COUNT(biblionumber)
64
    FROM biblio_metadata
65
    WHERE format='marcxml'
66
        AND marcflavour=?
67
        AND (
68
            ExtractValue(metadata,'//datafield[@tag="440"]/subfield[@code="a"]')
69
                OR ExtractValue(metadata,'//datafield[@tag="440"]/subfield[@code="v"]')
70
                OR ExtractValue(metadata,'//datafield[@tag="440"]/subfield[@code="n"]')
71
                OR ExtractValue(metadata,'//datafield[@tag="490"]/subfield[@code="a"]')
72
                OR ExtractValue(metadata,'//datafield[@tag="490"]/subfield[@code="v"]')
73
            )
74
    |
75
);
76
77
my $bibs_sth = $dbh->prepare(
78
    q|
79
    SELECT biblionumber
80
    FROM biblio_metadata
81
    WHERE format='marcxml'
82
        AND marcflavour=?
83
        AND (
84
            ExtractValue(metadata,'//datafield[@tag="440"]/subfield[@code="a"]')
85
                OR ExtractValue(metadata,'//datafield[@tag="440"]/subfield[@code="v"]')
86
                OR ExtractValue(metadata,'//datafield[@tag="440"]/subfield[@code="n"]')
87
                OR ExtractValue(metadata,'//datafield[@tag="490"]/subfield[@code="a"]')
88
                OR ExtractValue(metadata,'//datafield[@tag="490"]/subfield[@code="v"]')
89
            )
90
    |
91
);
64
92
65
unless ( $commit ) {
93
unless ( $commit ) {
66
    print_usage();
94
    print_usage();
67
}
95
}
68
96
69
print "Examining MARC records...\n";
97
print "Examining MARC records...\n";
70
$count_sth->execute();
98
$count_sth->execute( C4::Context->preference('marcflavour') );
71
my ( $num_records ) = $count_sth->fetchrow;
99
my ( $num_records ) = $count_sth->fetchrow;
72
100
73
unless ( $commit ) {
101
unless ( $commit ) {
Lines 105-111 my %fields = ( Link Here
105
    },
133
    },
106
    );
134
    );
107
135
108
$bibs_sth->execute();
136
$bibs_sth->execute( C4::Context->preference('marcflavour') );
109
while ( my ( $biblionumber ) = $bibs_sth->fetchrow ) {
137
while ( my ( $biblionumber ) = $bibs_sth->fetchrow ) {
110
    my $framework = GetFrameworkCode( $biblionumber ) || '';
138
    my $framework = GetFrameworkCode( $biblionumber ) || '';
111
    my ( @newfields );
139
    my ( @newfields );
112
- 

Return to bug 17196