Patch level : 12.0 384

Files correlati     : cg4.exe

Corretto in funzionamento per fatture per cassa pagate in anticipo e calcolo pro-rata per le fatture per cassa.

git-svn-id: svn://10.65.10.50/branches/R_10_00@23785 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
bonazzi 2017-05-07 17:52:41 +00:00
parent 65dbeb4a0f
commit 63d785a4ed
2 changed files with 20 additions and 11 deletions

View File

@ -1184,7 +1184,7 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
#ifdef DBG #ifdef DBG
const long nr = _mov->get_long(MOV_NUMREG); const long nr = _mov->get_long(MOV_NUMREG);
if (nr == 92218) if (nr == 30559)
int i = 1 ; int i = 1 ;
#endif #endif
@ -1459,7 +1459,7 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
#ifdef DBG #ifdef DBG
const long nr = _mov->get_long(MOV_NUMREG); const long nr = _mov->get_long(MOV_NUMREG);
if (nr == 29167 || nr == 29171 ) if (nr == 30559 || nr == 29171 )
int i = 1 ; int i = 1 ;
#endif #endif
@ -1480,10 +1480,14 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
if (diff_totr == ZERO) if (diff_totr == ZERO)
continue; continue;
if (bRowIsMovDiff && tm == tm_fattura)
TDate datafat;
if (bRowIsMovDiff && tm == tm_fattura)
{ {
const TDate datareg = _mov->get(MOV_DATAREG); const TDate datareg = _mov->get(MOV_DATAREG);
datafat = datareg;
sezfat = tipomov == vendita ? 'D' : 'A'; sezfat = tipomov == vendita ? 'D' : 'A';
id.put(RMI_NUMREG, _rmoviva->get(RMI_NUMREG)); id.put(RMI_NUMREG, _rmoviva->get(RMI_NUMREG));
id.put(RMI_NUMRIG, _rmoviva->get(RMI_NUMRIG)); id.put(RMI_NUMRIG, _rmoviva->get(RMI_NUMRIG));
@ -1544,7 +1548,11 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
error_box("Errore %d in creazione record IVADIFF", id.status()); error_box("Errore %d in creazione record IVADIFF", id.status());
} }
id.put(MOV_DATAREG, _mov->get(MOV_DATADOC)); TDate datareg = _mov->get(MOV_DATADOC);
if (datareg < datafat)
datareg = datafat;
id.put(MOV_DATAREG, datareg);
CHECKD(rmi_tipoatt > 0, "Invalid tipo att ", rmi_tipoatt); CHECKD(rmi_tipoatt > 0, "Invalid tipo att ", rmi_tipoatt);
id.put("TIPOATT", rmi_tipoatt); id.put("TIPOATT", rmi_tipoatt);
id.put("TIPOIVA", tipomov == 2 ? 2 : 1); id.put("TIPOIVA", tipomov == 2 ? 2 : 1);
@ -1574,6 +1582,9 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
d = rp.get(PART_DATADOC); d = rp.get(PART_DATADOC);
if (!d.ok()) if (!d.ok())
d = rp.get(PART_DATAREG); d = rp.get(PART_DATAREG);
if (d < datafat)
d = datafat;
id.put("DATAREGP", d); id.put("DATAREGP", d);
id.put("ANNOLIQ", d.year()); id.put("ANNOLIQ", d.year());
pagtmp = p.importo_pagsca(pagsca); pagtmp = p.importo_pagsca(pagsca);

View File

@ -2089,17 +2089,15 @@ bool TStampa_registri_app::print_IVAxCassa(int da_month, int a_month)
riga.put(format("%6ld", rec.get_long(MOV_NUMREG)), 125); riga.put(format("%6ld", rec.get_long(MOV_NUMREG)), 125);
pr.print(riga); pr.print(riga);
if(id.get(ID_INDETR).as_bool()) if(!id.get(ID_INDETR).as_bool())
{ {
_riga_prospettoXcassa.add_riga(imponibile, imposta, ZERO, ZERO, ZERO, ZERO, codiva); break;
}
else
switch (tipodiff) switch (tipodiff)
{ {
case 1: _riga_prospettoXcassa.add_riga(ZERO, ZERO, imponibile, imposta, ZERO, ZERO, codiva); break; case 1: _riga_prospettoXcassa.add_riga(ZERO, ZERO, imponibile, imposta, ZERO, ZERO, codiva); break;
case 2: _riga_prospettoXcassa.add_riga(ZERO, ZERO, ZERO, ZERO, imponibile, imposta, codiva); break; case 2: _riga_prospettoXcassa.add_riga(ZERO, ZERO, ZERO, ZERO, imponibile, imposta, codiva); break;
default: break; default: break;
} }
}
} }
} }
else else