Lines 5-17
use warnings;
Link Here
|
5 |
use C4::Context; |
5 |
use C4::Context; |
6 |
my $dbh=C4::Context->dbh; |
6 |
my $dbh=C4::Context->dbh; |
7 |
|
7 |
|
8 |
print "Will do : Upgrade to $DBversion done (Bug 13624 - Remove columns branchcode, categorytype from table overduerules_transport_types)\n"; |
8 |
print "Will do : Bug 13624 - Remove columns branchcode, categorytype from table overduerules_transport_types\n"; |
9 |
|
9 |
|
10 |
#if ( CheckVersion($DBversion) ) { |
10 |
#if ( CheckVersion($DBversion) ) { |
11 |
$dbh->do("SET FOREIGN_KEY_CHECKS=0"); |
11 |
$dbh->do("SET FOREIGN_KEY_CHECKS=0"); |
12 |
$dbh->do("ALTER TABLE overduerules RENAME old_overduerules"); |
12 |
$dbh->do("ALTER TABLE overduerules RENAME old_overduerules"); |
13 |
$dbh->do("CREATE TABLE overduerules ( |
13 |
$dbh->do("CREATE TABLE overduerules ( |
14 |
`overduerules_id` mediumint NOT NULL AUTO_INCREMENT, |
14 |
`overduerules_id` int(11) NOT NULL AUTO_INCREMENT, |
15 |
`branchcode` varchar(10) NOT NULL DEFAULT '', |
15 |
`branchcode` varchar(10) NOT NULL DEFAULT '', |
16 |
`categorycode` varchar(10) NOT NULL DEFAULT '', |
16 |
`categorycode` varchar(10) NOT NULL DEFAULT '', |
17 |
`delay1` int(4) DEFAULT NULL, |
17 |
`delay1` int(4) DEFAULT NULL, |
Lines 23-43
print "Will do : Upgrade to $DBversion done (Bug 13624 - Remove columns branchco
Link Here
|
23 |
`delay3` int(4) DEFAULT NULL, |
23 |
`delay3` int(4) DEFAULT NULL, |
24 |
`letter3` varchar(20) DEFAULT NULL, |
24 |
`letter3` varchar(20) DEFAULT NULL, |
25 |
`debarred3` int(1) DEFAULT '0', |
25 |
`debarred3` int(1) DEFAULT '0', |
26 |
PRIMARY KEY (`overduerules_id`) |
26 |
PRIMARY KEY (`overduerules_id`), |
|
|
27 |
UNIQUE KEY `overduerules_branch_cat` (`branchcode`,`categorycode`) |
27 |
) ENGINE=InnoDB DEFAULT CHARSET=utf8;"); |
28 |
) ENGINE=InnoDB DEFAULT CHARSET=utf8;"); |
28 |
$dbh->do("INSERT INTO overduerules(branchcode, categorycode, delay1, letter1, debarred1, delay2, debarred2, letter2, delay3, letter3, debarred3) SELECT * FROM old_overduerules"); |
29 |
$dbh->do("INSERT INTO overduerules(branchcode, categorycode, delay1, letter1, debarred1, delay2, debarred2, letter2, delay3, letter3, debarred3) SELECT * FROM old_overduerules"); |
29 |
$dbh->do("DROP TABLE old_overduerules"); |
30 |
$dbh->do("DROP TABLE old_overduerules"); |
30 |
$dbh->do("ALTER TABLE overduerules_transport_types |
31 |
$dbh->do("ALTER TABLE overduerules_transport_types |
31 |
ADD COLUMN overduerules_id mediumint NOT NULL"); |
32 |
ADD COLUMN overduerules_id int(11) NOT NULL"); |
32 |
my $mtts = $dbh->selectall_arrayref("select * from overduerules_transport_types", { Slice => {} }); |
33 |
my $mtts = $dbh->selectall_arrayref("SELECT * FROM overduerules_transport_types", { Slice => {} }); |
33 |
$dbh->do("DELETE FROM overduerules_transport_types"); |
34 |
$dbh->do("DELETE FROM overduerules_transport_types"); |
34 |
$dbh->do("ALTER TABLE overduerules_transport_types |
35 |
$dbh->do("ALTER TABLE overduerules_transport_types |
35 |
DROP FOREIGN KEY overduerules_fk, |
36 |
DROP FOREIGN KEY overduerules_fk, |
36 |
ADD FOREIGN KEY overduerules_transport_types_fk (overduerules_id) REFERENCES overduerules (overduerules_id) ON DELETE CASCADE ON UPDATE CASCADE, |
37 |
ADD FOREIGN KEY overduerules_transport_types_fk (overduerules_id) REFERENCES overduerules (overduerules_id) ON DELETE CASCADE ON UPDATE CASCADE, |
37 |
DROP COLUMN branchcode, |
38 |
DROP COLUMN branchcode, |
38 |
DROP COLUMN categorycode"); |
39 |
DROP COLUMN categorycode"); |
39 |
my $s = $dbh->prepare("insert into overduerules_transport_types (overduerules_id, id, letternumber, message_transport_type) " |
40 |
my $s = $dbh->prepare("INSERT INTO overduerules_transport_types (overduerules_id, id, letternumber, message_transport_type) " |
40 |
." values((SELECT overduerules_id FROM overduerules WHERE branchcode = ? AND categorycode = ?),?,?,?)"); |
41 |
." VALUES((SELECT overduerules_id FROM overduerules WHERE branchcode = ? AND categorycode = ?),?,?,?)"); |
41 |
foreach my $mtt(@$mtts){ |
42 |
foreach my $mtt(@$mtts){ |
42 |
$s->execute($mtt->{branchcode}, $mtt->{categorycode}, $mtt->{id}, $mtt->{letternumber}, $mtt->{message_transport_type} ); |
43 |
$s->execute($mtt->{branchcode}, $mtt->{categorycode}, $mtt->{id}, $mtt->{letternumber}, $mtt->{message_transport_type} ); |
43 |
} |
44 |
} |