From feddb25985da526f354cf3a3c6180e96dd2c478c Mon Sep 17 00:00:00 2001 From: Rodolphe Quiedeville Date: Sun, 21 Aug 2005 15:22:46 +0000 Subject: [PATCH] Correction bug 14244 Probleme d'affichage lorsque le compte ne contient aucune lignes a rapprocher --- htdocs/compta/bank/rappro.php | 290 +++++++++++++++++----------------- 1 file changed, 143 insertions(+), 147 deletions(-) diff --git a/htdocs/compta/bank/rappro.php b/htdocs/compta/bank/rappro.php index 9dba4e28a5e..a8e3533802e 100644 --- a/htdocs/compta/bank/rappro.php +++ b/htdocs/compta/bank/rappro.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2001-2005 Rodolphe Quiedeville * Copyright (C) 2004-2005 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify @@ -54,15 +54,15 @@ if ($_POST["action"] == 'rappro') $sql.= " fk_user_rappro=".$user->id; $sql.= " WHERE rowid=".$_POST["rowid"]; - $result = $db->query($sql); - if ($result) + $resql = $db->query($sql); + if ($resql) { if ($cat1 && $_POST["action"]) { $sql = "INSERT INTO ".MAIN_DB_PREFIX."bank_class (lineid, fk_categ) VALUES ($rowid, $cat1)"; - $result = $db->query($sql); + $resql = $db->query($sql); - if ($result) + if ($resql) { $db->commit(); } @@ -93,25 +93,25 @@ if ($_POST["action"] == 'rappro') */ if ($_GET["action"] == 'del') { $sql = "DELETE FROM ".MAIN_DB_PREFIX."bank WHERE rowid=".$_GET["rowid"]; - $result = $db->query($sql); - if (! $result) { + $resql = $db->query($sql); + if (! $resql) { dolibarr_print_error($db); } } $sql = "SELECT rowid, label FROM ".MAIN_DB_PREFIX."bank_categ ORDER BY label"; -$result = $db->query($sql); +$resql = $db->query($sql); $options=""; -if ($result) { +if ($resql) { $var=True; - $num = $db->num_rows($result); + $num = $db->num_rows($resql); $i = 0; while ($i < $num) { if ($options == "") { $options = ""; } - $obj = $db->fetch_object($result); + $obj = $db->fetch_object($resql); $options .= "\n"; $i++; } - $db->free($result); + $db->free($resql); } @@ -126,161 +126,157 @@ $sql .= " FROM ".MAIN_DB_PREFIX."bank as b WHERE rappro=0 AND fk_account=".$_GET $sql .= " ORDER BY dateo"; $sql .= " ASC LIMIT ".$conf->liste_limit; -$result = $db->query($sql); -if ($result) +$resql = $db->query($sql); +if ($resql) { - $var=True; - $num = $db->num_rows($result); + $var=True; + $num = $db->num_rows($resql); - if ($num == 0) + print_titre('Rapprochement compte bancaire : '.$acct->label.''); + print '
'; + + if ($msg) { + print "$msg

"; + } + + // Affiche nom des derniers relevés + $nbmax=5; + $liste=""; + + $sql = "SELECT distinct num_releve FROM ".MAIN_DB_PREFIX."bank"; + $sql.= " WHERE fk_account=".$_GET["account"]; + $sql.= " ORDER BY num_releve DESC"; + $sql.= " LIMIT ".($nbmax+1); + print $langs->trans("LastAccountStatements").' : '; + $resqlr=$db->query($sql); + if ($resqlr) { - header("Location: /compta/bank/account.php?account=".$_GET["account"]); - exit; - } - else + $numr=$db->num_rows($resqlr); + $i=0; + while (($i < $numr) && ($i < $nbmax)) + { + $objr = $db->fetch_object($resqlr); + $last_releve = $objr->num_releve; + $i++; + $liste=''.$objr->num_releve.'   '.$liste; + } + if ($num >= $nbmax) $liste="...   ".$liste; + print "$liste"; + if ($num > 0) print '

'; + else print $langs->trans("None").'

'; + } + else { - - print_titre('Rapprochement compte bancaire : '.$acct->label.''); - print '
'; - - if ($msg) { - print "$msg

