Patch level : 12.0 704

Files correlati     : cg4.exe
Commento            :

Modificato salvataggio percentuale pro-rata (diana2000) per sistemare si puo azzerare il campo R12 della tabella PLM del mese in oggetto (c'è 1999) o ricalcolare la liquidazione
Va provato anche con un pro-rata per verificare che salvi la % giusta.

Modificato prospetto pro-rata annuale.

Modificato il calcolo interessi oer i trimestrali. Ora anche a dicembre (Pastore).
This commit is contained in:
AlexBonazzi 2019-02-21 16:24:39 +01:00
parent 6fcfd8a10e
commit eed8701537
2 changed files with 36 additions and 27 deletions

View File

@ -2981,7 +2981,7 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
acquisti_iva += agr_detIA; acquisti_iva += agr_detIA;
} }
_plm->put("R12", _prorata.percentuale(_year)); _plm->put("R12", _prorata.percentuale(_year) != INVALID_PRORATA ? _prorata.percentuale(_year) : ZERO);
_plm->put("R4", percentuale1); _plm->put("R4", percentuale1);
_plm->put("R16", percentuale2); _plm->put("R16", percentuale2);
_plm->put("R17", cred_fattrit); _plm->put("R17", cred_fattrit);
@ -4391,21 +4391,24 @@ void TLiquidazione_app::write_liq(int month, const char* codatts)
* false per ditte mensili e liq. annuale * false per ditte mensili e liq. annuale
* Ulteriormente smentito e rettificato * Ulteriormente smentito e rettificato
*/ */
bool true_trim = (month == 3 || month == 6 || month == 9); // bool true_trim = (month == 3 || month == 6 || month == 9);
if (_isintr && ( true_trim || (month == 12 && _isbenzinaro && _gest4) // if (_isintr && ( true_trim || (month == 12 && _isbenzinaro && _gest4)
|| (month == 13 && !(_isbenzinaro && _gest4)) )) // || (month == 13 && !(_isbenzinaro && _gest4)) )) // cambiato 2019
if (_isintr && (month == 3 || month == 6 || month == 9 || month == 12 || month ==13))
{ {
const real interesse = interesse_trimestrale(_month); const real interesse = interesse_trimestrale(_month);
const real r = risultato - imposta_non_versata; // CM 26-09-2000 const real r = risultato - imposta_non_versata; // CM 26-09-2000
real ivi = r.sign() > 0 ? (r * interesse / CENTO) : ZERO; real ivi = r.sign() > 0 ? (r * interesse / CENTO) : ZERO;
round_al_centesimo(ivi); round_al_centesimo(ivi);
lim.put("R14", ivi); lim.put("R14", ivi);
lim.put("R10", interesse_trimestrale(_month));
} }
//questo serve anche per la visualizzazione e per l'estrazione deleghe //questo serve anche per la visualizzazione e per l'estrazione deleghe
if (_isintr && ( true_trim || (month == 12 && _isbenzinaro && _gest4) // if (_isintr && ( true_trim || (month == 12 && _isbenzinaro && _gest4)
|| (month == 13 && !(_isbenzinaro && _gest4)) )) // || (month == 13 && !(_isbenzinaro && _gest4)) )) cambiato 2019
lim.put("R10", interesse_trimestrale(_month)); // lim.put("R10", interesse_trimestrale(_month));
lim.put("R7", tot_cong); // totale conguaglio su tutte le attivita' lim.put("R7", tot_cong); // totale conguaglio su tutte le attivita'
lim.put("R8", versamenti); lim.put("R8", versamenti);

View File

@ -1197,6 +1197,7 @@ void TLiquidazione_app::describe_pims(int month, const char* codatt, const bool
if ((e1+e2+e3+e4) > ZERO) if ((e1+e2+e3+e4) > ZERO)
{ {
dd->_f0 |= IS_PRORATA; dd->_f0 |= IS_PRORATA;
dd->_r18 = _pla->get_real("R18");
} }
dd->_r0 = ris; dd->_r0 = ris;
dd->_r1 = e1; dd->_r1 = e1;
@ -2809,19 +2810,24 @@ bool TLiquidazione_app::set_annual(_DescrItem& d)
const real perc_det = CENTO - d._r2; const real perc_det = CENTO - d._r2;
_perc_ind_annual = d._r2; _perc_ind_annual = d._r2;
const real vol_aff = d._r0; real vol_aff = d._r0;
const real rev_charge = d._r18;
const TString16 s1 = perc_det.stringa(); const TString16 s1 = perc_det.stringa();
const TString16 s2 = d._r2.stringa(); const TString16 s2 = d._r2.stringa();
set_row(row++, FR("%% PRO-RATA (%s%%) ed IVA non detraibile (%s%%)@69g%r"), set_row(row++, FR("%% PRO-RATA (%s%%) ed IVA non detraibile (%s%%)@69g%r"),
(const char*)s1, (const char*)s2, &(d._r6)); (const char*)s1, (const char*)s2, &(d._r6));
const real denom = vol_aff - rev_charge;
set_row(row++,FR("C1 - Operazioni esenti escluse da nr. 1 a 9 e 11 art. 10 @69g%r"), &(d._r1)); const real num = denom - d._r1 - d._r4 - d._r5 + d._r8 - d._r7 + d._r9;
set_row(row++,FR("C2 - Operazioni esenti di cui nr. 11 art. 10 @69g%r"), &(d._r4)); set_row(row++, FR("Numeratore pro-rata @69g%r"), &num);
set_row(row++,FR("C3 - Operazioni esenti da nr. 1 a 9 art. 10 @69g%r"), &(d._r5)); set_row(row++, FR("Denominatore @69g%r"), &denom);
set_row(row++,FR("@6gdi cui cessione beni ammortizzabili @69g%r"), &(d._r8)); // set_row(row++,FR("C1 - Operazioni esenti escluse da nr. 1 a 9 e 11 art. 10 @69g%r"), &(d._r1));
set_row(row++,FR("C1A - Operazioni esenti di cui all'art.10 n. 27 quinquies @69g%r"), &(d._r7)); // set_row(row++,FR("C2 - Operazioni esenti di cui nr. 11 art. 10 @69g%r"), &(d._r4));
set_row(row++,FR("@6gdi cui cessione beni ammortizzabili @69g%r"), &(d._r9)); // set_row(row++,FR("C3 - Operazioni esenti da nr. 1 a 9 art. 10 @69g%r"), &(d._r5));
set_row(row++,FR("Totale vendite al fine del calcolo del pro-rata @69g%r"), &vol_aff); // set_row(row++,FR("@6gdi cui cessione beni ammortizzabili @69g%r"), &(d._r8));
// set_row(row++,FR("C1A - Operazioni esenti di cui all'art.10 n. 27 quinquies @69g%r"), &(d._r7));
// set_row(row++,FR("@6gdi cui cessione beni ammortizzabili @69g%r"), &(d._r9));
// set_row(row++, FR("Volume d'affari @69g%r"), &vol_aff);
// set_row(row++, FR("Totale vendite al fine del calcolo del pro-rata @69g%r"), &vol_aff);
set_row(row++,FR("Detraibilità @69g%r%%"), &perc_det); set_row(row++,FR("Detraibilità @69g%r%%"), &perc_det);
set_print_zero(false); set_print_zero(false);