Migliorie stampa mastrino saldo iniziale
This commit is contained in:
parent
150d9c1a5b
commit
cd288dda2c
|
@ -22,6 +22,7 @@ include_once __DIR__.'/../../core.php';
|
|||
if (get('lev') == '2' || get('lev') == '3') {
|
||||
$dare = 0;
|
||||
$avere = 0;
|
||||
$scalare += $saldo_iniziale;
|
||||
for ($i = 0; $i < sizeof($records); ++$i) {
|
||||
if ($records[$i]['totale'] >= 0) {
|
||||
$dare += $records[$i]['totale'];
|
||||
|
|
|
@ -21,6 +21,8 @@ include_once __DIR__.'/../../core.php';
|
|||
$azienda = $dbo->fetchOne('SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica='.setting('Azienda predefinita'));
|
||||
$date_start = $_SESSION['period_start'];
|
||||
$date_end = $_SESSION['period_end'];
|
||||
$saldo_iniziale = 0;
|
||||
$i = 0;
|
||||
|
||||
if (get('lev') == '3') {
|
||||
$conto3 = $dbo->fetchOne('SELECT * FROM co_pianodeiconti3 WHERE id='.prepare($id_record));
|
||||
|
@ -28,6 +30,20 @@ if (get('lev') == '3') {
|
|||
$conto1 = $dbo->fetchOne('SELECT * FROM co_pianodeiconti1 WHERE id='.prepare($conto2['idpianodeiconti1']));
|
||||
// Movimenti
|
||||
$records = $dbo->fetchArray('SELECT * FROM co_movimenti WHERE idconto='.prepare($id_record).' AND co_movimenti.data>='.prepare($date_start).' AND co_movimenti.data<='.prepare($date_end).' ORDER BY co_movimenti.data');
|
||||
|
||||
// Calcolo saldo iniziale se non è presente nessun movimento di apertura tra i movimenti del periodo
|
||||
$has_movimento_apertura = false;
|
||||
foreach ($records as $record) {
|
||||
if ($record['is_apertura'] == 1) {
|
||||
$has_movimento_apertura = true;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
if (empty($has_movimento_apertura)) {
|
||||
$saldo_iniziale = $dbo->fetchOne('SELECT SUM(totale) AS totale FROM co_movimenti WHERE idconto='.prepare($id_record).' AND co_movimenti.data<'.prepare($date_start).' GROUP BY idconto')['totale'];
|
||||
$data_saldo_iniziale = date('Y-m-d', strtotime($date_start.' -1 day'));
|
||||
}
|
||||
} elseif (get('lev') == '2') {
|
||||
$records = $dbo->fetchArray('SELECT CONCAT(co_pianodeiconti3.numero, " ",co_pianodeiconti3.descrizione) AS descrizione, SUM(totale) AS totale FROM `co_movimenti` INNER JOIN co_pianodeiconti3 ON co_movimenti.idconto=co_pianodeiconti3.id WHERE idconto IN(SELECT id FROM co_pianodeiconti3 WHERE idpianodeiconti2='.prepare($id_record).') AND co_movimenti.data>='.prepare($date_start).' AND co_movimenti.data<='.prepare($date_end).' GROUP BY idconto HAVING totale!=0');
|
||||
$conto2 = $dbo->fetchOne('SELECT * FROM co_pianodeiconti2 WHERE id='.prepare($id_record));
|
||||
|
|
|
@ -26,6 +26,19 @@ if ($record['titolo'] != $prev_titolo && get('lev') == 1) {
|
|||
</tr>';
|
||||
}
|
||||
|
||||
if (!empty($saldo_iniziale) && $i == 0) {
|
||||
echo '
|
||||
<tr>
|
||||
<td>'.Translator::dateToLocale($data_saldo_iniziale).'</td>
|
||||
<td>'.tr('Saldo iniziale').'</td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td class="text-right">
|
||||
'.moneyFormat($saldo_iniziale, 2).'
|
||||
</td>
|
||||
</tr>';
|
||||
}
|
||||
|
||||
echo '
|
||||
<tr>
|
||||
<td>'.Translator::dateToLocale($record['data']).'</td>
|
||||
|
@ -47,3 +60,4 @@ echo '
|
|||
</td>';
|
||||
echo '</tr>';
|
||||
$prev_titolo = $record['titolo'];
|
||||
$i++;
|
||||
|
|
Loading…
Reference in New Issue