[Koha-cvs] CVS: koha/reports catalogue_stats.pl,1.13,1.14

Henri-Damien LAURENT hdl at users.sourceforge.net
Tue Aug 9 14:06:48 CEST 2005


Update of /cvsroot/koha/koha/reports
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32710/reports

Modified Files:
	catalogue_stats.pl 
Log Message:
Bug Fixing : taking alphanumeric itemcallnumber into accounts.

Index: catalogue_stats.pl
===================================================================
RCS file: /cvsroot/koha/koha/reports/catalogue_stats.pl,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -r1.13 -r1.14
*** catalogue_stats.pl	2 Aug 2005 15:49:25 -0000	1.13
--- catalogue_stats.pl	9 Aug 2005 12:06:46 -0000	1.14
***************
*** 329,338 ****
   	$linefilter[0] = @$filters[4] if ($line =~ /items.itemcallnumber/ )  ;
   	$linefilter[1] = @$filters[5] if ($line =~ /items.itemcallnumber/ )  ;
!  	@linefilter[0] = @$filters[6] if ($line =~ /itemtype/ )  ;
!  	@linefilter[0] = @$filters[7] if ($line =~ /publishercode/ ) ;
   	$linefilter[0] = @$filters[8] if ($line =~ /publicationyear/ ) ;
   	$linefilter[1] = @$filters[9] if ($line =~ /publicationyear/ ) ;
!  	@linefilter[0] = @$filters[10] if ($line =~ /items.homebranch/ ) ;
!  	@linefilter[0] = @$filters[11] if ($line =~ /items.holdingbranch/ ) ;
  # 
   	my @colfilter ;
--- 329,338 ----
   	$linefilter[0] = @$filters[4] if ($line =~ /items.itemcallnumber/ )  ;
   	$linefilter[1] = @$filters[5] if ($line =~ /items.itemcallnumber/ )  ;
!  	$linefilter[0] = @$filters[6] if ($line =~ /itemtype/ )  ;
!  	$linefilter[0] = @$filters[7] if ($line =~ /publishercode/ ) ;
   	$linefilter[0] = @$filters[8] if ($line =~ /publicationyear/ ) ;
   	$linefilter[1] = @$filters[9] if ($line =~ /publicationyear/ ) ;
!  	$linefilter[0] = @$filters[10] if ($line =~ /items.homebranch/ ) ;
!  	$linefilter[0] = @$filters[11] if ($line =~ /items.holdingbranch/ ) ;
  # 
   	my @colfilter ;
***************
*** 343,352 ****
   	$colfilter[0] = @$filters[4] if ($column =~ /itemcallnumber/ )  ;
   	$colfilter[1] = @$filters[5] if ($column =~ /itemcallnumber/ )  ;
!  	@colfilter[0] = @$filters[6] if ($column =~ /itemtype/ )  ;
!  	@colfilter[0] = @$filters[7] if ($column =~ /publishercode/ ) ;
   	$colfilter[0] = @$filters[8] if ($column =~ /publicationyear/ ) ;
   	$colfilter[1] = @$filters[9] if ($column =~ /publicationyear/ ) ;
!  	@colfilter[0] = @$filters[10] if ($column =~ /items.homebranch/ ) ;
!  	@colfilter[0] = @$filters[11] if ($column =~ /items.holdingbranch/ ) ;
  
  # 1st, loop rows.
--- 343,352 ----
   	$colfilter[0] = @$filters[4] if ($column =~ /itemcallnumber/ )  ;
   	$colfilter[1] = @$filters[5] if ($column =~ /itemcallnumber/ )  ;
!  	$colfilter[0] = @$filters[6] if ($column =~ /itemtype/ )  ;
!  	$colfilter[0] = @$filters[7] if ($column =~ /publishercode/ ) ;
   	$colfilter[0] = @$filters[8] if ($column =~ /publicationyear/ ) ;
   	$colfilter[1] = @$filters[9] if ($column =~ /publicationyear/ ) ;
!  	$colfilter[0] = @$filters[10] if ($column =~ /items.homebranch/ ) ;
!  	$colfilter[0] = @$filters[11] if ($column =~ /items.holdingbranch/ ) ;
  
  # 1st, loop rows.
***************
*** 455,521 ****
  
  # preparing calculation
! 	my $strcalc .= "SELECT $linefield, $colfield, count( * ) FROM biblioitems LEFT JOIN  items ON (items.biblioitemnumber = biblioitems.biblioitemnumber)";
! 	my $cond=0;
  	if (@$filters[0]){
  		@$filters[0]=~ s/\*/%/g;
! 		$strcalc .= " WHERE dewey >" . @$filters[0] ."";
! 		$cond=1; 
  	}
  	if (@$filters[1]){
  		@$filters[1]=~ s/\*/%/g ;
! 		if ($cond){
! 			$strcalc .= " AND dewey <" . @$filters[1] ."";
! 		} else {
! 			$strcalc .= " WHERE dewey <" . @$filters[1] ."" ;
! 			$cond=1;
! 		}
  		
  	}
  	if (@$filters[2]){
  		@$filters[2]=~ s/\*/%/g ;
! 		if ($cond){
! 			$strcalc .= " AND lccn >" . @$filters[2] ."" ;
! 		} else {
! 			$strcalc .= " WHERE lccn > " . @$filters[2] ."" ;
! 			$cond=1;
! 		}
  	}
  	if (@$filters[3]){
  		@$filters[3]=~ s/\*/%/g;
! 		if ($cond){
! 			$strcalc .= " AND lccn <" . @$filters[3] ."" ;
! 		} else {
! 			$strcalc .= " WHERE lccn <" . @$filters[3] ."" ;
! 			$cond=1;
! 		}
  	}
  	if (@$filters[4]){
  		@$filters[4]=~ s/\*/%/g ;
! 		if ($cond){
! 			$strcalc .= " AND items.itemcallnumber >" . @$filters[4] ."" ;
! 		} else {
! 			$strcalc .= " WHERE items.itemcallnumber >" . @$filters[4] ."" ;
! 			$cond=1;
! 		}
  	}
  	
  	if (@$filters[5]){
  		@$filters[5]=~ s/\*/%/g;
! 		if ($cond){
! 			$strcalc .= " AND items.itemcallnumber <" . @$filters[5] ."" ;
! 		} else {
! 			$strcalc .= " WHERE items.itemcallnumber <" . @$filters[5] ."" ;
! 			$cond=1;
! 		}
  	}
  	
  	if (@$filters[6]){
  		@$filters[6]=~ s/\*/%/g;
! 		if ($cond){
! 			$strcalc .= " AND biblioitems.itemtype like '" . @$filters[6] ."'";
! 		} else {
! 			$strcalc .= " WHERE biblioitems.itemtype like '" . @$filters[6] ."'";
! 			$cond=1;
! 		}
  	}
  	
