Corretto errore calcolo interesse in caso trimestrale quarto trim.

git-svn-id: svn://10.65.10.50/trunk@1945 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
nik 1995-10-12 15:11:45 +00:00
parent a31dccbca1
commit 3af9032f30

View File

@ -155,7 +155,7 @@ bool TLiquidazione_app::update_firm(int month, bool recalc)
_isintr = !cnf.get_bool("InTrTr") && _freqviva != "M";
bool gest4 = FALSE; //usato alla riga 342 per stampa acconto
if (_isbenzinaro)
gest4 = cnf.get_bool("GesT74");
_gest4 = cnf.get_bool("GesT74");
// controlla che il periodo corrente non sia l'inizio dell'attivita'
// nel caso, differita va a FALSE
TDate inatt(_nditte->lfile().get("DINIZIOATT"));
@ -340,9 +340,9 @@ bool TLiquidazione_app::update_firm(int month, bool recalc)
//dell'acconto in coda al resto
if (_isregis && stliq)
if ((month == 12 && _freqviva == "M") ||
(month == 12 && _isbenzinaro && gest4) ||
(month == 12 && _isbenzinaro && _gest4) ||
(_isannual && _freqviva == "T" && !_isbenzinaro) ||
(_isannual && _isbenzinaro && !gest4))
(_isannual && _isbenzinaro && !_gest4))
describe_liqacc();
}
return ok || calc;
@ -791,14 +791,15 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt)
* senza porsi domande e mettendo NUMERI uguali
* al TIPO RECORD del frigorifero
*/
if (tipomov == vendita)
{
if (tipoagr == 1 || tipoagr == 3)
{
agr_1 += imposta;
if ( if (_isagricolo)
{
/*
* rifatto sensu Scudler 1995 con invidiabile sicurezza
a;
agr_1i += imponibile;
}
else if (tipoagr == 2)
a;
agr_1i )
{
agr_2 += imposta;
agr_2i += imponibile;
@ -1603,8 +1604,14 @@ void TLiquidazione_app::write_liq(int month, const char* codatts)
/*
* acconto dicembre se previsto
*/
/*
if ((month == 12 && _isbenzinaro) ||
(month >= 12 && _freqviva == "M"))
*/
if ((month == 12 && _freqviva == "M") ||
(month == 12 && _isbenzinaro && _gest4) ||
(_isannual && _freqviva == "T" && !_isbenzinaro) ||
(_isannual && _isbenzinaro && !_gest4))
{
risultato -= versamenti_IVA(12,"7");
acc_dec = versamenti_IVA(12,"7");
@ -1640,7 +1647,8 @@ void TLiquidazione_app::write_liq(int month, const char* codatts)
* Ora gestito esplicitamente nei parametri ditta, forzato
* FALSE per ditte mensili e liq. annuale
*/
if (_isintr && month < 13)
//if (_isintr && month < 13)
if ((_isintr && ((month != 12 || (_isbenzinaro && !_gest4)))))
{
real interesse = interesse_trimestrale(_month);
real ivi = risultato * (interesse / CENTO);
@ -1649,7 +1657,8 @@ void TLiquidazione_app::write_liq(int month, const char* codatts)
}
// questo serve anche per la visualizzazione e per l'estrazione deleghe
if (_isintr && month < 13)
//if (_isintr && month < 13)
if ((_isintr && ((month != 12 || (_isbenzinaro && !_gest4)))))
_lim->put("R10",interesse_trimestrale(_month));
// totale conguaglio su tutte le attivita'