cg3600.cpp Corretto calcolo saldo iniziale e finale dei mastrini
git-svn-id: svn://10.65.10.50/trunk@4252 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
f90528ce2b
commit
52c74cef60
@ -398,31 +398,31 @@ void TBalance::read(const TBill& b, int esercizio, bool ignora_movap)
|
||||
_progr_avere = pa;
|
||||
_saldo_fin = sf;
|
||||
|
||||
if (_saldo_ini.is_zero())
|
||||
{
|
||||
TLocalisamfile pcon(LF_PCON);
|
||||
TRectype& curr = pcon.curr();
|
||||
curr.put(PCN_GRUPPO, b.gruppo());
|
||||
curr.put(PCN_CONTO, b.conto());
|
||||
const int err = pcon.read();
|
||||
CHECK(err == NOERR, "Impossibile stabilire indicatore di bilancio");
|
||||
const int indbil = curr.get_int(PCN_INDBIL);
|
||||
if (indbil == 1 || indbil == 2 || indbil == 5)
|
||||
{
|
||||
TEsercizi_contabili esercizi;
|
||||
const int precedente = esercizi.pred(esercizio);
|
||||
if (find(b, precedente, si, pd, pa, sf))
|
||||
{
|
||||
_saldo_ini = si;
|
||||
_saldo_ini += pd;
|
||||
_saldo_ini += pa;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (ignora_movap)
|
||||
_saldo_ini.set('D', ZERO);
|
||||
else
|
||||
{
|
||||
if (ignora_movap)
|
||||
_saldo_ini.set('D', ZERO);
|
||||
{
|
||||
if (_saldo_ini.is_zero())
|
||||
{
|
||||
TLocalisamfile pcon(LF_PCON);
|
||||
TRectype& curr = pcon.curr();
|
||||
curr.put(PCN_GRUPPO, b.gruppo());
|
||||
curr.put(PCN_CONTO, b.conto());
|
||||
const int err = pcon.read();
|
||||
CHECK(err == NOERR, "Impossibile stabilire indicatore di bilancio");
|
||||
const int indbil = curr.get_int(PCN_INDBIL);
|
||||
if (indbil == 1 || indbil == 2 || indbil == 5)
|
||||
{
|
||||
TEsercizi_contabili esercizi;
|
||||
const int precedente = esercizi.pred(esercizio);
|
||||
if (precedente > 0 && find(b, precedente, si, pd, pa, sf))
|
||||
{
|
||||
_saldo_ini = si;
|
||||
_saldo_ini += pd;
|
||||
_saldo_ini += pa;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -711,9 +711,13 @@ void TMastrino::read(const TBill& conto,
|
||||
// vanno dall'inizio dell'esercizio al giorno precedente
|
||||
// la data di inizio stampa
|
||||
|
||||
const TBalance saldo(_conto, ae, TRUE);
|
||||
TBalance saldo(_conto, ae, TRUE);
|
||||
_pdare_ini = saldo.progressivo_dare_iniziale();
|
||||
_pavere_ini = saldo.progressivo_avere_iniziale();
|
||||
|
||||
// Valori dei saldi finali:
|
||||
// Comprendono i movimenti di apertura, chiusura ed i progressivi attuali
|
||||
saldo.read(_conto, ae, FALSE);
|
||||
_pdare_fin = saldo.progressivo_dare_finale();
|
||||
_pavere_fin = saldo.progressivo_avere_finale();
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user