From 62053c1686453c090cfd0229279c8766d127f95a Mon Sep 17 00:00:00 2001 From: rangi Date: Wed, 7 Jun 2006 01:53:15 +0000 Subject: [PATCH] Merging from Katipo work Script to show the breakdown of the amount spent in a budget --- acqui/spent.pl | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100755 acqui/spent.pl diff --git a/acqui/spent.pl b/acqui/spent.pl new file mode 100755 index 0000000000..f4231e268a --- /dev/null +++ b/acqui/spent.pl @@ -0,0 +1,80 @@ +#!/usr/bin/perl + +# script to show a breakdown of committed and spent budgets + +# needs to be templated at some point + +use C4::Context; +use C4::Auth; +use C4::Interface::CGI::Output; +use strict; +use CGI; + +my $dbh = C4::Context->dbh; +my $input = new CGI; +my $bookfund = $input->param('bookfund'); +my $start = $input->param('start'); +my $end = $input->param('end'); + +my ( $template, $loggedinuser, $cookie ) = get_template_and_user( + { + template_name => "acqui/spent.tmpl", + query => $input, + type => "intranet", + authnotrequired => 0, + flagsrequired => { acquisition => 1 }, + debug => 1, + } +); + +my $query = +"Select quantity,datereceived,freight,unitprice,listprice,ecost,quantityreceived + as qrev,subscription,title,itemtype,aqorders.biblionumber,aqorders.booksellerinvoicenumber, + quantity-quantityreceived as tleft, + aqorders.ordernumber + as ordnum,entrydate,budgetdate,booksellerid,aqbasket.basketno + from aqorders,aqorderbreakdown,aqbasket + left join biblioitems on biblioitems.biblioitemnumber=aqorders.biblioitemnumber + where bookfundid=? and + aqorders.ordernumber=aqorderbreakdown.ordernumber and + aqorders.basketno=aqbasket.basketno + and ( + (datereceived >= ? and datereceived < ?)) + and (datecancellationprinted is NULL or + datecancellationprinted='0000-00-00') + + + "; +my $sth = $dbh->prepare($query); +$sth->execute( $bookfund, $start, $end ); + +my $total = 0; +my $toggle; +my @spent_loop; +while ( my $data = $sth->fetchrow_hashref ) { + my $recv = $data->{'qrev'}; + if ( $recv > 0 ) { + my $subtotal = $recv * $data->{'unitprice'}; + $data->{'subtotal'} = $subtotal; + $data->{'unitprice'} += 0; + $total += $subtotal; + if ($toggle) { + $toggle = 0; + } + else { + $toggle = 1; + } + $data->{'toggle'} = $toggle; + push @spent_loop, $data; + } + +} + +$template->param( + SPENTLOOP => \@spent_loop, + total => $total +); +$sth->finish; + +$dbh->disconnect; +output_html_with_http_headers $input, $cookie, $template->output; -- 2.39.5