]> git.evergreen-ils.org Git - Evergreen.git/blob - Evergreen/src/extras/import/drain-batgirl-bill.pl
updating the profile map
[Evergreen.git] / Evergreen / src / extras / import / drain-batgirl-bill.pl
1 #!/usr/bin/perl
2
3 use strict;
4 use DBI;
5
6 my $dbh = DBI->connect('DBI:mysql:database=reports;host=batgirl.gsu.edu','miker','poopie');
7
8 print <<SQL;
9
10 DROP TABLE legacy_bill;
11 CREATE TABLE legacy_bill (bill_amount int, balance int, bill_date date, cat_key int, call_key int, item_key int, user_key int, paid bool, reason text, library text, bill_key1 int, bill_key2 int);
12 COPY legacy_bill (bill_amount, balance, bill_date, cat_key, call_key, item_key, user_key, paid, reason, library, bill_key1, bill_key2) FROM STDIN;
13 SQL
14
15 warn "going for the data...";
16
17 my $sth = $dbh->prepare('select * from BILL');
18 $sth->execute;
19
20 warn "got it, writing file...";
21
22 while (my $cn = $sth->fetchrow_hashref) {
23         my @data = map { $$cn{uc($_)} } qw/bill_amount balance bill_date cat_key call_key item_key user_key paid reason library bill_key1 bill_key2/;
24         for (@data) {
25                 if (defined($_)) {
26                         s/\\/\\\\/go;
27                         s/\t/ /go;
28                 } else {
29                         $_ = '\N';
30                 }
31         }
32         print join("\t", @data) . "\n";
33 }
34
35 print "\\.\n";
36 print "CREATE INDEX lb_bk1_idx ON legacy_bill (bill_key1);\n";
37 print "CREATE INDEX lb_usr_idx ON legacy_bill (user_key);\n";
38
39