From 428f6a8085fdef7360473a4c9328766064475324 Mon Sep 17 00:00:00 2001 From: einhverfr Date: Wed, 9 Jan 2008 22:35:21 +0000 Subject: Correcting trial balance and gl report not to pull unapproved transactions git-svn-id: https://ledger-smb.svn.sourceforge.net/svnroot/ledger-smb/trunk@2031 4979c152-3d1c-0410-bac9-87ea11338e46 --- LedgerSMB.pm | 5 ++++- LedgerSMB/GL.pm | 18 ++++++++++++++++++ LedgerSMB/RP.pm | 7 +++++++ bin/gl.pl | 4 ++-- sql/Pg-database.sql | 4 ++-- 5 files changed, 33 insertions(+), 5 deletions(-) diff --git a/LedgerSMB.pm b/LedgerSMB.pm index 9a38149d..7c9e9644 100755 --- a/LedgerSMB.pm +++ b/LedgerSMB.pm @@ -197,7 +197,10 @@ sub new { if (!$self->{script}) { $self->{script} = 'login.pl'; } - if (($self->{script} eq 'login.pl') && + if ($self->{action} eq 'migrate_user'){ + return $self; + } + if ($self->{script} eq 'login.pl' && ($self->{action} eq 'authenticate' || !$self->{action})){ return $self; } diff --git a/LedgerSMB/GL.pm b/LedgerSMB/GL.pm index 8979d3ca..7ed6ab4c 100644 --- a/LedgerSMB/GL.pm +++ b/LedgerSMB/GL.pm @@ -417,6 +417,15 @@ sub all_transactions { } else { $chart_id = 'NULL'; } + + if (!defined $form->{approved}){ + $approved = 'true'; + } elsif ($form->{approved} eq 'all') { + $approved = 'NULL'; + } else { + $approved = $dbh->quote($form->{approved}); + } + my $query = qq|SELECT g.id, 'gl' AS type, $false AS invoice, g.reference, g.description, ac.transdate, ac.source, ac.amount, c.accno, c.gifi_accno, g.notes, c.link, @@ -429,6 +438,9 @@ sub all_transactions { WHERE $glwhere AND (ac.chart_id = $chart_id OR $chart_id IS NULL) + AND ($approved IS NULL OR + $approved = + (ac.approved AND g.approved)) UNION ALL @@ -445,6 +457,9 @@ sub all_transactions { WHERE $arwhere AND (ac.chart_id = $chart_id OR $chart_id IS NULL) + AND ($approved IS NULL OR + $approved = + (ac.approved AND a.approved)) UNION ALL @@ -461,6 +476,9 @@ sub all_transactions { WHERE $apwhere AND (ac.chart_id = $chart_id OR $chart_id IS NULL) + AND ($approved IS NULL OR + $approved = + (ac.approved AND a.approved)) ORDER BY $sortorder|; my $sth = $dbh->prepare($query); diff --git a/LedgerSMB/RP.pm b/LedgerSMB/RP.pm index bd27677f..b51d7290 100644 --- a/LedgerSMB/RP.pm +++ b/LedgerSMB/RP.pm @@ -925,6 +925,13 @@ sub get_accounts { $project = qq| AND ac.project_id = $project_id|; } + if (!defined $form->{approved}){ + $approved = 'true'; + } elsif ($form->{approved} eq 'all') { + $approved = 'NULL'; + } else { + $approved = $dbh->quote($form->{approved}); + } if ( $form->{accounttype} eq 'gifi' ) { diff --git a/bin/gl.pl b/bin/gl.pl index 75cdec6d..bc098aa5 100644 --- a/bin/gl.pl +++ b/bin/gl.pl @@ -131,7 +131,7 @@ qq|