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("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));

View File

@ -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;