"; - } - - // Affiche nom des derniers relevés - $nbmax=5; - $liste=""; - - $sql = "SELECT distinct num_releve FROM ".MAIN_DB_PREFIX."bank"; - $sql.= " WHERE fk_account=".$_GET["account"]; - $sql.= " ORDER BY num_releve DESC"; - $sql.= " LIMIT ".($nbmax+1); - print $langs->trans("LastAccountStatements").' : '; - $resultr=$db->query($sql); - if ($resultr) - { - $numr=$db->num_rows($resultr); - $i=0; - while (($i < $numr) && ($i < $nbmax)) - { - $objr = $db->fetch_object($resultr); - $last_releve = $objr->num_releve; - $i++; - $liste=''.$objr->num_releve.'   '.$liste; - } - if ($num >= $nbmax) $liste="...   ".$liste; - print "$liste"; - if ($num > 0) print '

'; - else print $langs->trans("None").'

'; - } - else - { - dolibarr_print_error($db); - } - - print ''; - print ""; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print "\n"; + dolibarr_print_error($db); } - - $i = 0; - while ($i < $num) + + print '
'.$langs->trans("Date").''.$langs->trans("DateValue").''.$langs->trans("Type").''.$langs->trans("Description").''.$langs->trans("Debit").''.$langs->trans("Credit").''.$langs->trans("Action").''.$langs->trans("AccountStatement").' (Ex: YYYYMM)
'; + print "\n"; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print "\n"; + + + $i = 0; + while ($i < $num) { - $objp = $db->fetch_object($result); - - $var=!$var; - print ""; - print ''; - print ""; - print ""; - print "rowid."\">"; - - print ''; - print ''; - print ''; - print ''; - - if ($objp->amount < 0) + $objp = $db->fetch_object($resql); + + $var=!$var; + print ""; + print ''; + print ""; + print ""; + print "rowid."\">"; + + print ''; + print ''; + print ''; + print ''; + + if ($objp->amount < 0) { - print "\n"; + print "\n"; } - else + else { - print "\n"; + print "\n"; } - - if ($objp->rappro) + + if ($objp->rappro) { - // Si ligne déjà rapprochée, on affiche relevé. - print ""; + // Si ligne déjà rapprochée, on affiche relevé. + print ""; } - else + else { - // Si pas encore rapproché - if ($user->rights->banque->modifier) + // Si pas encore rapproché + if ($user->rights->banque->modifier) { - print '"; + print '"; } - else + else { - print ""; + print ""; } } - - - // Affiche bouton "Rapprocher" - if ($objp->do <= mktime() ) { - print ""; - print ""; - } - else { - print ""; - } - - print ""; - - print ""; - $i++; + + + // Affiche bouton "Rapprocher" + if ($objp->do <= mktime() ) { + print ""; + print ""; + } + else + { + print ""; + } + + print "\n"; + print "\n"; + $i++; } - $db->free($result); - - if ($num != 0) { - print "
'.$langs->trans("Date").''.$langs->trans("DateValue").''.$langs->trans("Type").''.$langs->trans("Description").''.$langs->trans("Debit").''.$langs->trans("Credit").''.$langs->trans("Action").''.$langs->trans("AccountStatement").' (Ex: YYYYMM)
'.dolibarr_print_date($objp->do).''.dolibarr_print_date($objp->dv).''.$objp->type.($objp->num_chq?' '.$objp->num_chq:'').''.$objp->label.'
'.dolibarr_print_date($objp->do).''.dolibarr_print_date($objp->dv).''.$objp->type.($objp->num_chq?' '.$objp->num_chq:'').''.$objp->label.'".price($objp->amount * -1)." ".price($objp->amount * -1)."  ".price($objp->amount)." ".price($objp->amount)."num_releve&account=$acct->id\">$objp->num_relevenum_releve&account=$acct->id\">$objp->num_releve'; - - print ''; - print img_edit(); - print '   '; - - if ($objp->do <= mktime() ) { - print ''; - print img_delete(); - print ""; - } - else { - print " "; // On n'empeche la suppression car le raprochement ne pourra se faire qu'après la date passée et que l'écriture apparaissent bien sur le compte. - } - print "'; + + print ''; + print img_edit(); + print '   '; + + if ($objp->do <= mktime() ) { + print ''; + print img_delete(); + print ""; + } + else { + print " "; // On n'empeche la suppression car le raprochement ne pourra se faire qu'après la date passée et que l'écriture apparaissent bien sur le compte. + } + print "  "; - print ""; - if ($options) { - print "
"; - } - print "
trans("Rapprocher")."\">"; - print ""; - print "Ecriture future. Ne peut pas encore être rapprochée."; - print "
"; + print ""; + if ($options) + { + print "
"; + } + print "
trans("Rapprocher")."\">"; + print ""; + print "Ecriture future. Ne peut pas encore être rapprochée."; + print "
"; + $db->free($resql); + + if ($num != 0) + { + print "\n"; } - -} else { - dolibarr_print_error($db); + +} +else +{ + dolibarr_print_error($db); } $db->close();