noalyss-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Noalyss-commit] [noalyss] 149/162: Fix problem with total in balance ex


From: Dany De Bontridder
Subject: [Noalyss-commit] [noalyss] 149/162: Fix problem with total in balance export
Date: Sat, 11 Jul 2020 13:24:08 -0400 (EDT)

sparkyx pushed a commit to annotated tag E-4
in repository noalyss.

commit 910c31ab7d44edfa513264dc8a678d0448dc5baa
Author: Dany De Bontridder <dany@alchimerys.be>
AuthorDate: Tue Jan 8 17:53:53 2019 +0100

    Fix problem with total in balance export
---
 include/class/acc_balance.class.php   |   2 +-
 include/export/export_balance_pdf.php | 500 +++++++++++++++++-----------------
 2 files changed, 248 insertions(+), 254 deletions(-)

diff --git a/include/class/acc_balance.class.php 
b/include/class/acc_balance.class.php
index 485cf0b..cdcd175 100644
--- a/include/class/acc_balance.class.php
+++ b/include/class/acc_balance.class.php
@@ -311,7 +311,7 @@ class Acc_Balance
         /* get the list of jrn of the cat. */
 
         $array=Acc_Ledger::array_cat();
-        $jrn=array();
+        $this->jrn=array();
         for ($e=0;$e<count($array);$e++)
         {
             if ( isset($p_array[$e]))
diff --git a/include/export/export_balance_pdf.php 
b/include/export/export_balance_pdf.php
index bc0d4ea..e4d69df 100644
--- a/include/export/export_balance_pdf.php
+++ b/include/export/export_balance_pdf.php
@@ -29,307 +29,302 @@
  * \param e_comment  invoice number
  */
 // Copyright Author Dany De Bontridder danydb@aevalys.eu
-if ( ! defined ('ALLOWED') ) die('Appel direct ne sont pas permis');
+if (!defined('ALLOWED')) die('Appel direct ne sont pas permis');
 include_once("lib/ac_common.php");
-require_once NOALYSS_INCLUDE.'/lib/database.class.php';
+require_once NOALYSS_INCLUDE . '/lib/database.class.php';
 include_once("class/acc_balance.class.php");
-require_once  NOALYSS_INCLUDE.'/header_print.php';
-require_once NOALYSS_INCLUDE.'/class/dossier.class.php';
-require_once NOALYSS_INCLUDE.'/lib/pdf.class.php';
-require_once NOALYSS_INCLUDE.'/lib/http_input.class.php';
-$http=new HttpInput();
+require_once NOALYSS_INCLUDE . '/header_print.php';
+require_once NOALYSS_INCLUDE . '/class/dossier.class.php';
+require_once NOALYSS_INCLUDE . '/lib/pdf.class.php';
+require_once NOALYSS_INCLUDE . '/lib/http_input.class.php';
+$http = new HttpInput();
 
-$gDossier=dossier::id();
+$gDossier = dossier::id();
 bcscale(4);
-$cn=Dossier::connect();
-$rep=new Database();
-require_once  NOALYSS_INCLUDE.'/class/user.class.php';
+$cn = Dossier::connect();
+$rep = new Database();
+require_once NOALYSS_INCLUDE . '/class/user.class.php';
 $g_user->Check();
 
-$bal=new Acc_Balance($cn);
-try
-{
-    $from_periode=$http->request("from_periode");
-    $to_periode=$http->request("to_periode");
-    $from_poste=$http->request("from_poste");
-    $to_poste=$http->request("to_poste");
-    $p_filter=$http->request("p_filter","string");
-}
-catch (Exception $exc)
-{
+$bal = new Acc_Balance($cn);
+try {
+    $from_periode = $http->request("from_periode");
+    $to_periode = $http->request("to_periode");
+    $from_poste = $http->request("from_poste");
+    $to_poste = $http->request("to_poste");
+    $p_filter = $http->request("p_filter", "string");
+} catch (Exception $exc) {
+    error_log("Missing parameters");
     error_log($exc->getTraceAsString());
     return;
 }
 
 // Compute for the summary
-$summary_tab=$bal->summary_init();
-$summary_prev_tab=$bal->summary_init();
-$is_summary=$http->get("summary","string", 0);
-  
-$bal->jrn=null;
-switch( $p_filter)
-{
-case 0:
-        $bal->jrn=null;
-    break;
-case 1:
-    if (  isset($_GET['r_jrn']))
-    {
-        $selected=$_GET['r_jrn'];
-        $array_ledger=$g_user->get_ledger('ALL',3);
-        $array=get_array_column($array_ledger,'jrn_def_id');
-        for ($e=0;$e<count($selected);$e++)
-        {
-            if (isset ($selected[$e]) && in_array ($selected[$e],$array))
-                $bal->jrn[]=$selected[$e];
+$summary_tab = $bal->summary_init();
+$summary_prev_tab = $bal->summary_init();
+$is_summary = $http->get("summary", "string", 0);
+
+$bal->jrn = null;
+switch ($p_filter) {
+    case 0:
+        $bal->jrn = null;
+        break;
+    case 1:
+        if (isset($_GET['r_jrn'])) {
+            $selected = $http->get("r_jrn");
+            $array_ledger = $g_user->get_ledger('ALL', 3);
+            $array = get_array_column($array_ledger, 'jrn_def_id');
+            for ($e = 0; $e < count($selected); $e++) {
+                if (isset ($selected[$e])
+                    && isNumber($selected[$e]) == 1
+                    && in_array($selected[$e], $array)) {
+                    $bal->jrn[] = $selected[$e];
+                }
+            }
         }
-    }
-    break;
-case 2:
-    if ( isset($_GET['r_cat']))   $bal->filter_cat($_GET['r_cat']);
-    break;
+        break;
+    case 2:
+        if (isset($_GET['r_cat'])) $bal->filter_cat($http->get("r_cat"));
+        break;
 }
 
-$bal->from_poste=$from_poste;
-$bal->to_poste=$to_poste;
-if (isset($_GET['unsold'])) $bal->unsold=true;
-$previous=(isset($_GET['previous_exc']))?1:0;
-  
-$array=$bal->get_row($from_periode,$to_periode,$previous);
+$bal->from_poste = $from_poste;
+$bal->to_poste = $to_poste;
+if (isset($_GET['unsold'])) $bal->unsold = true;
+$previous = (isset($_GET['previous_exc'])) ? 1 : 0;
+
+$array = $bal->get_row($from_periode, $to_periode, $previous);
 
-$previous= (isset ($array[0]['sum_cred_previous']))?1:0;
+$previous = (isset ($array[0]['sum_cred_previous'])) ? 1 : 0;
 
 
-if ( sizeof($array)  == 0 )
-{
+if (sizeof($array) == 0) {
     exit();
 
 }
 
-$pPeriode=new Periode($cn);
-$a=$pPeriode->get_date_limit($from_periode);
-$b=$pPeriode->get_date_limit($to_periode);
-$per_text="  du ".$a['p_start']." au ".$b['p_end'];
+$pPeriode = new Periode($cn);
+$a = $pPeriode->get_date_limit($from_periode);
+$b = $pPeriode->get_date_limit($to_periode);
+$per_text = sprintf(_("Du %s au %s" ), $a['p_start'] ,$b['p_end']);
 
 // If compare with previous exercice ,
 // we use the landscape mode
-if ($previous == 1 ) {
-    $pdf=new PDFLand($cn);
+if ($previous == 1) {
+    $pdf = new PDFLand($cn);
 } else {
-    $pdf= new PDF($cn);
+    $pdf = new PDF($cn);
 }
 
-$pdf->setDossierInfo(" Balance  ".$per_text);
+$pdf->setDossierInfo(" Balance  " . $per_text);
 $pdf->AliasNbPages();
 $pdf->AddPage();
 $pdf->SetAuthor('NOALYSS');
-$pdf->SetFont('DejaVuCond','',7);
-$pdf->setTitle(_("Balance comptable"),true);
-$pdf->write_cell(30,6,_('poste'));
-$pdf->LongLine(60,6,_('Libellé'));
-if ($previous == 1 ){ 
-    $pdf->write_cell(20,6,'Débit N-1',0,0,'R');
-    $pdf->write_cell(20,6,'Crédit N-1',0,0,'R');
-    $pdf->write_cell(20,6,'Solde N-1',0,0,'R');
+$pdf->SetFont('DejaVuCond', '', 7);
+$pdf->setTitle(_("Balance comptable"), true);
+$pdf->write_cell(30, 6, _('poste'));
+$pdf->LongLine(60, 6, _('Libellé'));
+if ($previous == 1) {
+    $pdf->write_cell(20, 6, 'Débit N-1', 0, 0, 'R');
+    $pdf->write_cell(20, 6, 'Crédit N-1', 0, 0, 'R');
+    $pdf->write_cell(20, 6, 'Solde N-1', 0, 0, 'R');
 }
-$pdf->write_cell(25,6,_('Ouverture'),0,0,'R');
-$pdf->write_cell(25,6,_('Total Débit'),0,0,'R');
-$pdf->write_cell(25,6,_('Total Crédit'),0,0,'R');
-$pdf->write_cell(25,6,_('Solde Débiteur'),0,0,'R');
+$pdf->write_cell(25, 6, _('Ouverture'), 0, 0, 'R');
+$pdf->write_cell(25, 6, _('Total Débit'), 0, 0, 'R');
+$pdf->write_cell(25, 6, _('Total Crédit'), 0, 0, 'R');
+$pdf->write_cell(25, 6, _('Solde'), 0, 0, 'R');
 $pdf->line_new();
 
-$pdf->SetFont('DejaVuCond','',8);
-$tp_deb=0;
-$tp_cred=0;
-$tp_sold=0;
-$tp_solc=0;
-$tp_deb_previous=0;
-$tp_cred_previous=0;
-$tp_sold_previous=0;
-$tp_solc_previous=0;
-if ( $previous == 1) {
-    
$a_sum=array('sum_cred','sum_deb','solde_deb','solde_cred','sum_cred_previous','sum_deb_previous','solde_deb_previous','solde_cred_previous','sum_cred_ope','sum_deb_ope');
+$pdf->SetFont('DejaVuCond', '', 8);
+$tp_deb = 0;
+$tp_cred = 0;
+$tp_sold = 0;
+$tp_solc = 0;
+$tot_opening = 0;
+$tp_deb_previous = 0;
+$tp_cred_previous = 0;
+$tp_sold_previous = 0;
+$tp_solc_previous = 0;
+if ($previous == 1) {
+    $a_sum = array('sum_cred', 'sum_deb', 'solde_deb', 'solde_cred', 
'sum_cred_previous', 'sum_deb_previous', 'solde_deb_previous', 
'solde_cred_previous', 'sum_cred_ope', 'sum_deb_ope');
+} else {
+    $a_sum = array('sum_cred', 'sum_deb', 'solde_deb', 'solde_cred', 
'sum_cred_ope', 'sum_deb_ope');
 }
-else {
-    
$a_sum=array('sum_cred','sum_deb','solde_deb','solde_cred','sum_cred_ope','sum_deb_ope')
 ;
+foreach ($a_sum as $a) {
+    $nlvl1[$a] = 0;
+    $nlvl2[$a] = 0;
+    $nlvl3[$a] = 0;
 }
-foreach($a_sum as $a)
-  {
-    $nlvl1[$a]=0;
-    $nlvl2[$a]=0;
-    $nlvl3[$a]=0;
-  }
-$lvl1_old='';
-$lvl2_old='';
-$lvl3_old='';
+$lvl1_old = '';
+$lvl2_old = '';
+$lvl3_old = '';
 
 bcscale(2);
-if (! empty($array))
-  {
-    $i=0;
-    foreach ($array as $key=>$value)
-      {
-       $i++;
-       /*
-        * level x
-        */
-       if ( $value['poste']=='') continue;
-       foreach (array(3,2,1) as $ind)
-         {
-           $r=$value;
-           if ( ! isset($_GET['lvl'.$ind]))continue;
+if (!empty($array)) {
+    $i = 0;
+    foreach ($array as $key => $value) {
+        $i++;
+        /*
+         * level x
+         */
+        if ($value['poste'] == '') continue;
+        foreach (array(3, 2, 1) as $ind) {
+            $r = $value;
+            if (!isset($_GET['lvl' . $ind])) continue;
+
+            if (${'lvl' . $ind . '_old'} == '') ${'lvl' . $ind . '_old'} = 
substr($r['poste'], 0, $ind);
+            if (${'lvl' . $ind . '_old'} != substr($r['poste'], 0, $ind)) {
+                $pdf->SetFont('DejaVu', 'B', 7);
+                $pdf->LongLine(30, 6, ${'lvl' . $ind . '_old'});
+                $delta = bcsub(${'nlvl' . $ind}['solde_cred'], ${'nlvl' . 
$ind}['solde_deb']);
+                $side = ($delta < 0) ? "D" : "C";
+                if ($previous == 1) {
+                    $delta_previous = bcsub(${'nlvl' . 
$ind}['solde_cred_previous'], ${'nlvl' . $ind}['solde_deb_previous']);
+                    $side_previous = ($delta_previous < 0) ? "D" : "C";
+                    $pdf->write_cell(60, 6, " ", 0, 0, 'R');
+                    $pdf->write_cell(22, 6, nbm(${'nlvl' . 
$ind}['sum_deb_previous']), 0, 0, 'R');
+                    $pdf->write_cell(22, 6, nbm(${'nlvl' . 
$ind}['sum_cred_previous']), 0, 0, 'R');
+                    $pdf->write_cell(22, 6, nbm(abs($delta_previous)) . " 
$side_previous", 0, 0, 'R');
 
-           if (${'lvl'.$ind.'_old'} == '')       
${'lvl'.$ind.'_old'}=substr($r['poste'],0,$ind);
-           if ( ${'lvl'.$ind.'_old'} != substr($r['poste'],0,$ind))
-             {
-               $pdf->SetFont('DejaVu','B',7);
-               $pdf->LongLine(30,6,${'lvl'.$ind.'_old'});
-                
$delta=bcsub(${'nlvl'.$ind}['solde_cred'],${'nlvl'.$ind}['solde_deb']);
-                $side=($delta< 0) ? "D":"C";
-                if ($previous == 1 ) {
-                    
$delta_previous=bcsub(${'nlvl'.$ind}['solde_cred_previous'],${'nlvl'.$ind}['solde_deb_previous']);
-                    $side_previous=($delta_previous < 0) ? "D":"C";
-                    $pdf->write_cell(60,6," ",0,0,'R');
-                    
$pdf->write_cell(22,6,nbm(${'nlvl'.$ind}['sum_deb_previous']),0,0,'R');
-                    
$pdf->write_cell(22,6,nbm(${'nlvl'.$ind}['sum_cred_previous']),0,0,'R');
-                    $pdf->write_cell(22,6,nbm(abs($delta_previous))." 
$side_previous",0,0,'R');
-                    
                 } else {
-                     $pdf->write_cell(60,6," ",0,0,'R');
-                     
+                    $pdf->write_cell(60, 6, " ", 0, 0, 'R');
+
+                }
+                $solde_lv = bcsub(${'nlvl' . $ind}['sum_deb_ope'], ${'nlvl' . 
$ind}['sum_cred_ope']);
+                $side_lv = ($solde_lv < 0) ? " C" : " D";
+                $side_lv = ($solde_lv == 0) ? " " : $side_lv;
+                $pdf->write_cell(25, 6, nbm(abs($solde_lv)) . $side_lv, 0, 0, 
'R');
+                $pdf->write_cell(25, 6, nbm(bcsub(${'nlvl' . $ind}['sum_deb'], 
${'nlvl' . $ind}['sum_deb_ope'])), 0, 0, 'R');
+                $pdf->write_cell(25, 6, nbm(bcsub(${'nlvl' . 
$ind}['sum_cred'], ${'nlvl' . $ind}['sum_cred_ope'])), 0, 0, 'R');
+                $solde_lv = bcsub(${'nlvl' . $ind}['solde_deb'], ${'nlvl' . 
$ind}['solde_cred']);
+                $side_lv = ($solde_lv > 0) ? "D" : "C";
+                $side_lv = ($solde_lv == 0) ? "" : $side_lv;
+                $pdf->write_cell(25, 6, nbm(abs($solde_lv)) . " $side_lv", 0, 
0, 'R');
+                $pdf->line_new();
+                $pdf->SetFont('DejaVuCond', '', 7);
+                ${'lvl' . $ind . '_old'} = substr($r['poste'], 0, $ind);
+                foreach ($a_sum as $a) {
+                    ${'nlvl' . $ind}[$a] = 0;
                 }
-                
$solde_lv=bcsub(${'nlvl'.$ind}['sum_deb_ope'],${'nlvl'.$ind}['sum_cred_ope']);
-                $side_lv=($solde_lv<0)?" C":" D";
-                $side_lv=($solde_lv==0)?" ":$side_lv;
-                $pdf->write_cell(25,6,nbm(abs($solde_lv)).$side_lv,0,0,'R');
-               
$pdf->write_cell(25,6,nbm(bcsub(${'nlvl'.$ind}['sum_deb'],${'nlvl'.$ind}['sum_deb_ope'])),0,0,'R');
-               
$pdf->write_cell(25,6,nbm(bcsub(${'nlvl'.$ind}['sum_cred'],${'nlvl'.$ind}['sum_cred_ope'])),0,0,'R');
-               
$solde_lv=bcsub(${'nlvl'.$ind}['solde_deb'],${'nlvl'.$ind}['solde_cred']);
-                $side_lv=($solde_lv>0)?"D":"C";
-                $side_lv=($solde_lv==0)?"":$side_lv;
-                $pdf->write_cell(25,6,nbm(abs($solde_lv))." $side_lv",0,0,'R');
-               $pdf->line_new();
-               $pdf->SetFont('DejaVuCond','',7);
-               ${'lvl'.$ind.'_old'}=substr($r['poste'],0,$ind);
-               foreach($a_sum as $a)
-                 {
-                   ${'nlvl'.$ind}[$a]=0;
-                 }
-             }
-         }
-       foreach($a_sum as $a)
-         {
-           $nlvl1[$a]=bcadd($nlvl1[$a],$r[$a]);
-           $nlvl2[$a]=bcadd($nlvl2[$a],$r[$a]);
-           $nlvl3[$a]=bcadd($nlvl3[$a],$r[$a]);
-         }
+            }
+        }
+        foreach ($a_sum as $a) {
+            $nlvl1[$a] = bcadd($nlvl1[$a], $r[$a]);
+            $nlvl2[$a] = bcadd($nlvl2[$a], $r[$a]);
+            $nlvl3[$a] = bcadd($nlvl3[$a], $r[$a]);
+        }
+
+        if ($i % 2 == 0) {
+            $pdf->SetFillColor(220, 221, 255);
+            $fill = 1;
+        } else {
+            $pdf->SetFillColor(0, 0, 0);
+            $fill = 0;
+        }
 
-       if ( $i % 2 == 0 )
-         {
-           $pdf->SetFillColor(220,221,255);
-           $fill=1;
-         }
-       else
-         {
-           $pdf->SetFillColor(0,0,0);
-           $fill=0;
-         }
+        $pdf->LongLine(30, 6, $value['poste'], 0, 'L', $fill);
+        $pdf->LongLine(60, 6, $value['label'], 0, 'L', $fill);
+        $summary_tab = $bal->summary_add($summary_tab, $value['poste'],
+            $value['sum_deb'],
+            $value['sum_cred']);
+        if ($previous == 1) {
+            $pdf->write_cell(22, 6, nbm($value['sum_deb_previous']), 0, 0, 
'R', $fill);
+            $pdf->write_cell(22, 6, nbm($value['sum_cred_previous']), 0, 0, 
'R', $fill);
 
-       $pdf->LongLine(30,6,$value['poste'],0,'L',$fill);
-       $pdf->LongLine(60,6,$value['label'],0,'L',$fill);
-        $summary_tab=$bal->summary_add($summary_tab,$value['poste'],
-                 $value['sum_deb'],
-                 $value['sum_cred']);
-        if ($previous == 1 ) {
-            
$pdf->write_cell(22,6,nbm($value['sum_deb_previous']),0,0,'R',$fill);
-            
$pdf->write_cell(22,6,nbm($value['sum_cred_previous']),0,0,'R',$fill);
-            
 //            
$pdf->write_cell(22,6,nbm($value['solde_deb_previous']),0,0,'R',$fill);
 //            
$pdf->write_cell(22,6,nbm($value['solde_cred_previous']),0,0,'R',$fill);
-            
$solde_previous=bcsub($value['solde_cred_previous'],$value['solde_deb_previous']);
-            $side_previous=($solde_previous<0)?" D":" C";
-            $side_previous=($solde_previous==0)?"":$side_previous;
-            
-            
$pdf->write_cell(22,6,nbm(abs($solde_previous)).$side_previous,0,0,'R',$fill);
-            
-            
$tp_deb_previous=bcadd($tp_deb_previous,$value['sum_deb_previous']);
-            
$tp_cred_previous=bcadd($tp_cred_previous,$value['sum_cred_previous']);
-            
$tp_sold_previous=bcadd($tp_sold_previous,$value['solde_deb_previous']);
-            
$tp_solc_previous=bcadd($tp_solc_previous,$value['solde_cred_previous']);
-            $summary_prev_tab=$bal->summary_add($summary_prev_tab,
-                                                $value['poste'],
-                                                $value['sum_deb_previous'],
-                                                $value['sum_cred_previous']);
+            $solde_previous = bcsub($value['solde_cred_previous'], 
$value['solde_deb_previous']);
+            $side_previous = ($solde_previous < 0) ? " D" : " C";
+            $side_previous = ($solde_previous == 0) ? "" : $side_previous;
+
+            $pdf->write_cell(22, 6, nbm(abs($solde_previous)) . 
$side_previous, 0, 0, 'R', $fill);
+
+            $tp_deb_previous = bcadd($tp_deb_previous, 
$value['sum_deb_previous']);
+            $tp_cred_previous = bcadd($tp_cred_previous, 
$value['sum_cred_previous']);
+            $tp_sold_previous = bcadd($tp_sold_previous, 
$value['solde_deb_previous']);
+            $tp_solc_previous = bcadd($tp_solc_previous, 
$value['solde_cred_previous']);
+            $summary_prev_tab = $bal->summary_add($summary_prev_tab,
+                $value['poste'],
+                $value['sum_deb_previous'],
+                $value['sum_cred_previous']);
         }
-        $solde_ope=bcsub($value['sum_deb_ope'],$value['sum_cred_ope']);
-        $side_ope=($solde_ope>0)?" D":"C";
-        $side_ope=($solde_ope==0)?" ":$side_ope;
-        
-       $pdf->write_cell(25,6,nbm(abs($solde_ope)).$side_ope,0,0,'R',$fill);
-       
$pdf->write_cell(25,6,nbm(bcsub($value['sum_deb'],$value['sum_deb_ope'])),0,0,'R',$fill);
-       
$pdf->write_cell(25,6,nbm(bcsub($value['sum_cred'],$value['sum_cred_ope'])),0,0,'R',$fill);
-        $solde=bcsub($value['sum_deb'],$value['sum_cred']);
-        $side=($solde>0)?"D":"C";
-        $side=($solde==0)?"":$side;
-       $pdf->write_cell(25,6,nbm(abs($solde)).$side,0,0,'R',$fill);
-       $pdf->line_new();
-       $tp_deb=bcadd($tp_deb,$value['sum_deb']);
-       $tp_cred=bcadd($tp_cred,$value['sum_cred']);
-       $tp_sold=bcadd($tp_sold,$value['solde_deb']);
-       $tp_solc=bcadd($tp_solc,$value['solde_cred']);
+        $solde_ope = bcsub($value['sum_deb_ope'], $value['sum_cred_ope']);
+        $tot_opening=bcadd($tot_opening,$solde_ope);
 
-      }
-    foreach (array(3,2,1) as $ind)
-      {
-       $r=$value;
-       if ( ! isset($_GET['lvl'.$ind]))continue;
+        $side_ope = ($solde_ope > 0) ? " D" : "C";
+        $side_ope = ($solde_ope == 0) ? " " : $side_ope;
+        // compute column value
+        $deb = bcsub($value['sum_deb'], $value['sum_deb_ope']);
+        $cred = bcsub($value['sum_cred'], $value['sum_cred_ope']);
+        $pdf->write_cell(25, 6, nbm(abs($solde_ope)) . $side_ope, 0, 0, 'R', 
$fill);
+        $pdf->write_cell(25, 6, nbm($deb), 0, 0, 'R', $fill);
+        $pdf->write_cell(25, 6, nbm($cred), 0, 0, 'R', $fill);
+        $solde = bcsub($value['sum_deb'], $value['sum_cred']);
+        $side = ($solde > 0) ? "D" : "C";
+        $side = ($solde == 0) ? "" : $side;
+        $pdf->write_cell(25, 6, nbm(abs($solde)) . $side, 0, 0, 'R', $fill);
+        $pdf->line_new();
+        $tp_deb = bcadd($tp_deb, $deb);
+        $tp_cred = bcadd($tp_cred, $cred);
+        $tp_sold = bcadd($tp_sold, $value['solde_deb']);
+        $tp_solc = bcadd($tp_solc, $value['solde_cred']);
+
+    }
+    foreach (array(3, 2, 1) as $ind) {
+        $r = $value;
+        if (!isset($_GET['lvl' . $ind])) continue;
 
-       if (${'lvl'.$ind.'_old'} == '')   
${'lvl'.$ind.'_old'}=substr($r['poste'],0,$ind);
-       if ( ${'lvl'.$ind.'_old'} != substr($r['poste'],0,$ind))
-         {
-           $pdf->SetFont('DejaVu','B',7);
-           $pdf->write_cell(30,6,"Totaux ".$ind);
-           $pdf->write_cell(60,6,${'lvl'.$ind.'_old'});
-             if ($previous == 1 ) {
-                
$pdf->write_cell(22,6,nbm(${'nlvl'.$ind}['sum_deb_previous']),0,0,'R');
-                
$pdf->write_cell(22,6,nbm(${'nlvl'.$ind}['sum_cred_previous']),0,0,'R');
-                
$pdf->write_cell(22,6,nbm(${'nlvl'.$ind}['solde_deb_previous']),0,0,'R');
-                
$pdf->write_cell(22,6,nbm(${'nlvl'.$ind}['solde_cred_previous']),0,0,'R');
-             }
-           $pdf->write_cell(25,6,nbm(${'nlvl'.$ind}['sum_deb']),0,0,'R');
-           $pdf->write_cell(25,6,nbm(${'nlvl'.$ind}['sum_cred']),0,0,'R');
-            
$solde_lv=bcsub(${'nlvl'.$ind}['solde_deb'],${'nlvl'.$ind}['solde_cred']);
-            $side_lv=($solde_lv>0)?"D":"C";
-            $side_lv=($solde_lv==0)?"":$side_lv;
-           $pdf->write_cell(25,6,nbm(abs($solde_lv))." $side_lv",0,0,'R');
-           $pdf->line_new();
-           $pdf->SetFont('DejaVuCond','',7);
-           ${'lvl'.$ind.'_old'}=substr($r['poste'],0,$ind);
-           foreach($a_sum as $a)
-             {
-               ${'nlvl'.$ind}[$a]=0;
-             }
-         }
-      }
+        if (${'lvl' . $ind . '_old'} == '') ${'lvl' . $ind . '_old'} = 
substr($r['poste'], 0, $ind);
+        if (${'lvl' . $ind . '_old'} != substr($r['poste'], 0, $ind)) {
+            $pdf->SetFont('DejaVu', 'B', 7);
+            $pdf->write_cell(30, 6, "Totaux " . $ind);
+            $pdf->write_cell(60, 6, ${'lvl' . $ind . '_old'});
+            if ($previous == 1) {
+                $pdf->write_cell(22, 6, nbm(${'nlvl' . 
$ind}['sum_deb_previous']), 0, 0, 'R');
+                $pdf->write_cell(22, 6, nbm(${'nlvl' . 
$ind}['sum_cred_previous']), 0, 0, 'R');
+                $pdf->write_cell(22, 6, nbm(${'nlvl' . 
$ind}['solde_deb_previous']), 0, 0, 'R');
+                $pdf->write_cell(22, 6, nbm(${'nlvl' . 
$ind}['solde_cred_previous']), 0, 0, 'R');
+            }
+            $pdf->write_cell(25, 6, nbm(${'nlvl' . $ind}['sum_deb']), 0, 0, 
'R');
+            $pdf->write_cell(25, 6, nbm(${'nlvl' . $ind}['sum_cred']), 0, 0, 
'R');
+            $solde_lv = bcsub(${'nlvl' . $ind}['solde_deb'], ${'nlvl' . 
$ind}['solde_cred']);
+            $side_lv = findSide($solde_lv );
+            $pdf->write_cell(25, 6, nbm(abs($solde_lv)) . " $side_lv", 0, 0, 
'R');
+            $pdf->line_new();
+            $pdf->SetFont('DejaVuCond', '', 7);
+            ${'lvl' . $ind . '_old'} = substr($r['poste'], 0, $ind);
+            foreach ($a_sum as $a) {
+                ${'nlvl' . $ind}[$a] = 0;
+            }
+        }
+    }
 
     // Totaux
-    $pdf->SetFont('DejaVuCond','B',8);
-    $pdf->write_cell(90,6,$r['label']);
-     if ($previous == 1 ) {
-        $pdf->write_cell(22,6,nbm($tp_deb_previous),'T',0,'R',0);
-        $pdf->write_cell(22,6,nbm($tp_cred_previous),'T',0,'R',0);
-        $pdf->write_cell(22,6,nbm($tp_sold_previous),'T',0,'R',0);
-        $pdf->write_cell(22,6,nbm($tp_solc_previous),'T',0,'R',0);
+    $pdf->SetFont('DejaVuCond', 'B', 8);
+    $pdf->write_cell(90, 6, $r['label']);
+    if ($previous == 1) {
+        $pdf->write_cell(22, 6, nbm($tp_deb_previous), 'T', 0, 'R', 0);
+        $pdf->write_cell(22, 6, nbm($tp_cred_previous), 'T', 0, 'R', 0);
+        $pdf->write_cell(22, 6, nbm($tp_sold_previous), 'T', 0, 'R', 0);
+        $pdf->write_cell(22, 6, nbm($tp_solc_previous), 'T', 0, 'R', 0);
     }
-    $pdf->write_cell(25,6,nbm($tp_deb),'T',0,'R',0);
-    $pdf->write_cell(25,6,nbm($tp_cred),'T',0,'R',0);
-    $pdf->write_cell(25,6,nbm($tp_sold),'T',0,'R',0);
-    $pdf->write_cell(25,6,nbm($tp_solc),'T',0,'R',0);
+    $solde = bcsub($tp_sold,$tp_solc);
+
+    $solde_side       = findSide($solde);
+    $tot_opening_side = findSide($tot_opening);
+    // ---------------
+    // Footer column
+    // ---------------
+    $pdf->write_cell(25, 6, nbm(abs($tot_opening))." ".$tot_opening_side, 'T', 
0, 'R', 0);
+    $pdf->write_cell(25, 6, nbm($tp_deb), 'T', 0, 'R', 0);
+    $pdf->write_cell(25, 6, nbm($tp_cred), 'T', 0, 'R', 0);
+    $pdf->write_cell(25, 6, nbm(abs($solde)).$solde_side, 'T', 0, 'R', 0);
     $pdf->line_new();
-  } /** empty */
- // display the summary
- if ($is_summary==1) {
-    if ($previous==1) {
+}
+/** empty */
+// display the summary
+if ($is_summary == 1) {
+    if ($previous == 1) {
         $pdf->SetFont('DejaVuCond', 'B', 8);
         $pdf->write_cell(50, 8, _("Résumé Exercice précédent"));
         $pdf->line_new();
@@ -344,9 +339,8 @@ if (! empty($array))
     $bal->summary_display_pdf($summary_tab, $pdf);
 }
 
-$fDate=date('dmy-Hi');
-$pdf->Output('balance-'.$fDate.'.pdf','D');
-
+$fDate = date('dmy-Hi');
+$pdf->Output('balance-' . $fDate . '.pdf', 'D');
 
 
 ?>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]