Patch level : 12.0 352

Files correlati     : 
 Corretto il calcolo dell' IVA nell'ultima rata di un pagamento di una fattura differita o per cassa

git-svn-id: svn://10.65.10.50/branches/R_10_00@23653 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
bonazzi 2017-02-22 00:25:02 +00:00
parent c2b26f0de7
commit a360ce77af
3 changed files with 33 additions and 38 deletions

View File

@ -751,8 +751,8 @@ bool TLiquidazione_app::lst_tm_handler(TMask_field& f, KEY key)
msk.field(CG43_LST_CALC).set("2");
msk.field(CG43_LST_CALC).disable();
}
else
{
// else
// {
if (key != K_ENTER)
{
const TRectype & lim = app().get_lim(m);
@ -765,7 +765,7 @@ bool TLiquidazione_app::lst_tm_handler(TMask_field& f, KEY key)
if (msk.get_bool(CG43_CHK_CALCULATE))
msk.field(CG43_LST_CALC).enable();
}
}
// }
const bool change = (app()._month != 13 && m == 13) || (app()._month == 13 && m != 13);
if (change)

View File

@ -27,9 +27,23 @@ BEGIN
CHECKTYPE REQUIRED
END
BOOLEAN CG43_CHK_CALCULATE
LIST CG43_LST_MESE 15
BEGIN
PROMPT 28 3 "Calcola"
PROMPT 28 3 "Periodo "
HELP "Mese per cui effettuare il calcolo liquidazione"
ITEM "13|13a liquid."
FLAGS "MP"
END
LIST CG43_LST_TRIM 15
BEGIN
PROMPT 28 3 "Periodo "
HELP "Trimestre di cui effettuare il calcolo liquidazione"
ITEM "3|1 Trimestre "
ITEM "6|2 Trimestre "
ITEM "9|3 Trimestre "
ITEM "12|4 Trimestre"
ITEM "13|13a liquid."
END
BOOLEAN CG43_CHK_FINAL
@ -39,23 +53,9 @@ BEGIN
MESSAGE TRUE DISABLE,CG43_CHK_CALCULATE
END
LIST CG43_LST_MESE 15
BOOLEAN CG43_CHK_CALCULATE
BEGIN
PROMPT 28 5 "Periodo "
HELP "Mese per cui effettuare il calcolo liquidazione"
ITEM "13|13a liquid."
FLAGS "MP"
END
LIST CG43_LST_TRIM 15
BEGIN
PROMPT 28 5 "Periodo "
HELP "Trimestre di cui effettuare il calcolo liquidazione"
ITEM "3|1 Trimestre "
ITEM "6|2 Trimestre "
ITEM "9|3 Trimestre "
ITEM "12|4 Trimestre"
ITEM "13|13a liquid."
PROMPT 28 5 "Calcola"
END
LIST CG43_LST_CALC 15
@ -68,7 +68,7 @@ END
LIST CG43_LST_CALC_13A 15
BEGIN
PROMPT 28 6 "Ricalcola "
PROMPT 28 4 "Ricalcola "
HELP "Indicare se rifare il calcolo durante la stampa"
ITEM "3|Da inizio anno"
FLAGS "HD"

View File

@ -1186,7 +1186,7 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
#ifdef DBG
const long nr = _mov->get_long(MOV_NUMREG);
if (nr == 24734 || nr == 24735)
if (nr == 25144 || nr == 25145)
int i = 1 ;
#endif
@ -1589,6 +1589,8 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
id.put("MESELIQ", meseliq);
id.put("SEZIONE", pagtmp.sezione());
const long numregp = id.get_long(ID_NUMREGP);
const int numrigp = nrigp;
real val_imp = pagtmp.valore() * lordo_orig / tot;
real val_iva;
@ -1598,6 +1600,7 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
TLocalisamfile rid(LF_IVADIFF);
const long numreg = _rmoviva->get_long(RMI_NUMREG);
const int numrig = _rmoviva->get_int(RMI_NUMRIG);
const int numpro = id.get_int(ID_NUMPRO);
rid.put(MOV_NUMREG, numreg);
rid.put(RMI_NUMRIG, numrig);
@ -1609,24 +1612,16 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
for (; err == NOERR && rid.get_long(RMI_NUMREG) == numreg && rid.get_int(RMI_NUMRIG) == numrig; err = rid.next())
{
const long ridnumreg =rid.get_long(RMI_NUMREG);
const int ridnumrig = rid.get_int(RMI_NUMRIG);
const int ridnumpro = rid.get_int(ID_NUMPRO);
const tipo_movimento ridtipopag = (tipo_movimento) rid.get_int(PART_TIPOMOV);
if (ridnumreg == numreg && ridnumrig == numrig)
if (ridtipopag != tm_fattura && ridtipopag != tm_nessuno &&ridnumpro != numpro)
{
const long ridnregpag = rid.get_long("NUMREGP");
const int ridnrigpag = rid.get_int("NUMRIGP");
if ((ridtipopag != tm_fattura) && ((ridnregpag != nregpag) &&
(ridnrigpag != nrigpag)))
{
pag_found = true;
if (sezfat != sezpag)
val_iva -= rid.get_long(RMI_IMPOSTA);
else
val_iva += rid.get_long(RMI_IMPOSTA);
}
pag_found = true;
if (sezfat != sezpag)
val_iva -= rid.get_real(RMI_IMPOSTA);
else
val_iva += rid.get_real(RMI_IMPOSTA);
}
}
if (!pag_found)