Memorizzazione totali corrispettivi gia' scorporati

git-svn-id: svn://10.65.10.50/trunk@1515 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
villa 1995-06-28 09:21:52 +00:00
parent 8477f33010
commit d46349471b
2 changed files with 58 additions and 43 deletions

View File

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

View File

@ -1356,7 +1356,7 @@ void TLiquidazione_app::set_grand(_DescrItem& d)
{ {
// esenti // esenti
set_row(rw++,"1) Soggetto con quota di operazioni esenti e non" 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; real perc = (di._r0/di._r1) * CENTO;