correct statistics
authorDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 15 Jun 2011 18:09:30 +0000 (20:09 +0200)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 15 Jun 2011 18:09:30 +0000 (20:09 +0200)
ferlib2koha.pl

index 46d81e1..761cf9c 100755 (executable)
@@ -8,9 +8,10 @@ use Algorithm::CheckDigits;
 $|++;
 
 my $import = {
-       borrowers => $ENV{FULL},
-       issues    => $ENV{FULL},
-       barcode   => $ENV{FULL},
+       borrowers => 0,
+       issues    => 1,
+       reserves  => 0,
+       barcode   => 0,
 };
 
 my $f = DBI->connect("dbi:SQLite:dbname=knjiznica.sqlite","","", { RaiseError => 1, AutoCommit => 0 }) || die $DBI::errstr;
@@ -209,16 +210,18 @@ sub issues {
        while (my $row = $sth->fetchrow_hashref ) {
                $row->{borrowernumber} = lookup($k, 'borrowers', 'cardnumber' => 'borrowernumber', $row->{borrowernumber});
                $row->{itemnumber}     = lookup($k, 'items', 'barcode' => 'itemnumber', $row->{itemnumber});
-               $row->{returndate} = '31.12.2011';
-               insert $table => $row;
 
                my $stat = {
-                       datetime => $row->{timestamp},
+                       datetime => $row->{returndate} || $row->{issuedate},
                        branch   => $row->{branchcode},
                        value    => 0,
-                       type     => $table =~ m/old/ ? 'return' : 'issue',
+                       type     => $row->{returndate} ? 'return' : 'issue',
                };
                $stat->{$_} = $row->{$_} foreach (qw( itemnumber borrowernumber ));
+
+               $row->{returndate} = '31.12.2011';
+               insert $table => $row;
+
                insert statistics => $stat;
        }
 }
@@ -252,6 +255,7 @@ set onloan = date_due, datelastborrowed = issuedate
 }; # import->{issues}
 
 
+if ( $import->{reserves} ) {
 
 $k->do(qq{ delete from reserves where borrowernumber > 100 });
 $k->do(qq{ delete from old_reserves where borrowernumber > 100 });
@@ -299,6 +303,7 @@ from rezerv
 reserves 'old_reserves' => qq{$sql_reserves where datum_opoziv != '' or  datum_ponist != '' or  datum_posud != ''};
 reserves 'reserves'     => qq{$sql_reserves where datum_opoziv == '' and datum_ponist == '' and datum_posud == ''};
 
+} # $import->{reserves}
 
 
 if ( $import->{barcode} ) { # XXX must be last!