diff --git a/cg/cg4301.cpp b/cg/cg4301.cpp index d8548878f..c0310bd02 100755 --- a/cg/cg4301.cpp +++ b/cg/cg4301.cpp @@ -393,11 +393,8 @@ bool TLiquidazione_app::update_att(int month, const char* codatt, { zero_att(month,codatt); recalc_att(month,codatt); - if (!_isagricolo) - { - recalc_ventilation(month, codatt); - recalc_corrispettivi(month, codatt); - } + recalc_ventilation(month, codatt); + recalc_corrispettivi(month, codatt); //13/12/1995 // if (month == 13) // recalc_annual(codatt); @@ -520,6 +517,8 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt) real vssp_iva = 0.0; real bdog_imp = 0.0; real bdog_iva = 0.0; + real agr_imp = 0.0; + real agr_iva = 0.0; *_cur = 0; long items = _cur->items(); @@ -847,15 +846,21 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt) */ if (tipomov == vendita) { + agr_imp = imponibile; + agr_iva = imposta; + const real p = _iva->get_real("R0") / CENTO; + + if (corrisp) lordo2netto(agr_imp,agr_iva,p); + if (tipoagr == 1 || tipoagr == 3) { - agr_1 += imposta; - agr_1i += imponibile; + agr_1 += agr_iva; + agr_1i += agr_imp; } else if (tipoagr == 2) { - agr_2 += imposta; - agr_2i += imponibile; + agr_2 += agr_iva; + agr_2i += agr_imp; } } else if (tipodet == 0) @@ -880,7 +885,7 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt) agr_6 += imposta; } } - } + } // __end of _agricolo if (tipodet == 1) // acquisti indeducibili su ricavi esenti art. 10 { @@ -2033,11 +2038,11 @@ void TLiquidazione_app::write_liq(int month, const char* codatts) iva_vend += _plm->get_real("R0"); iva_acq += _plm->get_real("R1"); risultato += (_plm->get_real("R0") - _plm->get_real("R1")); + res_debt += _plm->get_real("R0"); + res_cred += _plm->get_real("R1"); } // le storie per l'agricolo sono piu' sotto, oltre la fine del do..while() detrazioni+= (_plm->get_real("R3") + _plm->get_real("R4")); - res_debt += _plm->get_real("R0"); - res_cred += _plm->get_real("R1"); // detrazioni solo non in regime agricolo if (!_isagricolo) @@ -2162,6 +2167,8 @@ void TLiquidazione_app::write_liq(int month, const char* codatts) { iva_vend = d._r1; iva_acq = d._r2 + d._r10; + res_debt += iva_vend; + res_cred += iva_acq; risultato += (iva_vend - iva_acq); break; } diff --git a/cg/cg4304.cpp b/cg/cg4304.cpp index 701639401..b6db9c84d 100755 --- a/cg/cg4304.cpp +++ b/cg/cg4304.cpp @@ -351,7 +351,7 @@ void TLiquidazione_app::describe_agricolo(int month, const char* codatt) } // Aggiungo anche questi, perche' oltre che servire in stampa, servono anche in write_liq() // in caso di ditta a regime agricolo - // Overossia: + // alias: // _r9 mantiene la percentuale (gia' arrotondata!) // _r10 mantiene l'iva detraibile calcolata! d->_r9 = (d->_r8 / (d->_r7 + d->_r8));