Bugfix #21
This commit is contained in:
parent
aadf7bc8c5
commit
2590a58e18
|
@ -11,11 +11,11 @@ $n1 = sizeof($rs1);
|
||||||
|
|
||||||
// Livello 1
|
// Livello 1
|
||||||
for ($x = 0; $x < $n1; ++$x) {
|
for ($x = 0; $x < $n1; ++$x) {
|
||||||
$totale_attivita = 0.00;
|
$totale_attivita = [];
|
||||||
$totale_passivita = 0.00;
|
$totale_passivita = [];
|
||||||
|
|
||||||
$costi = 0.00;
|
$costi = [];
|
||||||
$ricavi = 0.00;
|
$ricavi = [];
|
||||||
|
|
||||||
if ($rs1[$x]['descrizione'] == 'Economico') {
|
if ($rs1[$x]['descrizione'] == 'Economico') {
|
||||||
echo "<hr><h2 class=\"pull-left\">Conto economico</h2>\n";
|
echo "<hr><h2 class=\"pull-left\">Conto economico</h2>\n";
|
||||||
|
@ -54,7 +54,7 @@ for ($x = 0; $x < $n1; ++$x) {
|
||||||
echo " <table class='table table-striped table-hover table-condensed' style='margin-bottom:0;'>\n";
|
echo " <table class='table table-striped table-hover table-condensed' style='margin-bottom:0;'>\n";
|
||||||
|
|
||||||
for ($z = 0; $z < $n3; ++$z) {
|
for ($z = 0; $z < $n3; ++$z) {
|
||||||
$totale_conto_liv3 = 0.00;
|
$totale_conto_liv3 = [];
|
||||||
|
|
||||||
echo " <tr><td>\n";
|
echo " <tr><td>\n";
|
||||||
|
|
||||||
|
@ -102,7 +102,7 @@ for ($x = 0; $x < $n1; ++$x) {
|
||||||
echo ' <div id="conto_'.$rs3[$z]['id']."\" style=\"display:none;\">\n";
|
echo ' <div id="conto_'.$rs3[$z]['id']."\" style=\"display:none;\">\n";
|
||||||
|
|
||||||
if (sizeof($rs) > 0) {
|
if (sizeof($rs) > 0) {
|
||||||
$totale_conto_liv3 = 0.00;
|
$totale_conto_liv3 = [];
|
||||||
|
|
||||||
echo " <table class='table table-bordered table-hover table-condensed table-striped'>\n";
|
echo " <table class='table table-bordered table-hover table-condensed table-striped'>\n";
|
||||||
echo " <tr><th>Causale</th>\n";
|
echo " <tr><th>Causale</th>\n";
|
||||||
|
@ -117,7 +117,7 @@ for ($x = 0; $x < $n1; ++$x) {
|
||||||
if ($rs[$i]['iddocumento'] != '') {
|
if ($rs[$i]['iddocumento'] != '') {
|
||||||
$module = ($rs[$i]['dir'] == 'entrata') ? Modules::get('Fatture di vendita')['id'] : Modules::get('Fatture di acquisto')['id'];
|
$module = ($rs[$i]['dir'] == 'entrata') ? Modules::get('Fatture di vendita')['id'] : Modules::get('Fatture di acquisto')['id'];
|
||||||
echo "<a data-toggle='modal' data-title='Dettagli movimento...' data-target='#bs-popup' class='clickable' data-href='".$rootdir.'/modules/partitario/dettagli_movimento.php?id_movimento='.$rs[$i]['id'].'&id_conto='.$rs[$i]['idconto'].'&id_module='.$module."' >".$rs[$i]['descrizione']."</a>\n";
|
echo "<a data-toggle='modal' data-title='Dettagli movimento...' data-target='#bs-popup' class='clickable' data-href='".$rootdir.'/modules/partitario/dettagli_movimento.php?id_movimento='.$rs[$i]['id'].'&id_conto='.$rs[$i]['idconto'].'&id_module='.$module."' >".$rs[$i]['descrizione']."</a>\n";
|
||||||
// echo " <a href='".$rootdir.'/editor.php?id_module='.$module.'&id_record='.$rs[$i]['iddocumento']."'>".$rs[$i]['descrizione']."</a>\n";
|
// echo " <a href='".$rootdir.'/editor.php?id_module='.$module.'&id_record='.$rs[$i]['iddocumento']."'>".$rs[$i]['descrizione']."</a>\n";
|
||||||
} else {
|
} else {
|
||||||
echo ' <span>'.$rs[$i]['descrizione']."</span>\n";
|
echo ' <span>'.$rs[$i]['descrizione']."</span>\n";
|
||||||
}
|
}
|
||||||
|
@ -137,9 +137,9 @@ for ($x = 0; $x < $n1; ++$x) {
|
||||||
echo " <td></td></tr>\n";
|
echo " <td></td></tr>\n";
|
||||||
|
|
||||||
if ($rs1[$x]['descrizione'] == 'Patrimoniale') {
|
if ($rs1[$x]['descrizione'] == 'Patrimoniale') {
|
||||||
$totale_conto_liv3 += $rs[$i]['totale'];
|
$totale_conto_liv3[] = $rs[$i]['totale'];
|
||||||
} else {
|
} else {
|
||||||
$totale_conto_liv3 -= $rs[$i]['totale'];
|
$totale_conto_liv3[] = -$rs[$i]['totale'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -150,9 +150,9 @@ for ($x = 0; $x < $n1; ++$x) {
|
||||||
echo " </td>\n";
|
echo " </td>\n";
|
||||||
|
|
||||||
if ($rs1[$x]['descrizione'] == 'Patrimoniale') {
|
if ($rs1[$x]['descrizione'] == 'Patrimoniale') {
|
||||||
$totale_conto_liv3 += $rs[$i]['totale'];
|
$totale_conto_liv3[] = $rs[$i]['totale'];
|
||||||
} else {
|
} else {
|
||||||
$totale_conto_liv3 -= $rs[$i]['totale'];
|
$totale_conto_liv3[] = -$rs[$i]['totale'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
echo " </td></tr>\n";
|
echo " </td></tr>\n";
|
||||||
|
@ -160,16 +160,16 @@ for ($x = 0; $x < $n1; ++$x) {
|
||||||
|
|
||||||
// Somma dei totali
|
// Somma dei totali
|
||||||
if ($rs1[$x]['descrizione'] == 'Patrimoniale') {
|
if ($rs1[$x]['descrizione'] == 'Patrimoniale') {
|
||||||
if ($totale_conto_liv3 > 0) {
|
if (sum($totale_conto_liv3) > 0) {
|
||||||
$totale_attivita += $totale_conto_liv3;
|
$totale_attivita[] = abs(sum($totale_conto_liv3));
|
||||||
} else {
|
} else {
|
||||||
$totale_passivita += $totale_conto_liv3;
|
$totale_passivita[] = abs(sum($totale_conto_liv3));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if ($totale_conto_liv3 > 0) {
|
if (sum($totale_conto_liv3) > 0) {
|
||||||
$totale_ricavi += $totale_conto_liv3;
|
$totale_ricavi[] = abs(sum($totale_conto_liv3));
|
||||||
} else {
|
} else {
|
||||||
$totale_costi += $totale_conto_liv3;
|
$totale_costi[] = abs(sum($totale_conto_liv3));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
echo " </table>\n";
|
echo " </table>\n";
|
||||||
|
@ -178,7 +178,7 @@ for ($x = 0; $x < $n1; ++$x) {
|
||||||
echo " </td>\n";
|
echo " </td>\n";
|
||||||
|
|
||||||
echo " <td width='100' align='right' valign='top'>\n";
|
echo " <td width='100' align='right' valign='top'>\n";
|
||||||
echo Translator::numberToLocale($totale_conto_liv3)." €\n";
|
echo Translator::numberToLocale(sum($totale_conto_liv3))." €\n";
|
||||||
echo " </td></tr>\n";
|
echo " </td></tr>\n";
|
||||||
} // Fine livello3
|
} // Fine livello3
|
||||||
|
|
||||||
|
@ -193,9 +193,9 @@ for ($x = 0; $x < $n1; ++$x) {
|
||||||
|
|
||||||
if ($rs1[$x]['descrizione'] == 'Patrimoniale') {
|
if ($rs1[$x]['descrizione'] == 'Patrimoniale') {
|
||||||
// Riepilogo
|
// Riepilogo
|
||||||
$attivita = abs($totale_attivita);
|
$attivita = abs(sum($totale_attivita));
|
||||||
$passivita = abs($totale_passivita);
|
$passivita = abs(sum($totale_passivita));
|
||||||
$utile_perdita = abs($totale_ricavi) - abs($totale_costi);
|
$utile_perdita = abs(sum($totale_ricavi)) - abs(sum($totale_costi));
|
||||||
if ($utile_perdita < 0) {
|
if ($utile_perdita < 0) {
|
||||||
$pareggio1 = $attivita + abs($utile_perdita);
|
$pareggio1 = $attivita + abs($utile_perdita);
|
||||||
$pareggio2 = abs($passivita);
|
$pareggio2 = abs($passivita);
|
||||||
|
@ -230,7 +230,7 @@ for ($x = 0; $x < $n1; ++$x) {
|
||||||
echo " <p align='right'><big>Perdita d'esercizio:</big></p>\n";
|
echo " <p align='right'><big>Perdita d'esercizio:</big></p>\n";
|
||||||
echo "</th>\n";
|
echo "</th>\n";
|
||||||
echo "<td align='right'>\n";
|
echo "<td align='right'>\n";
|
||||||
echo " <p align='right'><big>".Translator::numberToLocale($utile_perdita)." €</big></p>\n";
|
echo " <p align='right'><big>".Translator::numberToLocale(sum($utile_perdita))." €</big></p>\n";
|
||||||
echo "</td>\n";
|
echo "</td>\n";
|
||||||
echo "<td></td>\n";
|
echo "<td></td>\n";
|
||||||
echo "<td></td><td></td></tr>\n";
|
echo "<td></td><td></td></tr>\n";
|
||||||
|
@ -239,7 +239,7 @@ for ($x = 0; $x < $n1; ++$x) {
|
||||||
echo " <p align='right'><big>Utile:</big></p>\n";
|
echo " <p align='right'><big>Utile:</big></p>\n";
|
||||||
echo "</th>\n";
|
echo "</th>\n";
|
||||||
echo "<td align='right'>\n";
|
echo "<td align='right'>\n";
|
||||||
echo " <p align='right'><big>".Translator::numberToLocale($utile_perdita)." €</big></p>\n";
|
echo " <p align='right'><big>".Translator::numberToLocale(sum($utile_perdita))." €</big></p>\n";
|
||||||
echo "</td></tr>\n";
|
echo "</td></tr>\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -248,7 +248,7 @@ for ($x = 0; $x < $n1; ++$x) {
|
||||||
echo " <p align='right'><big>Totale a pareggio:</big></p>\n";
|
echo " <p align='right'><big>Totale a pareggio:</big></p>\n";
|
||||||
echo "</th>\n";
|
echo "</th>\n";
|
||||||
echo "<td align='right'>\n";
|
echo "<td align='right'>\n";
|
||||||
echo " <p align='right'><big>".Translator::numberToLocale($pareggio1)." €</big></p>\n";
|
echo " <p align='right'><big>".Translator::numberToLocale(sum($pareggio1))." €</big></p>\n";
|
||||||
echo "</td>\n";
|
echo "</td>\n";
|
||||||
echo "<td></td>\n";
|
echo "<td></td>\n";
|
||||||
|
|
||||||
|
@ -257,13 +257,13 @@ for ($x = 0; $x < $n1; ++$x) {
|
||||||
echo " <p align='right'><big>Totale a pareggio:</big></p>\n";
|
echo " <p align='right'><big>Totale a pareggio:</big></p>\n";
|
||||||
echo "</th>\n";
|
echo "</th>\n";
|
||||||
echo "<td align='right'>\n";
|
echo "<td align='right'>\n";
|
||||||
echo " <p align='right'><big>".Translator::numberToLocale($pareggio2)." €</big></p>\n";
|
echo " <p align='right'><big>".Translator::numberToLocale(sum($pareggio2))." €</big></p>\n";
|
||||||
echo "</td></tr>\n";
|
echo "</td></tr>\n";
|
||||||
|
|
||||||
echo '</table>';
|
echo '</table>';
|
||||||
} else {
|
} else {
|
||||||
echo "<p align='right'><big><b>RICAVI:</b> ".Translator::numberToLocale($totale_ricavi)." €</big></p>\n";
|
echo "<p align='right'><big><b>RICAVI:</b> ".Translator::numberToLocale(sum($totale_ricavi))." €</big></p>\n";
|
||||||
echo "<p align='right'><big><b>COSTI:</b> ".Translator::numberToLocale(abs($totale_costi))." €</big></p>\n";
|
echo "<p align='right'><big><b>COSTI:</b> ".Translator::numberToLocale(sum(abs($totale_costi)))." €</big></p>\n";
|
||||||
echo "<p align='right'><big><b>UTILE/PERDITA:</b> ".Translator::numberToLocale($totale_ricavi - abs($totale_costi))." €</big></p>\n";
|
echo "<p align='right'><big><b>UTILE/PERDITA:</b> ".Translator::numberToLocale(sum($totale_ricavi) - sum(abs($totale_costi)))." €</big></p>\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,11 +51,11 @@ if (get('lev') == '3') {
|
||||||
<col width='80'><col width='452'><col width='80'><col width='80'>
|
<col width='80'><col width='452'><col width='80'><col width='80'>
|
||||||
<tbody>\n";
|
<tbody>\n";
|
||||||
|
|
||||||
// Inizializzo saldo finale
|
// Inizializzo saldo finale
|
||||||
$saldo_finale = 0;
|
$saldo_finale = [];
|
||||||
|
|
||||||
// Calcolo saldo iniziale
|
// Calcolo saldo iniziale
|
||||||
$rs = $dbo->fetchArray('SELECT SUM(totale) AS totale FROM co_movimenti WHERE idconto="'.$idconto.'" AND data < "'.$_SESSION['period_start'].'"');
|
$rs = $dbo->fetchArray('SELECT SUM(totale) AS totale FROM co_movimenti WHERE idconto="'.$idconto.'" AND data < "'.$_SESSION['period_start'].'"');
|
||||||
$saldo_iniziale = $rs[0]['totale'];
|
$saldo_iniziale = $rs[0]['totale'];
|
||||||
$saldo_finale = $saldo_iniziale;
|
$saldo_finale = $saldo_iniziale;
|
||||||
|
|
||||||
|
@ -82,19 +82,19 @@ if (get('lev') == '3') {
|
||||||
|
|
||||||
$body .= " <tr><td class='br bb padded text-center'>".Translator::dateToLocale($rs[$i]['data'])."</td><td class='br bb padded'>".$rs[$i]['descrizione']."</td><td class='br bb padded text-right'>".$dare."</td><td class='bb padded text-right'>".$avere."</td></tr>\n";
|
$body .= " <tr><td class='br bb padded text-center'>".Translator::dateToLocale($rs[$i]['data'])."</td><td class='br bb padded'>".$rs[$i]['descrizione']."</td><td class='br bb padded text-right'>".$dare."</td><td class='bb padded text-right'>".$avere."</td></tr>\n";
|
||||||
|
|
||||||
$saldo_finale += $rs[$i]['totale'];
|
$saldo_finale[] = $rs[$i]['totale'];
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($saldo_finale < 0) {
|
if ( sum($saldo_finale) < 0) {
|
||||||
$dare = '';
|
$dare = '';
|
||||||
$avere = abs($saldo_finale);
|
$avere = abs( sum($saldo_finale) );
|
||||||
} else {
|
} else {
|
||||||
$dare = abs($saldo_finale);
|
$dare = abs( sum($saldo_finale) );
|
||||||
$avere = '';
|
$avere = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
// Mostro il saldo finale
|
// Mostro il saldo finale
|
||||||
$body .= " <tr><td class='br bb padded'></td><td class='br bb padded'><b>SALDO FINALE</b></td><td class='br bb padded text-right'><b>".Translator::numberToLocale(abs($dare))."</b></td><td class='bb padded text-right'><b>".Translator::numberToLocale(abs($avere))."</b></td></tr>\n";
|
$body .= " <tr><td class='br bb padded'></td><td class='br bb padded'><b>SALDO FINALE</b></td><td class='br bb padded text-right'><b>".Translator::numberToLocale( abs( sum($dare) ) )."</b></td><td class='bb padded text-right'><b>".Translator::numberToLocale( abs( sum($avere) ) )."</b></td></tr>\n";
|
||||||
|
|
||||||
$body .= " </tbody>
|
$body .= " </tbody>
|
||||||
</table>\n";
|
</table>\n";
|
||||||
|
@ -106,37 +106,38 @@ elseif (get('lev') == '2') {
|
||||||
<col width='80'><col width='452'><col width='80'><col width='80'>
|
<col width='80'><col width='452'><col width='80'><col width='80'>
|
||||||
<tbody>\n";
|
<tbody>\n";
|
||||||
|
|
||||||
// Ciclo fra i sotto-conti di livello 2
|
// Ciclo fra i sotto-conti di livello 2
|
||||||
$rs3 = $dbo->fetchArray('SELECT id, numero, descrizione FROM co_pianodeiconti3 WHERE idpianodeiconti2="'.$idconto.'"');
|
$rs3 = $dbo->fetchArray('SELECT id, numero, descrizione FROM co_pianodeiconti3 WHERE idpianodeiconti2="'.$idconto.'"');
|
||||||
|
|
||||||
for ($z = 0; $z < sizeof($rs3); ++$z) {
|
for ($z = 0; $z < sizeof($rs3); ++$z) {
|
||||||
|
$v_dare = [];
|
||||||
|
$v_avere = [];
|
||||||
|
|
||||||
// Inizializzo saldo finale
|
// Inizializzo saldo finale
|
||||||
$saldo_finale = 0;
|
$saldo_finale = [];
|
||||||
|
|
||||||
// Calcolo saldo iniziale
|
// Calcolo saldo iniziale
|
||||||
$rs = $dbo->fetchArray('SELECT SUM(totale) AS totale FROM co_movimenti WHERE idconto="'.$rs3[$z]['id'].'" AND data < "'.$_SESSION['period_start'].'"');
|
$rs = $dbo->fetchArray('SELECT SUM(totale) AS totale FROM co_movimenti WHERE idconto="'.$rs3[$z]['id'].'" AND data < "'.$_SESSION['period_start'].'"');
|
||||||
$saldo_iniziale = $rs[0]['totale'];
|
$saldo_iniziale = $rs[0]['totale'];
|
||||||
$saldo_finale = $saldo_iniziale;
|
$saldo_finale[] = $saldo_iniziale;
|
||||||
|
|
||||||
if ($saldo_iniziale < 0) {
|
if ( $saldo_iniziale < 0) {
|
||||||
$dare = '';
|
$v_avere[] = abs( $saldo_iniziale );
|
||||||
$avere = abs($saldo_iniziale);
|
|
||||||
} else {
|
} else {
|
||||||
$dare = abs($saldo_iniziale);
|
$v_dare[] = abs( $saldo_iniziale );
|
||||||
$avere = '';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$rs = $dbo->fetchArray('SELECT * FROM co_movimenti WHERE idconto="'.$rs3[$z]['id'].'" AND data >= "'.$_SESSION['period_start'].'" AND data <= "'.$_SESSION['period_end'].'" ORDER BY data ASC');
|
$rs = $dbo->fetchArray('SELECT * FROM co_movimenti WHERE idconto="'.$rs3[$z]['id'].'" AND data >= "'.$_SESSION['period_start'].'" AND data <= "'.$_SESSION['period_end'].'" ORDER BY data ASC');
|
||||||
|
|
||||||
for ($i = 0; $i < sizeof($rs); ++$i) {
|
for ($i = 0; $i < sizeof($rs); ++$i) {
|
||||||
if ($rs[$i]['totale'] >= 0) {
|
if ($rs[$i]['totale'] >= 0) {
|
||||||
$dare += abs($rs[$i]['totale']);
|
$v_dare[] = abs($rs[$i]['totale']);
|
||||||
} else {
|
} else {
|
||||||
$avere += abs($rs[$i]['totale']);
|
$v_avere[] = abs($rs[$i]['totale']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$totale = $dare - $avere;
|
$totale = sum($v_dare) - sum($v_avere);
|
||||||
|
|
||||||
if ($totale >= 0) {
|
if ($totale >= 0) {
|
||||||
$dare = Translator::numberToLocale(abs($totale));
|
$dare = Translator::numberToLocale(abs($totale));
|
||||||
|
@ -146,8 +147,8 @@ elseif (get('lev') == '2') {
|
||||||
$avere = Translator::numberToLocale(abs($totale));
|
$avere = Translator::numberToLocale(abs($totale));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Mostro il saldo finale del conto di livello 3
|
// Mostro il saldo finale del conto di livello 3
|
||||||
$body .= " <tr><td class='br bb padded'></td><td class='br bb padded'>".$rs3[$z]['numero'].' '.$rs3[$z]['descrizione']."</td><td class='br bb padded text-right'>".$dare."</td><td class='bb padded text-right'>".$avere."</td></tr>\n";
|
$body .= " <tr><td class='br bb padded'></td><td class='br bb padded'>".$rs3[$z]['numero'].' '.$rs3[$z]['descrizione']."</td><td class='br bb padded text-right'>".$dare."</td><td class='bb padded text-right'>".$avere."</td></tr>\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
$body .= " </tbody>
|
$body .= " </tbody>
|
||||||
|
@ -156,73 +157,73 @@ elseif (get('lev') == '2') {
|
||||||
|
|
||||||
// Stampa completa bilancio
|
// Stampa completa bilancio
|
||||||
elseif (get('lev') == '1') {
|
elseif (get('lev') == '1') {
|
||||||
$ricavi = 0;
|
$ricavi = [];
|
||||||
$costi = 0;
|
$costi = [];
|
||||||
$totale_attivita = 0;
|
$totale_attivita = [];
|
||||||
$totale_passivita = 0;
|
$totale_passivita = [];
|
||||||
|
|
||||||
$body .= "<table style='table-layout:fixed; border-bottom:1px solid #777; border-right:1px solid #777; border-left:1px solid #777;' cellpadding='0' cellspacing='0'>
|
$body .= "<table style='table-layout:fixed; border-bottom:1px solid #777; border-right:1px solid #777; border-left:1px solid #777;' cellpadding='0' cellspacing='0'>
|
||||||
<col width='80'><col width='452'><col width='80'><col width='80'>
|
<col width='80'><col width='452'><col width='80'><col width='80'>
|
||||||
<tbody>\n";
|
<tbody>\n";
|
||||||
|
|
||||||
// Ciclo fra il conto principale scelto (Economico o Patrimoniale)
|
// Ciclo fra il conto principale scelto (Economico o Patrimoniale)
|
||||||
$rs1 = $dbo->fetchArray('SELECT id, numero, descrizione FROM co_pianodeiconti1 WHERE id="'.$idconto.'" ORDER BY numero DESC');
|
$rs1 = $dbo->fetchArray('SELECT id, numero, descrizione FROM co_pianodeiconti1 WHERE id="'.$idconto.'" ORDER BY numero DESC');
|
||||||
|
|
||||||
for ($x = 0; $x < sizeof($rs1); ++$x) {
|
for ($x = 0; $x < sizeof($rs1); ++$x) {
|
||||||
// Ciclo fra i sotto-conti di livello 1
|
// Ciclo fra i sotto-conti di livello 1
|
||||||
$rs2 = $dbo->fetchArray('SELECT id, numero, descrizione FROM co_pianodeiconti2 WHERE idpianodeiconti1="'.$rs1[$x]['id'].'"');
|
$rs2 = $dbo->fetchArray('SELECT id, numero, descrizione FROM co_pianodeiconti2 WHERE idpianodeiconti1="'.$rs1[$x]['id'].'"');
|
||||||
|
|
||||||
for ($y = 0; $y < sizeof($rs2); ++$y) {
|
for ($y = 0; $y < sizeof($rs2); ++$y) {
|
||||||
$body .= " <tr><th class='bb padded' colspan='4'><b>".$rs2[$y]['numero'].' '.$rs2[$y]['descrizione']."</b></th></tr>\n";
|
$body .= " <tr><th class='bb padded' colspan='4'><b>".$rs2[$y]['numero'].' '.$rs2[$y]['descrizione']."</b></th></tr>\n";
|
||||||
|
|
||||||
// Ciclo fra i sotto-conti di livello 2
|
// Ciclo fra i sotto-conti di livello 2
|
||||||
$rs3 = $dbo->fetchArray('SELECT id, numero, descrizione FROM co_pianodeiconti3 WHERE idpianodeiconti2="'.$rs2[$y]['id'].'"');
|
$rs3 = $dbo->fetchArray('SELECT id, numero, descrizione FROM co_pianodeiconti3 WHERE idpianodeiconti2="'.$rs2[$y]['id'].'"');
|
||||||
|
|
||||||
for ($z = 0; $z < sizeof($rs3); ++$z) {
|
for ($z = 0; $z < sizeof($rs3); ++$z) {
|
||||||
$dare = 0;
|
$v_dare = [];
|
||||||
$avere = 0;
|
$v_avere = [];
|
||||||
|
|
||||||
$rs = $dbo->fetchArray('SELECT * FROM co_movimenti WHERE idconto="'.$rs3[$z]['id'].'" AND data >= "'.$_SESSION['period_start'].'" AND data <= "'.$_SESSION['period_end'].'" ORDER BY data ASC');
|
$rs = $dbo->fetchArray('SELECT * FROM co_movimenti WHERE idconto="'.$rs3[$z]['id'].'" AND data >= "'.$_SESSION['period_start'].'" AND data <= "'.$_SESSION['period_end'].'" ORDER BY data ASC');
|
||||||
|
|
||||||
for ($i = 0; $i < sizeof($rs); ++$i) {
|
for ($i = 0; $i < sizeof($rs); ++$i) {
|
||||||
if ($rs[$i]['totale'] >= 0) {
|
if ($rs[$i]['totale'] >= 0) {
|
||||||
$dare += abs($rs[$i]['totale']);
|
$v_dare[] = abs($rs[$i]['totale']);
|
||||||
} else {
|
} else {
|
||||||
$avere += abs($rs[$i]['totale']);
|
$v_avere[] = abs($rs[$i]['totale']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$totale = $dare - $avere;
|
$totale = sum($v_dare) - sum($v_avere);
|
||||||
|
|
||||||
if ($totale >= 0) {
|
if ($totale >= 0) {
|
||||||
$dare = abs($totale);
|
$dare = abs($totale);
|
||||||
$avere = 0;
|
$avere = 0;
|
||||||
$totale_attivita += $dare;
|
$totale_attivita[] = $dare;
|
||||||
$costi += abs($dare);
|
$costi[] = abs($dare);
|
||||||
} else {
|
} else {
|
||||||
$dare = 0;
|
$dare = 0;
|
||||||
$avere = abs($totale);
|
$avere = abs($totale);
|
||||||
$totale_passivita += $avere;
|
$totale_passivita[] = $avere;
|
||||||
$ricavi += abs($avere);
|
$ricavi[] = abs($avere);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Mostro il saldo finale del conto di livello 3
|
// Mostro il saldo finale del conto di livello 3
|
||||||
$body .= " <tr><td class='br bb padded'></td><td class='br bb padded'>".$rs3[$z]['numero'].' '.$rs3[$z]['descrizione']."</td><td class='br bb padded text-right'>".Translator::numberToLocale(abs($dare))."</td><td class='bb padded text-right'>".Translator::numberToLocale(abs($avere))."</td></tr>\n";
|
$body .= " <tr><td class='br bb padded'></td><td class='br bb padded'>".$rs3[$z]['numero'].' '.$rs3[$z]['descrizione']."</td><td class='br bb padded text-right'>".Translator::numberToLocale(abs($dare))."</td><td class='bb padded text-right'>".Translator::numberToLocale(abs($avere))."</td></tr>\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Stampa "Costi/Ricavi" se conto economico
|
// Stampa "Costi/Ricavi" se conto economico
|
||||||
if ($rs1[0]['descrizione'] == 'Economico') {
|
if ($rs1[0]['descrizione'] == 'Economico') {
|
||||||
$body .= " <tr><th colspan='3' class='br bb padded'>RICAVI</th><th align='right' class='bb padded'>".Translator::numberToLocale($ricavi)."</th></tr>\n";
|
$body .= " <tr><th colspan='3' class='br bb padded'>RICAVI</th><th align='right' class='bb padded'>".Translator::numberToLocale( sum($ricavi) )."</th></tr>\n";
|
||||||
$body .= " <tr><th colspan='3' class='br bb padded'>COSTI</th><th align='right' class='bb padded'>".Translator::numberToLocale($costi)."</th></tr>\n";
|
$body .= " <tr><th colspan='3' class='br bb padded'>COSTI</th><th align='right' class='bb padded'>".Translator::numberToLocale( sum($costi) )."</th></tr>\n";
|
||||||
$body .= " <tr><th colspan='3' class='br padded'>UTILE</th><th class='padded' align='right'>".Translator::numberToLocale($ricavi - $costi)."</th></tr>\n";
|
$body .= " <tr><th colspan='3' class='br padded'>UTILE</th><th class='padded' align='right'>".Translator::numberToLocale( sum($ricavi) - sum($costi) )."</th></tr>\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
// Stampa "Attività/Passività" se stato patrimoniale
|
// Stampa "Attività/Passività" se stato patrimoniale
|
||||||
else {
|
else {
|
||||||
$costi = 0;
|
$costi = [];
|
||||||
$ricavi = 0;
|
$ricavi = [];
|
||||||
|
|
||||||
// Ciclo fra il conto economico per calcolare l'utile o la perdita
|
// Ciclo fra il conto economico per calcolare l'utile o la perdita
|
||||||
$rs1 = $dbo->fetchArray('SELECT id, numero, descrizione FROM co_pianodeiconti1 WHERE NOT id="'.$idconto.'" ORDER BY numero DESC');
|
$rs1 = $dbo->fetchArray('SELECT id, numero, descrizione FROM co_pianodeiconti1 WHERE NOT id="'.$idconto.'" ORDER BY numero DESC');
|
||||||
|
@ -237,29 +238,29 @@ elseif (get('lev') == '1') {
|
||||||
|
|
||||||
for ($z = 0; $z < sizeof($rs3); ++$z) {
|
for ($z = 0; $z < sizeof($rs3); ++$z) {
|
||||||
// Inizializzo saldo finale
|
// Inizializzo saldo finale
|
||||||
$saldo_finale = 0;
|
$saldo_finale = [];
|
||||||
|
|
||||||
// Calcolo saldo iniziale
|
// Calcolo saldo iniziale
|
||||||
$rs = $dbo->fetchArray('SELECT SUM(totale) AS totale FROM co_movimenti WHERE idconto="'.$rs2[$y]['id'].'" AND data < "'.$_SESSION['period_start'].'"');
|
$rs = $dbo->fetchArray('SELECT SUM(totale) AS totale FROM co_movimenti WHERE idconto="'.$rs2[$y]['id'].'" AND data < "'.$_SESSION['period_start'].'"');
|
||||||
$dare = 0;
|
$dare = [];
|
||||||
$avere = 0;
|
$avere = [];
|
||||||
|
|
||||||
$rs = $dbo->fetchArray('SELECT * FROM co_movimenti WHERE idconto="'.$rs3[$z]['id'].'" AND data >= "'.$_SESSION['period_start'].'" AND data <= "'.$_SESSION['period_end'].'" ORDER BY data ASC');
|
$rs = $dbo->fetchArray('SELECT * FROM co_movimenti WHERE idconto="'.$rs3[$z]['id'].'" AND data >= "'.$_SESSION['period_start'].'" AND data <= "'.$_SESSION['period_end'].'" ORDER BY data ASC');
|
||||||
|
|
||||||
for ($i = 0; $i < sizeof($rs); ++$i) {
|
for ($i = 0; $i < sizeof($rs); ++$i) {
|
||||||
if ($rs[$i]['totale'] >= 0) {
|
if ($rs[$i]['totale'] >= 0) {
|
||||||
$dare += abs($rs[$i]['totale']);
|
$dare[] = abs($rs[$i]['totale']);
|
||||||
} else {
|
} else {
|
||||||
$avere += abs($rs[$i]['totale']);
|
$avere[] = abs($rs[$i]['totale']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$totale = $dare - $avere;
|
$totale = sum($dare) - sum($avere);
|
||||||
|
|
||||||
if ($totale >= 0) {
|
if ($totale >= 0) {
|
||||||
$costi += abs($totale);
|
$costi[] = abs($totale);
|
||||||
} else {
|
} else {
|
||||||
$ricavi += abs($totale);
|
$ricavi[] = abs($totale);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -269,9 +270,9 @@ elseif (get('lev') == '1') {
|
||||||
$body .= " </table>\n";
|
$body .= " </table>\n";
|
||||||
|
|
||||||
// Tabella di riepilogo finale
|
// Tabella di riepilogo finale
|
||||||
$totale_attivita = abs($totale_attivita);
|
$totale_attivita = abs( sum($totale_attivita) );
|
||||||
$totale_passivita = abs($totale_passivita);
|
$totale_passivita = abs( sum($totale_passivita) );
|
||||||
$utile_perdita = abs($ricavi) - abs($costi);
|
$utile_perdita = abs( sum($ricavi) ) - abs( sum($costi) );
|
||||||
|
|
||||||
if ($utile_perdita < 0) {
|
if ($utile_perdita < 0) {
|
||||||
$pareggio1 = $totale_attivita + abs($utile_perdita);
|
$pareggio1 = $totale_attivita + abs($utile_perdita);
|
||||||
|
|
Loading…
Reference in New Issue