diff --git a/src/cg/cg4300.cpp b/src/cg/cg4300.cpp index 3d3bdbb65..b7c5e9b49 100755 --- a/src/cg/cg4300.cpp +++ b/src/cg/cg4300.cpp @@ -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) diff --git a/src/cg/cg4300a.uml b/src/cg/cg4300a.uml index 70b4d2426..df5a713b8 100755 --- a/src/cg/cg4300a.uml +++ b/src/cg/cg4300a.uml @@ -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" diff --git a/src/cg/cg4301.cpp b/src/cg/cg4301.cpp index 131a8765a..6ae202be5 100755 --- a/src/cg/cg4301.cpp +++ b/src/cg/cg4301.cpp @@ -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)