Bug Fix : 1898 Replaces the previous commit : More fixes.
authorHenri-Damien LAURENT <henridamien@koha-fr.org>
Wed, 19 Mar 2008 15:11:09 +0000 (10:11 -0500)
committerJoshua Ferraro <jmf@liblime.com>
Wed, 19 Mar 2008 16:08:33 +0000 (11:08 -0500)
A) Fixing queries which were mysql old style
B) Fixing output.

+ Fixing queries the same way for bor_issues_top catalogue_out and issues_avg_stats

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
koha-tmpl/intranet-tmpl/prog/en/modules/reports/cat_issues_top.tmpl
reports/bor_issues_top.pl
reports/cat_issues_top.pl
reports/catalogue_out.pl
reports/issues_avg_stats.pl

index b95851f..568f286 100644 (file)
@@ -38,17 +38,18 @@ function Dopop(link) {
                                <!-- TMPL_LOOP NAME="loopcol" -->
                                        <th colspan="2"><!-- TMPL_VAR NAME="coltitle" --></th>
                                <!-- /TMPL_LOOP -->
-</tr>
-<tr>
+        <tr>
                                <th>&nbsp;</th>
                                <!-- TMPL_LOOP NAME="loopcol" -->
                                        <th>Item</th>
                                        <th>Count of Checkouts</th>
                                <!-- /TMPL_LOOP -->
-</tr>
+                         </tr>
                                <!-- TMPL_LOOP NAME="looprow" -->
-<!-- TMPL_IF NAME="hilighted" --><tr class="highlight"><!-- TMPL_ELSE --><tr><!-- /TMPL_IF -->
+<!-- TMPL_IF NAME="hilighted" --><tr class="highlighted"><!-- TMPL_ELSE --><tr><!-- /TMPL_IF -->
                        <td><!-- TMPL_VAR NAME="rowtitle" --></td>
+                                               <!-- TMPL_IF NAME="hilighted" --><td class="hilighted"><!-- TMPL_ELSE --><td><!-- /TMPL_IF -->
+                                               <!-- TMPL_VAR NAME="rowtitle" --></td>
                                                <!-- TMPL_LOOP NAME="loopcell" -->
                                                        <td>
 
@@ -266,4 +267,4 @@ function Dopop(link) {
 <!-- TMPL_INCLUDE NAME="reports-menu.inc" -->
 </div>
 </div>
-<!-- TMPL_INCLUDE NAME="intranet-bottom.inc" -->
\ No newline at end of file
+<!-- TMPL_INCLUDE NAME="intranet-bottom.inc" -->
index f27a0db..d4b9cbf 100755 (executable)
@@ -268,7 +268,12 @@ sub calculate {
         }  
         
         my $strsth2;
-        $strsth2 .= "select distinctrow $colfield FROM `issues`,borrowers,biblioitems LEFT JOIN items ON (biblioitems.biblioitemnumber=items.biblioitemnumber) WHERE issues.itemnumber=items.itemnumber AND issues.borrowernumber=borrowers.borrowernumber and returndate is not null";
+        $strsth2 .= "SELECT DISTINCTROW $colfield 
+                     FROM `issues` 
+                     LEFT JOIN borrowers ON issues.borrowernumber=borrowers.borrowernumber 
+                     LEFT JOIN items ON issues.itemnumber=items.itemnumber 
+                     LEFT JOIN biblioitems ON (biblioitems.biblioitemnumber=items.biblioitemnumber)
+                     WHERE returndate is not null";
         if (($column=~/timestamp/) or ($column=~/returndate/)){
             if ($colfilter[1] and ($colfilter[0])){
                 $strsth2 .= " and $column between '$colfilter[0]' and '$colfilter[1]' " ;
@@ -318,7 +323,11 @@ sub calculate {
 # Processing average loanperiods
     $strcalc .= "SELECT  CONCAT(borrowers.surname , \"\\t\",borrowers.firstname),  COUNT(*) AS RANK, borrowers.borrowernumber AS ID";
     $strcalc .= " , $colfield " if ($colfield);
-    $strcalc .= " FROM `issues`,borrowers,biblioitems LEFT JOIN items ON (biblioitems.biblioitemnumber=items.biblioitemnumber)  WHERE issues.itemnumber=items.itemnumber AND issues.borrowernumber=borrowers.borrowernumber and returndate is not null";
+    $strcalc .= " FROM `issues`
+                  LEFT JOIN  borrowers ON borrowers.borrowernumber
+                  LEFT JOIN  items ON items.itemnumber=issues.itemnumber
+                  LEFT JOIN biblioitems ON (biblioitems.biblioitemnumber=items.biblioitemnumber)  
+                  WHERE returndate is not null";
 
     @$filters[0]=~ s/\*/%/g if (@$filters[0]);
     $strcalc .= " AND issues.timestamp > '" . @$filters[0] ."'" if ( @$filters[0] );
index 9d89bfb..3235bbe 100755 (executable)
@@ -268,7 +268,12 @@ sub calculate {
         }  
         
         my $strsth2;
-        $strsth2 .= "select distinctrow $colfield FROM `issues`,borrowers,biblioitems LEFT JOIN items ON (biblioitems.biblioitemnumber=items.biblioitemnumber) WHERE issues.itemnumber=items.itemnumber AND issues.borrowernumber=borrowers.borrowernumber and returndate is not null";
+        $strsth2 .= "SELECT distinctrow $colfield 
+                     FROM `issues` 
+                     LEFT JOIN borrowers ON borrowers.borrowernumber=issues.borrowernumber 
+                     LEFT JOIN items ON issues.itemnumber=items.itemnumber 
+                     LEFT JOIN biblioitems  ON biblioitems.biblioitemnumber=items.biblioitemnumber 
+                     WHERE returndate is not null";
         if (($column=~/timestamp/) or ($column=~/returndate/)){
             if ($colfilter[1] and ($colfilter[0])){
                 $strsth2 .= " and $column between '$colfilter[0]' and '$colfilter[1]' " ;
@@ -325,7 +330,13 @@ sub calculate {
 # Processing average loanperiods
     $strcalc .= "SELECT DISTINCT biblio.title, COUNT(biblio.biblionumber) AS RANK, biblio.biblionumber AS ID";
     $strcalc .= " , $colfield " if ($colfield);
-    $strcalc .= " FROM `issues`,borrowers,(items LEFT JOIN biblioitems ON biblioitems.biblioitemnumber=items.biblioitemnumber) LEFT JOIN biblio ON (biblio.biblionumber=items.biblionumber) WHERE issues.itemnumber=items.itemnumber AND issues.borrowernumber=borrowers.borrowernumber and returndate is not null";
+    $strcalc .= " FROM `issues` 
+                  LEFT JOIN borrowers ON issues.borrowernumber=borrowers.borrowernumber 
+                  LEFT JOIN (items 
+                         LEFT JOIN biblioitems ON biblioitems.biblioitemnumber=items.biblioitemnumber) 
+                    ON items.itemnumber=issues.itemnumber 
+                  LEFT JOIN biblio ON (biblio.biblionumber=items.biblionumber) 
+                  WHERE returndate is not null";
 
     @$filters[0]=~ s/\*/%/g if (@$filters[0]);
     $strcalc .= " AND issues.timestamp > '" . @$filters[0] ."'" if ( @$filters[0] );
@@ -352,6 +363,7 @@ sub calculate {
     $strcalc .= ", $colfield" if ($column);
     $strcalc .= " order by RANK DESC";
     $strcalc .= ", $colfield " if ($colfield);
+
 #      my $max;
 #      if (@loopcol) {
 #              $max = $line*@loopcol;
index e1d4814..4424aed 100755 (executable)
@@ -256,7 +256,11 @@ sub calculate {
 # Processing average loanperiods
     $strcalc .= "SELECT items.barcode, biblio.title, biblio.biblionumber, biblio.author";
     $strcalc .= " , $colfield " if ($colfield);
-    $strcalc .= " FROM (items LEFT JOIN biblioitems ON biblioitems.biblioitemnumber = items.biblioitemnumber  LEFT JOIN biblio ON biblio.biblionumber=items.biblionumber) LEFT JOIN issues ON  issues.itemnumber=items.itemnumber WHERE issues.itemnumber is null";
+    $strcalc .= " FROM (items 
+                        LEFT JOIN biblioitems ON biblioitems.biblioitemnumber = items.biblioitemnumber  
+                        LEFT JOIN biblio ON biblio.biblionumber=items.biblionumber) 
+                  LEFT JOIN issues ON  issues.itemnumber=items.itemnumber 
+                  WHERE issues.itemnumber is null";
     @$filters[0]=~ s/\*/%/g if (@$filters[0]);
     $strcalc .= " AND items.homebranch like '" . @$filters[0] ."'" if ( @$filters[0] );
     @$filters[1]=~ s/\*/%/g if (@$filters[1]);
index 8d573f1..71e0b30 100755 (executable)
@@ -354,7 +354,16 @@ sub calculate {
     }  
     
     my $strsth;
-    $strsth .= "select distinctrow $linefield FROM `old_issues`,borrowers,biblioitems LEFT JOIN items ON (biblioitems.biblioitemnumber=items.biblioitemnumber) LEFT JOIN issuingrules ON (issuingrules.branchcode=branchcode AND  issuingrules.itemtype=biblioitems.itemtype AND  issuingrules.categorycode=categorycode) WHERE old_issues.itemnumber=items.itemnumber AND old_issues.borrowernumber=borrowers.borrowernumber";
+    $strsth .= "select distinctrow $linefield 
+                FROM `old_issues` 
+                LEFT JOIN borrowers ON borrowers.borrowernumber=old_issues.borrowernumber
+                LEFT JOIN items ON old_issues.itemnumber=items.itemnumber
+                LEFT JOIN biblioitems ON (biblioitems.biblioitemnumber=items.biblioitemnumber) 
+                LEFT JOIN issuingrules ON 
+                    (issuingrules.branchcode=old_issues.branchcode
+                    AND  issuingrules.itemtype=biblioitems.itemtype 
+                    AND  issuingrules.categorycode=borrowers.categorycode) 
+                WHERE returndate is not null";
     
     if (($line=~/timestamp/) or ($line=~/returndate/)){
         if ($linefilter[1] and ($linefilter[0])){
@@ -416,7 +425,16 @@ sub calculate {
     }  
     
     my $strsth2;
-    $strsth2 .= "select distinctrow $colfield FROM `old_issues`,borrowers,biblioitems LEFT JOIN items ON (biblioitems.biblioitemnumber=items.biblioitemnumber) LEFT JOIN issuingrules ON (issuingrules.branchcode=branchcode AND  issuingrules.itemtype=biblioitems.itemtype AND  issuingrules.categorycode=categorycode) WHERE old_issues.itemnumber=items.itemnumber AND old_issues.borrowernumber=borrowers.borrowernumber";
+    $strsth2 .= "SELECT distinctrow $colfield 
+                  FROM `old_issues`
+                  LEFT JOIN borrowers ON borrowers.borrowernumber=old_issues.borrowernumber
+                  LEFT JOIN items  ON items.itemnumber=old_issues.itemnumber  
+                  LEFT JOIN biblioitems ON (biblioitems.biblioitemnumber=items.biblioitemnumber) 
+                  LEFT JOIN issuingrules ON 
+                    (issuingrules.branchcode=old_issues.branchcode 
+                    AND  issuingrules.itemtype=biblioitems.itemtype 
+                    AND  issuingrules.categorycode=borrowers.categorycode) 
+                  WHERE returndate is not null";
     
     if (($column=~/timestamp/) or ($column=~/returndate/)){
         if ($colfilter[1] and ($colfilter[0])){