projects
/
ferlib2koha.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
57bb087
)
reset auto_increment
author
Dobrica Pavlinusic
<dpavlin@rot13.org>
Sun, 26 Jun 2011 18:12:53 +0000
(20:12 +0200)
committer
Dobrica Pavlinusic
<dpavlin@rot13.org>
Sun, 26 Jun 2011 18:12:53 +0000
(20:12 +0200)
ferlib2koha.pl
patch
|
blob
|
history
diff --git
a/ferlib2koha.pl
b/ferlib2koha.pl
index
fdff596
..
8013ab4
100755
(executable)
--- a/
ferlib2koha.pl
+++ b/
ferlib2koha.pl
@@
-5,6
+5,8
@@
use DBI;
use Data::Dump qw/dump/;
use Algorithm::CheckDigits;
use Data::Dump qw/dump/;
use Algorithm::CheckDigits;
+# sudo apt-get install libdbd-sqlite3-perl libdbd-csv-perl
+
$|++;
my $import = {
$|++;
my $import = {
@@
-114,10
+116,24
@@
sub borrowers {
}
}
}
}
+sub sql {
+ my ($db,$sql) = @_;
+ foreach (split(/;/,$sql)) {
+ next if m/^\s*$/;
+ warn "# sql $_";
+ $db->do($_);
+ }
+}
+
if ( $import->{borrowers} ) {
if ( $import->{borrowers} ) {
-$k->do(qq{ delete from borrowers where borrowernumber > 57 });
-$k->do(qq{ delete from borrower_attributes where borrowernumber > 57 });
+sql $k => qq{
+delete from borrowers;
+alter table borrowers auto_increment = 1;
+delete from borrower_attributes;
+alter table borrower_attributes auto_increment = 1;
+};
+
borrowers qq{
select
borrowers qq{
select
@@
-241,12
+257,16
@@
select
from posud
};
from posud
};
-$k->do('delete from old_issues');
-$k->do('delete from issues');
+sql $k => qq{
+delete from old_issues;
+alter table old_issues auto_increment = 1;
+delete from issues;
+alter table issues auto_increment = 1;
+};
issues 'old_issues' => qq{$posud_sql where datum_vra != ''};
issues 'issues' => qq{$posud_sql where datum_vra == ''};
issues 'old_issues' => qq{$posud_sql where datum_vra != ''};
issues 'issues' => qq{$posud_sql where datum_vra == ''};
-
$k->do($_) foreach split(/;/,
qq{
+
sql $k =>
qq{
update items
join issues on items.itemnumber=issues.itemnumber
set onloan = date_due, datelastborrowed = issuedate
update items
join issues on items.itemnumber=issues.itemnumber
set onloan = date_due, datelastborrowed = issuedate
@@
-259,15
+279,19
@@
set datelastseen = returndate
where returndate > datelastseen or datelastseen is null
;
update old_issues set timestamp = returndate
where returndate > datelastseen or datelastseen is null
;
update old_issues set timestamp = returndate
-}
)
;
+};
}; # import->{issues}
if ( $import->{reserves} ) {
}; # import->{issues}
if ( $import->{reserves} ) {
-$k->do(qq{ delete from reserves where borrowernumber > 100 });
-$k->do(qq{ delete from old_reserves where borrowernumber > 100 });
+sql $k => qq{
+delete from reserves;
+alter table reserves auto_increment = 1;
+delete from old_reserves;
+alter table old_reserves auto_increment = 1;
+};
sub reserves {
my ($table, $sql) = @_;
sub reserves {
my ($table, $sql) = @_;