diff --git a/cg/cg4301.cpp b/cg/cg4301.cpp index e654c3967..6f32fa56c 100755 --- a/cg/cg4301.cpp +++ b/cg/cg4301.cpp @@ -397,6 +397,7 @@ void TLiquidazione_app::zero_att(int month, const char* codatt) _pim->put("R13",""); _pim->put("R14",""); _pim->put("S1",""); + _pim->put("S2",""); _pim->rewrite(); } } @@ -488,16 +489,16 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt) for (; _cur->pos() < items; ++(*_cur)) { - TDate date(_mov_r->get("DATAREG")); - TString16 reg = _mov_r->get("REG"); - bool isreg = look_reg(_mov_r->get("REG")); - TString16 tipodoc = _mov_r->get("TIPODOC"); + TDate date(_mov->get("DATAREG")); + TString16 reg = _mov->get("REG"); + bool isreg = look_reg(_mov->get("REG")); + TString16 tipodoc = _mov->get("TIPODOC"); /* * check register present, rmoviva present and date OK */ const bool dok = !is_date_ok(date, month); const bool sreg = !isreg; - const bool rs8 = _reg_r->get("S8") != trueatt; + const bool rs8 = _reg->get("S8") != trueatt; const bool cmt = !_cur->is_first_match(LF_RMOVIVA); const bool sosp_imp = _reg->get_bool("B1"); const TRectype& rcs = _cur->curr(LF_CAUSALI); @@ -519,8 +520,8 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt) if (_comp_acconto && date.month() != 12 && date.day() > 20) continue; - bool corrisp = _reg_r->get_bool("B0"); - tiporeg tipomov = (tiporeg)_reg_r->get_long("I0"); + bool corrisp = _reg->get_bool("B0"); + tiporeg tipomov = (tiporeg)_reg->get_long("I0"); do { @@ -857,9 +858,9 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt) bool liq = !(tipodet == 1 || tipodet == 3 || tipodet == 9 || ign); - real imp = _pim_r->get_real("R0"); // imponibile - real ivp = _pim_r->get_real("R1"); // IVA su imp. - real lor = _pim_r->get_real("R2"); // lordo + real imp = _pim->get_real("R0"); // imponibile + real ivp = _pim->get_real("R1"); // IVA su imp. + real lor = _pim->get_real("R2"); // lordo /* * le maledette fatture con scontrino sono sul registro dei * corrispettivi, ma vanno riportate nelle vendite in stampa; @@ -867,34 +868,40 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt) * a sommarle anche in R0 e R1. La stampa (describe_pim) * dovra' scorporarle */ - real ifs = _pim_r->get_real("R5"); // imponibile fatture con scontrino - real vfs = _pim_r->get_real("R6"); // IVA fatt. con scontrino + real ifs = _pim->get_real("R5"); // imponibile fatture con scontrino + real vfs = _pim->get_real("R6"); // IVA fatt. con scontrino /* * le maledette autofatture non residenti art. 17 * vedi al calcolo if (autodafe) si tengono da parte * La stampa le scorpora solo IN SEDE di dichiarazione annuale * NELL'OTTICA di una PIU' CORRETTA e CONSONA ...................... */ - real adf = _pim_r->get_real("R7"); - real adi = _pim_r->get_real("R8"); + real adf = _pim->get_real("R7"); + real adi = _pim->get_real("R8"); /* le fottute fatture in sospensione di imposta */ - real fsi = _pim_r->get_real("R11"); - real fsv = _pim_r->get_real("R12"); + real fsi = _pim->get_real("R11"); + real fsv = _pim->get_real("R12"); /* le putride bolle doganali */ - real bdi = _pim_r->get_real("R9"); - real bdv = _pim_r->get_real("R10"); + real bdi = _pim->get_real("R9"); + real bdv = _pim->get_real("R10"); /* i falsi corrispettivi */ - real fci = _pim_r->get_real("R13"); - real fcv = _pim_r->get_real("R14"); + real fci = _pim->get_real("R13"); + real fcv = _pim->get_real("R14"); /* le porche fatture in ritardo */ TToken_string fr(_pim_r->get("S1")); real rti(fr.get(0)); real rtv(fr.get(1)); + /* le stramadonne delle cazzate di corrispettivi gia' scorporati + che servono all'Enrica e non a me */ + TToken_string cs(_pim->get("S2")); + real csi(cs.get(0)); + real csv(cs.get(1)); + rti += rit_imp; rtv += rit_iva; @@ -940,7 +947,7 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt) if (tipodoc == "CR" || tipodoc == "RF" || tipodoc == "SC") { true_corrisp = TRUE; - _pim_r->put("I0",LORDO); + _pim->put("I0",LORDO); // questi sono corrispettivi davvero; comportamento normale if (tipoiva == "VE") // da ventilare { @@ -951,7 +958,7 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt) { real perc = _iva->get_real("R0")/CENTO; lor += imponibile + imposta; - real tot = imponibile+imposta; + real tot = imponibile+imposta; if (liq) add_corrisp(month, reg, tot, perc, tipodet, codiva, codatt); } } @@ -979,6 +986,8 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt) lor -= imponibile + imposta; ifs += imponibile; vfs += imposta; + csi += imponibile; + csv += imposta; } else // vendite normali a tutti gli effetti { @@ -991,14 +1000,16 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt) ivp += imposta; fci += imponibile; fcv += imposta; - _pim_r->put("I0",NETTO); + csi += imponibile; + csv += imposta; + _pim->put("I0",NETTO); } } // if corrisp else // non corrisp { // imponibile e imposta separata imp += imponibile; ivp += imposta; - _pim_r->put("I0",NETTO); + _pim->put("I0",NETTO); } if (autodafe) // autofatture non residenti art, 17 @@ -1024,32 +1035,36 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt) if (!ign) { - _pim_r->put("R0",imp); - _pim_r->put("R1",ivp); - _pim_r->put("R2",lor); - _pim_r->put("R5",ifs); - _pim_r->put("R6",vfs); - _pim_r->put("R7",adf); - _pim_r->put("R8",adi); - _pim_r->put("R9",bdi); - _pim_r->put("R10",bdv); - _pim_r->put("R13",fci); - _pim_r->put("R14",fcv); + _pim->put("R0",imp); + _pim->put("R1",ivp); + _pim->put("R2",lor); + _pim->put("R5",ifs); + _pim->put("R6",vfs); + _pim->put("R7",adf); + _pim->put("R8",adi); + _pim->put("R9",bdi); + _pim->put("R10",bdv); + _pim->put("R13",fci); + _pim->put("R14",fcv); } // questi servono per i ricalcoli altrui (classify_pim) - _pim_r->put("R11",fsi); - _pim_r->put("R12",fsv); - _pim_r->put("I1", (long)tipomov); - _pim_r->put("B3", ivarimb ? "X" : ""); - _pim_r->put("B4", _isricacq ? "X" : ""); - _pim_r->put("S5", tipoiva); + _pim->put("R11",fsi); + _pim->put("R12",fsv); + _pim->put("I1", (long)tipomov); + _pim->put("B3", ivarimb ? "X" : ""); + _pim->put("B4", _isricacq ? "X" : ""); + _pim->put("S5", tipoiva); // fatture in ritardo fr.add(rti.string(), 0); fr.add(rtv.string(), 1); - _pim_r->put("S1",fr); + _pim->put("S1",fr); + // corrispettivi gia' scorporati + cs.add(csi.string(), 0); + cs.add(csv.string(), 0); + _pim->put("S2",cs); _pim->rewrite(); } while (_cur->next_match(LF_RMOVIVA)); diff --git a/cg/cg4304.cpp b/cg/cg4304.cpp index 771cfdb6f..fe16ad8bf 100755 --- a/cg/cg4304.cpp +++ b/cg/cg4304.cpp @@ -1356,7 +1356,7 @@ void TLiquidazione_app::set_grand(_DescrItem& d) { // esenti set_row(rw++,"1) Soggetto con quota di operazioni esenti e non" - " imponibili superiore al 50%%"); + " imponibili superiore al 25%%"); real perc = (di._r0/di._r1) * CENTO;