diff --git a/htdocs/compta/bank/releve.php b/htdocs/compta/bank/releve.php index 902495bc6aa..2fa9436d366 100644 --- a/htdocs/compta/bank/releve.php +++ b/htdocs/compta/bank/releve.php @@ -146,9 +146,14 @@ if (empty($num)) print ''; print ''; - print ''; + print ''; + print ''; + print ''; + print ''; + + $balancestart=array(); + $content=array(); - //while ($i < min($numrows,$conf->liste_limit)) // retrait de la limite tant qu'il n'y a pas de pagination while ($i < min($numrows,$conf->liste_limit)) { $objp = $db->fetch_object($result); @@ -159,7 +164,37 @@ if (empty($num)) } else { - print ''."\n"; + print ''; + + // Calculate start amount + $sql = "SELECT sum(b.amount) as amount"; + $sql.= " FROM ".MAIN_DB_PREFIX."bank as b"; + $sql.= " WHERE b.num_releve < '".$db->escape($objp->numr)."'"; + $sql.= " AND b.fk_account = ".$acct->id; + $resql=$db->query($sql); + if ($resql) + { + $obj=$db->fetch_object($resql); + $balancestart[$objp->numr] = $obj->amount; + $db->free($resql); + } + print ''; + + // Calculate end amount + $sql = "SELECT sum(b.amount) as amount"; + $sql.= " FROM ".MAIN_DB_PREFIX."bank as b"; + $sql.= " WHERE b.num_releve = '".$db->escape($objp->numr)."'"; + $sql.= " AND b.fk_account = ".$acct->id; + $resql=$db->query($sql); + if ($resql) + { + $obj=$db->fetch_object($resql); + $content[$objp->numr] = $obj->amount; + $db->free($resql); + } + print ''; + + print ''."\n"; } $i++; } @@ -179,6 +214,7 @@ else */ $ve=$_GET["ve"]; + // Define number of receipt to show (current, previous or next one ?) $found=false; if ($_GET["rel"] == 'prev') { diff --git a/htdocs/install/mysql/migration/3.7.0-3.8.0.sql b/htdocs/install/mysql/migration/3.7.0-3.8.0.sql index 60d0e0660da..a96888b5173 100755 --- a/htdocs/install/mysql/migration/3.7.0-3.8.0.sql +++ b/htdocs/install/mysql/migration/3.7.0-3.8.0.sql @@ -19,6 +19,9 @@ -- -- VMYSQL4.1 DELETE FROM llx_usergroup_user WHERE fk_usergroup NOT IN (SELECT rowid from llx_usergroup); +ALTER TABLE llx_bank ADD INDEX idx_bank_num_releve(num_releve); + + --create table for price expressions and add column in product supplier create table llx_c_price_expression ( diff --git a/htdocs/install/mysql/tables/llx_bank.key.sql b/htdocs/install/mysql/tables/llx_bank.key.sql index cab5f200234..8eb2e963a32 100644 --- a/htdocs/install/mysql/tables/llx_bank.key.sql +++ b/htdocs/install/mysql/tables/llx_bank.key.sql @@ -20,5 +20,7 @@ ALTER TABLE llx_bank ADD INDEX idx_bank_datev(datev); ALTER TABLE llx_bank ADD INDEX idx_bank_dateo(dateo); ALTER TABLE llx_bank ADD INDEX idx_bank_fk_account(fk_account); ALTER TABLE llx_bank ADD INDEX idx_bank_rappro(rappro); +ALTER TABLE llx_bank ADD INDEX idx_bank_num_releve(num_releve); +
'.$langs->trans("AccountStatement").'
'.$langs->trans("AccountStatement").''.$langs->trans("InitialBankBalance").''.$langs->trans("EndBankBalance").'
'.$objp->numr.'
'.$objp->numr.''.price($balancestart[$objp->numr],'',$langs,1,-1,-1,$conf->currency).''.price(($balancestart[$objp->numr]+$content[$objp->numr]),'',$langs,1,-1,-1,$conf->currency).'