--- 455,489 ----
  
  # preparing calculation
! 	my $strcalc .= "SELECT $linefield, $colfield, count( * ) FROM biblioitems LEFT JOIN  items ON (items.biblioitemnumber = biblioitems.biblioitemnumber) WHERE 1";
  	if (@$filters[0]){
  		@$filters[0]=~ s/\*/%/g;
! 		$strcalc .= " AND dewey >" . @$filters[0] ."";
  	}
  	if (@$filters[1]){
  		@$filters[1]=~ s/\*/%/g ;
! 		$strcalc .= " AND dewey <" . @$filters[1] ."";
  		
  	}
  	if (@$filters[2]){
  		@$filters[2]=~ s/\*/%/g ;
! 		$strcalc .= " AND lccn >" . @$filters[2] ."" ;
  	}
  	if (@$filters[3]){
  		@$filters[3]=~ s/\*/%/g;
! 		$strcalc .= " AND lccn <" . @$filters[3] ."" ;
  	}
  	if (@$filters[4]){
  		@$filters[4]=~ s/\*/%/g ;
! 		$strcalc .= " AND items.itemcallnumber >=" . $dbh->quote(@$filters[4]) ."" ;
  	}
  	
  	if (@$filters[5]){
  		@$filters[5]=~ s/\*/%/g;
! 		$strcalc .= " AND items.itemcallnumber <=" . $dbh->quote(@$filters[5]) ."" ;
  	}
  	
  	if (@$filters[6]){
  		@$filters[6]=~ s/\*/%/g;
! 		$strcalc .= " AND biblioitems.itemtype like '" . @$filters[6] ."'";
  	}
  	
***************
*** 523,567 ****
  		@$filters[7]=~ s/\*/%/g;
  		@$filters[7].="%" unless @$filters[7]=~/%/;
! 		if ($cond){
! 			$strcalc .= " AND biblioitems.publishercode like \"" . @$filters[7] ."\"";
! 		} else {
! 			$strcalc .= " WHERE biblioitems.publishercode like \"" . @$filters[7] ."\"";
! 			$cond=1;
! 		}
  	}
  	if (@$filters[8]){
  		@$filters[8]=~ s/\*/%/g;
! 		if ($cond){
! 			$strcalc .= " AND publicationyear >" . @$filters[8] ."" ;
! 		} else {
! 			$strcalc .= " WHERE publicationyear >" . @$filters[8] ."" ;
! 			$cond=1;
! 		}
  	}
  	if (@$filters[9]){
  		@$filters[9]=~ s/\*/%/g;
! 		if ($cond){
! 			$strcalc .= " AND publicationyear <" . @$filters[9] ."";
! 		} else {
! 			$strcalc .= " WHERE publicationyear <" . @$filters[9] ."";
! 			$cond=1;
! 		}
  	}
  	if (@$filters[10]){
  		@$filters[10]=~ s/\*/%/g;
! 		if ($cond){
! 			$strcalc .= " AND items.homebranch like '" . @$filters[10] ."'";
! 		} else {
! 			$strcalc .= " WHERE items.homebranch like '" . @$filters[10] ."'";
! 			$cond=1;
! 		}
  	}
  	if (@$filters[11]){
  		@$filters[11]=~ s/\*/%/g;
! 		if ($cond){
! 			$strcalc .= " AND items.holdingbranch like '" . @$filters[11] ."'" if ( @$filters[11] );
! 		} else {
! 			$strcalc .= " WHERE items.holdingbranch like '" . @$filters[11] ."'" if ( @$filters[11] );
! 		}
  	}
  	
--- 491,511 ----
  		@$filters[7]=~ s/\*/%/g;
  		@$filters[7].="%" unless @$filters[7]=~/%/;
! 		$strcalc .= " AND biblioitems.publishercode like \"" . @$filters[7] ."\"";
  	}
  	if (@$filters[8]){
  		@$filters[8]=~ s/\*/%/g;
! 		$strcalc .= " AND publicationyear >" . @$filters[8] ."" ;
  	}
  	if (@$filters[9]){
  		@$filters[9]=~ s/\*/%/g;
! 		$strcalc .= " AND publicationyear <" . @$filters[9] ."";
  	}
  	if (@$filters[10]){
  		@$filters[10]=~ s/\*/%/g;
! 		$strcalc .= " AND items.homebranch like '" . @$filters[10] ."'";
  	}
  	if (@$filters[11]){
  		@$filters[11]=~ s/\*/%/g;
! 		$strcalc .= " AND items.holdingbranch like '" . @$filters[11] ."'" if ( @$filters[11] );
  	}
  	





More information about the Koha-cvs mailing list