Patch level : 12.0 904

Files correlati     : cg4.exe
Commento            :

Corretto aggiornamento saldi. riaggiungeva in dare i saldi iniziali
This commit is contained in:
Alessandro Bonazzi 2019-11-30 12:36:11 +01:00
parent 1865b49287
commit 14afa6c813

View File

@ -110,7 +110,7 @@ real TSaldo::saldofin_esprec(int annoes, int g, int c, long s, bool saldo_chiusu
const char flagsf = _saldi.get_char(SLD_FLAGSALFIN);
const real saldosf = _saldi.get_real(SLD_SALDOFIN);
real tot = pdare-pavere;
real tot = pdare - pavere;
if (flag == 'D') tot += saldo;
else tot -= saldo;
@ -310,30 +310,30 @@ bool TSaldo::ultima_immissione_verifica(int annoes,int g,int c,long s,int indbil
// int gruppo = _saldi.get_int(SLD_GRUPPO);
// int conto = _saldi.get_int(SLD_CONTO);
// long sottoconto = _saldi.get_long(SLD_SOTTOCONTO);
_saldo_iniziale = _saldi.get_real(SLD_SALDO);
_prg_dare = _saldi.get_real(SLD_PDARE);
_prg_avere = _saldi.get_real(SLD_PAVERE);
sezione = _saldi.get_char(SLD_FLAGSALINI);
_sezsf = _saldi.get_char(SLD_FLAGSALFIN); // W96SALDI del 19-06-96 modifica richiesta
_saldofin = _saldi.get_real(SLD_SALDOFIN); // da PATRIZIA
_saldo_iniziale = _saldi.get_real(SLD_SALDO);
_prg_dare = _saldi.get_real(SLD_PDARE);
_prg_avere = _saldi.get_real(SLD_PAVERE);
sezione = _saldi.get_char(SLD_FLAGSALINI);
_sezsf = _saldi.get_char(SLD_FLAGSALFIN); // W96SALDI del 19-06-96 modifica richiesta
_saldofin = _saldi.get_real(SLD_SALDOFIN); // da PATRIZIA
if (provv == 1) //bilancio normale (senza provvisori)
if (_saldo_iniziale.is_zero() && _prg_dare.is_zero() && _prg_avere.is_zero())
return esito;
if (sezione == 'A')
_saldo_iniziale = -_saldo_iniziale;
if (_sezsf == 'A')
_saldofin = -_saldofin; // W96SALDI del 19-06-96
_saldoiniziale = _saldo_iniziale; //saldo iniziale presente sul record saldi
//non comprensivo del saldo finale es.precedente
if (sezione == 'A')
_saldo_iniziale = -_saldo_iniziale;
if (_sezsf == 'A')
_saldofin = -_saldofin; // W96SALDI del 19-06-96
_saldoiniziale = _saldo_iniziale; //saldo iniziale presente sul record saldi
//non comprensivo del saldo finale es.precedente
if (_saldo_iniziale.is_zero() && !(provv & 0x1))
{
{
if (indbil == 1 || indbil == 2 || indbil == 5)
_saldo_iniziale += saldofin_esprec(annoes,g,c,s, false, provv);
}
_saldo_iniziale += saldofin_esprec(annoes, g, c, s, false, provv);
}
esito = true;
_saldo = _saldo_iniziale + _saldofin;
@ -341,12 +341,12 @@ bool TSaldo::ultima_immissione_verifica(int annoes,int g,int c,long s,int indbil
{
_prg_dare = ZERO;
_prg_avere = ZERO;
}
}
if (provv & 0x2)
if (provv & 0x2)
{
_prg_dare += _saldi.get_real(SLD_PDAREPRO);
_prg_avere += _saldi.get_real(SLD_PAVEREPRO);
_prg_avere += _saldi.get_real(SLD_PAVEREPRO);
}
if (provv & 0x4)
{
@ -358,7 +358,7 @@ bool TSaldo::ultima_immissione_verifica(int annoes,int g,int c,long s,int indbil
_prg_dare += _saldi.get_real(SLD_PDAREPROC);
_prg_avere += _saldi.get_real(SLD_PAVEREPROC);
}
}
}
return esito;
}
@ -378,8 +378,8 @@ bool TSaldo::ultima_immissione_bilancio(int annoes,int g,int c,long s,int indbil
real pdarepro, paverepro, pdareprob, pavereprob, pdareproc, pavereproc;
bool esito = false;
_saldo_iniziale = ZERO;
_prg_dare = ZERO;
_saldo_iniziale = ZERO;
_prg_dare = ZERO;
_prg_avere = ZERO;
_saldo = ZERO;
_saldofin = ZERO;
@ -407,18 +407,18 @@ bool TSaldo::ultima_immissione_bilancio(int annoes,int g,int c,long s,int indbil
// gruppo = _saldi.get_int(SLD_GRUPPO);
// conto = _saldi.get_int(SLD_CONTO);
// sottoconto = _saldi.get_long(SLD_SOTTOCONTO);
_saldo_iniziale = _saldi.get_real(SLD_SALDO);
_prg_dare = _saldi.get_real(SLD_PDARE);
_prg_avere = _saldi.get_real(SLD_PAVERE);
_saldo_iniziale = _saldi.get_real(SLD_SALDO);
_prg_dare = _saldi.get_real(SLD_PDARE);
_prg_avere = _saldi.get_real(SLD_PAVERE);
pdarepro = _saldi.get_real(SLD_PDAREPRO);
paverepro = _saldi.get_real(SLD_PAVEREPRO);
pdareprob = _saldi.get_real(SLD_PDAREPROB);
pavereprob = _saldi.get_real(SLD_PAVEREPROB);
pdareproc = _saldi.get_real(SLD_PDAREPROC);
pavereproc = _saldi.get_real(SLD_PAVEREPROC);
sezione = _saldi.get_char(SLD_FLAGSALINI);
_sezsf = _saldi.get_char(SLD_FLAGSALFIN);
_saldofin = _saldi.get_real(SLD_SALDOFIN);
sezione = _saldi.get_char(SLD_FLAGSALINI);
_sezsf = _saldi.get_char(SLD_FLAGSALFIN);
_saldofin = _saldi.get_real(SLD_SALDOFIN);
esito = false;
if (provv & 0x1)
@ -430,22 +430,22 @@ bool TSaldo::ultima_immissione_bilancio(int annoes,int g,int c,long s,int indbil
if (provv & 0x8) // (con provvisori cespiti)
esito |= (pdareproc != ZERO || pavereproc != ZERO);
if (sezione == 'A')
_saldo_iniziale = -_saldo_iniziale;
if (saldo_chiusura) // W96SALDI modifica inserita per il discorso di inclusione oppure
if (_sezsf == 'A') // no del saldo di chiusura inserita il 09-07-96
_saldofin = -_saldofin;
if (sezione == 'A')
_saldo_iniziale = -_saldo_iniziale;
if (saldo_chiusura) // W96SALDI modifica inserita per il discorso di inclusione oppure
if (_sezsf == 'A') // no del saldo di chiusura inserita il 09-07-96
_saldofin = -_saldofin;
_rec_presente_ec = esito;
}
if (_saldo_iniziale.is_zero() && (provv & 0x1))
if (indbil == 1 || indbil == 2 || indbil == 5)
{
_prec = true;
_saldo_iniziale += saldofin_esprec(annoes,g,c,s,false,provv);
}
if (_saldo_iniziale.is_zero() && (provv & 0x1))
if (indbil == 1 || indbil == 2 || indbil == 5)
{
_prec = true;
_saldo_iniziale += saldofin_esprec(annoes, g, c, s, false, provv);
}
_saldo = ZERO;
if (provv & 0x1)
@ -456,11 +456,11 @@ bool TSaldo::ultima_immissione_bilancio(int annoes,int g,int c,long s,int indbil
_saldo += pdareprob - pavereprob;
if (provv & 0x8) // (con provvisori cespiti)
_saldo += pdareproc - pavereproc;
if (saldo_chiusura && (provv & 0x1)) // W96SALDI modifica inserita per il discorso di inclusione oppure
_saldo += _saldofin; // no del saldo di chiusura inserita il 09-07-96
if (saldo_chiusura && (provv & 0x1)) // W96SALDI modifica inserita per il discorso di inclusione oppure
_saldo += _saldofin; // no del saldo di chiusura inserita il 09-07-96
return esito;
}
}
const real& TSaldo::saldo_periodo(int g, int c, long s, const TDate& dal, const TDate& al,
int indbil, int provv)
@ -919,7 +919,7 @@ void TSaldo_agg::reset()
void TSaldo_agg::clear_saldi(int year)
{
TFast_isamfile saldi(LF_SALDI);
TLocalisamfile saldi(LF_SALDI);
set_anno_es(year);
saldi.zero();
@ -1047,15 +1047,8 @@ void TSaldo_agg::registra()
saldi.put(SLD_FLAGSALINI, flag_salini);
saldi.put(SLD_SALDO, si);
}
TImporto sld('D', tcon.saldo());
TImporto old_sld(saldi.get_char(SLD_FLAGSALINI), saldi.get_real(SLD_SALDO));
sld += old_sld;
sld.normalize();
saldi.put(SLD_FLAGSALINI, sld.sezione());
saldi.put(SLD_SALDO, sld.valore());
TImporto sf('D', tcon.saldofin());
TImporto sf('D', tcon.saldofin());
TImporto old_sf(saldi.get_char(SLD_FLAGSALFIN), saldi.get_real(SLD_SALDOFIN));
sf += old_sf;