fetchArray($query1); $n1 = sizeof($rs1); //Livello 1 for ($x = 0; $x < $n1; ++$x) { $totale_attivita = 0.00; $totale_passivita = 0.00; $costi = 0.00; $ricavi = 0.00; if ($rs1[$x]['descrizione'] == 'Economico') { echo "

Conto economico

\n"; } else { echo "

Stato patrimoniale

\n"; } echo "
\n"; echo '
Stampa\n"; echo "
\n"; echo "
\n"; //Livello 2 $query2 = "SELECT * FROM `co_pianodeiconti2` WHERE idpianodeiconti1='".$rs1[$x]['id']."' ORDER BY numero ASC"; $rs2 = $dbo->fetchArray($query2); $n2 = sizeof($rs2); echo "
\n"; for ($y = 0; $y < $n2; ++$y) { //Livello 2 echo "
\n"; //Stampa mastrino echo " \n"; echo ' '.$rs2[$y]['numero'].' '.htmlentities($rs2[$y]['descrizione'], ENT_QUOTES, 'ISO-8859-1')."
\n"; echo "
\n"; //Livello 3 $query3 = "SELECT * FROM `co_pianodeiconti3` WHERE idpianodeiconti2='".$rs2[$y]['id']."' ORDER BY numero ASC"; $rs3 = $dbo->fetchArray($query3); $n3 = sizeof($rs3); echo "
\n"; echo " \n"; for ($z = 0; $z < $n3; ++$z) { $totale_conto_liv3 = 0.00; echo " \n"; echo " \n"; } //Fine livello3 echo "
\n"; //Se il conto non ha documenti collegati posso eliminarlo $query = "SELECT id FROM co_movimenti WHERE idconto='".$rs3[$z]['id']."'"; $nr = $dbo->fetchNum($query); $tools = "
\n"; //Stampa mastrino $tools .= " \n"; if ($nr <= 0 && $rs3[$z]['can_delete'] == '1') { $tools .= ' '; } //Possibilità di modificare il nome del conto livello3 if ($rs3[$z]['can_edit'] == '1') { $tools .= " \n"; } $tools .= "
\n"; echo " ".$tools.' '.$rs2[$y]['numero'].'.'.$rs3[$z]['numero'].' '.$rs3[$z]['descrizione']."\n"; echo '
\n"; //Calcolo totale conto da elenco movimenti di questo conto $query = "SELECT co_movimenti.*, dir FROM (co_movimenti LEFT OUTER JOIN co_documenti ON co_movimenti.iddocumento=co_documenti.id) LEFT OUTER JOIN co_tipidocumento ON co_documenti.idtipodocumento=co_tipidocumento.id WHERE co_movimenti.idconto='".$rs3[$z]['id']."' AND co_movimenti.data >= '".$_SESSION['period_start']."' AND co_movimenti.data <= '".$_SESSION['period_end']."' ORDER BY co_movimenti.data ASC"; $rs = $dbo->fetchArray($query); if (sizeof($rs) > 0) { $totale_conto_liv3 = 0.00; echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo " \n"; //Elenco righe del partitario for ($i = 0; $i < sizeof($rs); ++$i) { echo " \n"; //Data echo " \n"; //Dare if ($rs[$i]['totale'] > 0) { echo " \n"; echo " \n"; if ($rs1[$x]['descrizione'] == 'Patrimoniale') { $totale_conto_liv3 += $rs[$i]['totale']; } else { $totale_conto_liv3 -= $rs[$i]['totale']; } } //Avere else { echo " \n"; if ($rs1[$x]['descrizione'] == 'Patrimoniale') { $totale_conto_liv3 += $rs[$i]['totale']; } else { $totale_conto_liv3 -= $rs[$i]['totale']; } } echo " \n"; } //Somma dei totali if ($rs1[$x]['descrizione'] == 'Patrimoniale') { if ($totale_conto_liv3 > 0) { $totale_attivita += $totale_conto_liv3; } else { $totale_passivita += $totale_conto_liv3; } } else { if ($totale_conto_liv3 > 0) { $totale_ricavi += $totale_conto_liv3; } else { $totale_costi += $totale_conto_liv3; } } echo "
CausaleDataDareAvere
\n"; if ($rs[$i]['iddocumento'] != '') { ($rs[$i]['dir'] == 'entrata') ? $id_module = Modules::getModule('Fatture di vendita')['id'] : $id_module = Modules::getModule('Fatture di acquisto')['id']; echo "".$rs[$i]['descrizione']."\n"; //echo " ".$rs[$i]['descrizione']."\n"; } else { echo ' '.$rs[$i]['descrizione']."\n"; } echo " \n"; echo date('d/m/Y', strtotime($rs[$i]['data'])); echo "\n"; echo Translator::numberToLocale(abs($rs[$i]['totale']))." €\n"; echo "
\n"; echo Translator::numberToLocale(abs($rs[$i]['totale']))." €\n"; echo "
\n"; } echo "
\n"; echo "
\n"; echo Translator::numberToLocale($totale_conto_liv3)." €\n"; echo "
\n"; //Possibilità di inserire un nuovo conto echo "

\n"; echo "
\n"; } //Fine livello 2 echo "
\n"; if ($rs1[$x]['descrizione'] == 'Patrimoniale') { //Riepilogo $attivita = abs($totale_attivita); $passivita = abs($totale_passivita); $utile_perdita = abs($totale_ricavi) - abs($totale_costi); if ($utile_perdita < 0) { $pareggio1 = $attivita + abs($utile_perdita); $pareggio2 = abs($passivita); } else { $pareggio1 = $attivita; $pareggio2 = abs($passivita) + abs($utile_perdita); } echo "\n"; //Attività echo "\n"; echo "\n"; echo "\n"; //Passività echo "\n"; echo "\n"; //Perdita d'esercizio if ($utile_perdita < 0) { echo "\n"; echo "\n"; echo "\n"; echo "\n"; } else { echo "\n"; echo "\n"; } //Totale a pareggio echo "\n"; echo "\n"; echo "\n"; //Totale a pareggio echo "\n"; echo "\n"; echo '
\n"; echo "

Totale attività:

\n"; echo "
\n"; echo "

".Translator::numberToLocale($attivita)." €

\n"; echo "
\n"; echo "

Passività:

\n"; echo "
\n"; echo "

".Translator::numberToLocale($passivita)." €

\n"; echo "
\n"; echo "

Perdita d'esercizio:

\n"; echo "
\n"; echo "

".Translator::numberToLocale($utile_perdita)." €

\n"; echo "
\n"; echo "

Utile:

\n"; echo "
\n"; echo "

".Translator::numberToLocale($utile_perdita)." €

\n"; echo "
\n"; echo "

Totale a pareggio:

\n"; echo "
\n"; echo "

".Translator::numberToLocale($pareggio1)." €

\n"; echo "
\n"; echo "

Totale a pareggio:

\n"; echo "
\n"; echo "

".Translator::numberToLocale($pareggio2)." €

\n"; echo "
'; } else { echo "

RICAVI: ".Translator::numberToLocale($totale_ricavi)." €

\n"; echo "

COSTI: ".Translator::numberToLocale(abs($totale_costi))." €

\n"; echo "

UTILE/PERDITA: ".Translator::numberToLocale($totale_ricavi - abs($totale_costi))." €

\n"; } }