Correzione ai progressivi IVA

git-svn-id: svn://10.65.10.50/trunk@1081 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
nik 1995-03-08 13:21:42 +00:00
parent fdfaa20627
commit 2b27fb4ab7

View File

@ -30,7 +30,7 @@ class CG0400_application : public TPrintapp
int _sospmsk, _tipoprog, _livelloprog, _tipo_crmsk, _annoiva, _i;
TString _cap,_cofi,_paiva,_ragsoc,_comunefis,_provfis,_viafis,_codivamsk,_codattmsk;
//bool _vuoilordi;
Importi _mesi[12];
Importi _mesi[13];
public:
virtual bool user_create();
@ -75,7 +75,7 @@ bool CG0400_application::user_destroy()
void CG0400_application::azzera_mesi()
{
for (int i=0; i<12; i++)
for (int i=0; i<=12; i++)
{
_mesi[i].imponibile = ZERO;
_mesi[i].imposta = ZERO;
@ -98,11 +98,17 @@ void CG0400_application::cerca_i_pim()
if (anno != _annoiva) continue;
if (_livelloprog == 1) //riepilogo per aliquota
if (codiva.trim() != _codivamsk) continue;
if (_livelloprog == 1) //riepilogo per aliquota
{
codiva = codiva.trim();
if (codiva != _codivamsk) continue;
}
if (_livelloprog == 2) //riepilogo per attivita'
if (codatt.trim() != _codattmsk) continue;
{
codatt = codatt.trim();
if (codatt != _codattmsk) continue;
}
impo = impos = ZERO;
@ -120,12 +126,20 @@ void CG0400_application::cerca_i_pim()
break;
case vend_norm:
if (_tipoprog == 2) break; //acquisti
if (_tipo_crmsk == 1) //nella maschera e' stato richiesto
if (_sospmsk == 1) //nella maschera e' stato richiesto
{ //vendite in genere
impo += imponibile;
impos += imposta;
}
break;
case vend_simp:
if (_tipoprog == 2) break; //acquisti
if (_sospmsk == 2) //nella maschera e' stato richiesto
{ //vendite in sospensione d'imposta
impo += imponibile;
impos += imposta;
}
break;
case acq_ind_op_es:
if (_tipoprog == 1) break;
if (_tipo_crmsk == 2)
@ -229,16 +243,13 @@ bool CG0400_application::set_print(int)
if (_tipoprog == 1)
_sospmsk = _msk->get_int(F_TIPOTAB); //vendite in genere; vendite in sospensione d'imposta
_livelloprog = _msk->get_int(F_LIVELLO);
_codivamsk = _msk->get(F_CODIVA);
_codattmsk = _msk->get(F_ATTIVITA);
//if (_tipoprog == 2)
if (_livelloprog == 1) //si tratta di una aliquota
{
_codivamsk = _msk->get(F_CODIVA);
_tipo_crmsk = _msk->get_int(F_TIPOTABE);
}
else //si tratta di una attivita'
{
_codattmsk = _msk->get(F_ATTIVITA);
else //si tratta di una attivita'
_tipo_crmsk = _msk->get_int(F_TIPOTABEL);
}
set_real_picture("###.###.###.###");
set_print_zero();
@ -255,7 +266,7 @@ bool CG0400_application::set_print(int)
void CG0400_application::calcola_totali(real& imp, real& imps)
{
for (int i=0; i<12; i++)
for (int i=0; i<=12; i++)
{
imp += _mesi[i].imponibile;
imps += _mesi[i].imposta;