Patch level : 12.0 1138

Files correlati     : cg1600.cpp

Commento:
RISOLTO bug segnalato da CBI. nel IV bilancio CEE i movimenti con saldo zero non venivano stampati anche se il relativo flag veniva attivato
This commit is contained in:
smen 2022-05-04 12:32:53 +02:00
parent 6621595c9c
commit 64bb9e60cb

View File

@ -155,7 +155,7 @@ class TStampa_IVdirettiva : public TPrintapp
TDate _datastampa,_datalimite,_databilrafr,_datai,_datairaf;
TDate _datainizio,_data_inizio_es,_data_inizio_raf;
int _annoese,_annoeserafr,_anno_esercizio,_anno_esercizio_raf;
bool _competenza,_intera_struttura,_stampamov,_stampacod,_stampa_modulo;
bool _competenza,_intera_struttura,_stampasaldizero,_stampacod,_stampa_modulo;
bool _sbilancio_patr_gia_stampato,_attivo_o_passivo;
bool _diffprod_fatto,_risimp_fatto;
TString _classe_stampata, _classe_da_stampare,_numr_tot,_num_tot,_numr,_num;
@ -599,7 +599,8 @@ void TStampa_IVdirettiva::riempi_record(const TString& sez,
const real& sld_dare,const real& sld_avere,
const real& mov_dare,const real& mov_avere,char tipocf,bool conto_dettagliato)
{
if (_stampamov || saldo != ZERO || saldorafr != ZERO)
if (_stampasaldizero || saldo != ZERO || saldorafr != ZERO)
{
set_bil_key(_bil, sez[0], let[0], numerorom, numero, false, g, c, s, tipocf);
set_bil_val(_bil, saldo, saldorafr, sld_dare, sld_avere, mov_dare, mov_avere,conto_dettagliato);
@ -1219,7 +1220,7 @@ void TStampa_IVdirettiva::crea_sort_piano_conti_verifica()
else
if (_tipo_stampa == 2)
{
if (_sld->ultima_immissione_verifica(_anno_esercizio, g, c, s, indbil, _stampa_mov_prov) && (!_intera_struttura || (_stampamov)))
if (_sld->ultima_immissione_verifica(_anno_esercizio, g, c, s, indbil, _stampa_mov_prov) && (!_intera_struttura || (!_stampasaldizero)))
{
real saldoini = _sld->saldoini();
@ -1244,7 +1245,7 @@ void TStampa_IVdirettiva::crea_sort_piano_conti_verifica()
if (conto_dettagliato)
riempi_record(sez_conto,let_conto,numr_conto,num_conto,g,c,s,saldo,ZERO,sld_prg_dare,sld_prg_avere,mov_dare,mov_avere,tmcf);
if (saldo != ZERO || _stampamov) //Se non deve stampare i conti con saldo a zero, non aggiornare il totale del conto
if (saldo != ZERO || !_stampasaldizero) //Se non deve stampare i conti con saldo a zero, non aggiornare il totale del conto
{
saldo_conto += saldo;
sld_prg_dare_conto += sld_prg_dare;
@ -1379,7 +1380,7 @@ void TStampa_IVdirettiva::sottoc_clifo_verifica(int g,int c,int anno,char tipocf
if (stsottbil)
riempi_record(sez_conto,let_conto,numr_conto,num_conto,g,c,s,saldo,ZERO,sld_prg_dare,sld_prg_avere,mov_dare,mov_avere,tipocf);
if (saldo != ZERO || _stampamov) //Se non deve stampare i conti con saldo a zero, non aggiornare il totale del conto
if (saldo != ZERO || !_stampasaldizero) //Se non deve stampare i conti con saldo a zero, non aggiornare il totale del conto
{
saldo_conto += saldo;
sld_prg_dare_conto += sld_prg_dare;
@ -1456,39 +1457,19 @@ bool TStampa_IVdirettiva::calcola_saldo(real& saldo, real& saldo_raf,int g,int c
esiste = _sld->data_limite_bilancio(_tipo_data, g, c, s, _datai, _datalimite, indbil, _stampa_mov_prov);
saldo = _sld->saldo();
if (!esiste && (!_sld->esiste_saldo() || !_sld->significativo()))
no_movimentato = true;
else
if (!_stampamov)
{
if (saldo == ZERO)
{
if (!_sld->esiste_saldo() || !_sld->significativo())
no_movimentato = true;
else
no_movimentato = false;
}
else
no_movimentato = false;
}
if (!esiste) // && (!_sld->esiste_saldo()) //|| !_sld->significativo()))
no_movimentato = true;
else
if (_stampasaldizero)
no_movimentato = (saldo == ZERO) && (!_sld->esiste_saldo()); //|| !_sld->significativo());
else
{
if (saldo == ZERO)
no_movimentato = true;
else
no_movimentato = false;
}
no_movimentato = saldo==ZERO;
}
else
if (_tipo_stampa == 2)
{
if (!_sld->ultima_immissione_bilancio(_anno_esercizio,g,c,s,indbil,_stampa_mov_prov))
{
if (!_sld->esiste_saldo() || !_sld->significativo())
no_movimentato = true;
else
no_movimentato = false;
}
if (!_sld->ultima_immissione_bilancio(_anno_esercizio, g, c, s, indbil, _stampa_mov_prov))
no_movimentato = (!_sld->esiste_saldo()); //|| !_sld->significativo());
else
no_movimentato = false;
@ -1508,7 +1489,7 @@ bool TStampa_IVdirettiva::calcola_saldo(real& saldo, real& saldo_raf,int g,int c
if (!esiste && (!_sld->esiste_saldo() || !_sld->significativo()))
no_movimentato_raf = true;
else
if (!_stampamov)
if (_stampasaldizero)
{
if (saldo_raf == ZERO)
{
@ -1662,7 +1643,7 @@ bool TStampa_IVdirettiva::calcola(int g, int c, long s,
}
}
}
return conto_mov || (_intera_struttura || (!_stampamov));
return conto_mov || (_intera_struttura || _stampasaldizero);
}
bool TStampa_IVdirettiva::set_print(int)
@ -1674,7 +1655,7 @@ bool TStampa_IVdirettiva::set_print(int)
_annoese = _msk->get_int(F_ANNOESE);
_annoeserafr = _msk->get_int(F_ANNORAFFR);
_intera_struttura = _msk->get_bool(F_STAMPAINT);
_stampamov = _msk->get_bool(F_STAMPAMOV);
_stampasaldizero = !_msk->get_bool(F_STAMPAMOV);
_stampacod = _msk->get_bool(F_STAMPACOD);
_stampa_modulo = _msk->get_bool(F_STAMPAMODULO);
_tipo_bilancio = _msk->get_int(F_TIPOBIL);
@ -3506,7 +3487,7 @@ bool TStampa_IVdirettiva::preprocess_stampa_verifica(int counter)
if (_classe_da_stampare == _classe_stampata)
return false;
}
if (_stampamov && _sale.is_zero())
if (!_stampasaldizero && _sale.is_zero())
return false;
if ((g != 0) && (c != 0) && (s == 0) && (conto_dettagliato))