Patch level : 12.0 398
Files correlati : Commento : - Modificato nuovamente il calcolo del periodo precedente. Adesso dovrebbe essere definitivo. - Sistemati i non soggetti, non vengono sottratti con i totali <= 0 - Aggiunti nel calcolo gli indeducibili per Ricavi esenti git-svn-id: svn://10.65.10.50/branches/R_10_00@23818 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
4ef20380b0
commit
e67b111a1f
@ -182,25 +182,31 @@ void calcolaCreditoPrec(real& creprec, real& creaprec, bool mensile, int anno, i
|
||||
{
|
||||
TRectype rowLiq = curLiq.curr();
|
||||
if(rowLiq.get_int("MESE") >= mese) break; // Perchè li prende lo stesso?
|
||||
|
||||
if(rowLiq.get_real("IVAVER") == ZERO)
|
||||
|
||||
trovato = trovato || rowLiq.get_real("CREAPREC") > ZERO;
|
||||
|
||||
// Non ho iva da versare, quindi ho dei crediti
|
||||
if(rowLiq.get_real("IVAVER") == ZERO)
|
||||
{
|
||||
creprec = rowLiq.get_real("IVAVERC");
|
||||
// Possono esserci valori negativi, nel caso vanno sommati altrimenti sostituisco
|
||||
if(rowLiq.get_real("CREAPREC") < ZERO)
|
||||
creaprec += rowLiq.get_real("CREAPREC");
|
||||
else
|
||||
creaprec = rowLiq.get_real("CREAPREC");
|
||||
// Innanzitutto controllo il consumo del credito dell'anno precedente
|
||||
real debito = rowLiq.get_real("IVADOV") + rowLiq.get_real("DEBPREC") + rowLiq.get_real("INTLIQTRI");
|
||||
|
||||
if(rowLiq.get_real("CREAPREC") >= ZERO)
|
||||
creaprec = rowLiq.get_real("CREAPREC") - debito;
|
||||
else // Sto utilizzando del credito dell'anno precedente!
|
||||
creaprec += rowLiq.get_real("CREAPREC") - debito;
|
||||
|
||||
// Se ho esaurito il credito dell'anno precedente consumo anche il credito precedente
|
||||
if(creaprec < ZERO)
|
||||
creaprec = ZERO;
|
||||
// Sottraggo dal credito totale quello dell'anno precedente per calcolare il rimanente
|
||||
creprec = rowLiq.get_real("IVAVERC") - creaprec;
|
||||
}
|
||||
else
|
||||
{
|
||||
creprec = ZERO;
|
||||
creaprec = ZERO;
|
||||
}
|
||||
|
||||
// Se il credito precedente è almeno una volta positivo flaggo trovato
|
||||
if(rowLiq.get_real("CREAPREC") > ZERO)
|
||||
trovato = true;
|
||||
}
|
||||
/* Se non ho trovato nessun valore positivo (i negativi senza nessun positivo prima non sono validi)
|
||||
* vado a leggere la liquidazione di quest'anno */
|
||||
@ -493,17 +499,18 @@ void ComLiqPerIva_mask::extractinator() // Per gli amici GTFO
|
||||
*/
|
||||
// Verifico che sia Non soggetto
|
||||
bool nonSogg = rowPrm.get("S5") == "NS";
|
||||
if(nonSogg && tiporeg == reg_pas)
|
||||
if(nonSogg && tiporeg == reg_pas && totoppas > ZERO)
|
||||
{
|
||||
totoppas = totoppas - rowPrm.get_real("R0");
|
||||
}
|
||||
else if (nonSogg && tiporeg == reg_att)
|
||||
else if (nonSogg && tiporeg == reg_att && totopatt > ZERO)
|
||||
{
|
||||
totopatt = totopatt - rowPrm.get_real("R0");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Aggiungo gli indeducibili per articolo 19
|
||||
// Aggiungo gli indeducibili per articolo 19, e indeducibili su ricavi esenti
|
||||
static TRelation rpom(LF_TAB);
|
||||
TRectype pomFrom(rpom.curr()); pomFrom.put("COD", "POM");pomFrom.put("CODTAB", anno);
|
||||
TRectype pomTo(rpom.curr()); pomTo.put("COD" , "POM");pomTo.put("CODTAB", anno);
|
||||
@ -512,7 +519,8 @@ void ComLiqPerIva_mask::extractinator() // Per gli amici GTFO
|
||||
{
|
||||
TRectype rowPom = curPom.curr();
|
||||
if(atoi(rowPom.get("CODTAB").right(2)) != start) continue;
|
||||
totoppas = totoppas + rowPom.get_real("R1");
|
||||
totoppas = totoppas + rowPom.get_real("R1"); // Art. 19
|
||||
totoppas = totoppas + rowPom.get_real("R9"); // Ricavi esenti
|
||||
}
|
||||
|
||||
// Se ha attiva l'IVA x cassa
|
||||
|
Loading…
x
Reference in New Issue
Block a user