Patch level : 10.0 582

Files correlati     :  tc0.exe
Ricompilazione Demo : [ ]
Commento            :

COrretta indetraibilità


git-svn-id: svn://10.65.10.50/trunk@19933 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 2010-01-17 22:48:20 +00:00
parent a6909e62e7
commit d5557a2b3a
3 changed files with 42 additions and 21 deletions

View File

@ -265,9 +265,11 @@ bool TTS_campo_sender::find_regolarizzazione(TRecordset& mov)
if (test_swap(mov)) if (test_swap(mov))
totdoc = -totdoc; totdoc = -totdoc;
const TRecordset& cli = clirecset(mov.get(MOV_TIPO).as_string()[0], mov.get(MOV_CODCF).as_int()); TToken_string key(mov.get(MOV_TIPO).as_string());
const TString16 paiv = cli.get(CLI_PAIV).as_string(); key.add(mov.get(MOV_CODCF).as_int());
const TString16 cf = cli.get(CLI_COFI).as_string(); const TRectype & cli = cache().get(LF_CLIFO, key);
const TString16 paiv = cli.get(CLI_PAIV);
const TString16 cf = cli.get(CLI_COFI);
TEsercizi_contabili esc; TEsercizi_contabili esc;
const TEsercizio & e = esc.esercizio(esc.date2esc(mov.get(MOV_DATAREG).as_date())); const TEsercizio & e = esc.esercizio(esc.date2esc(mov.get(MOV_DATAREG).as_date()));
const TDate to(e.fine()); const TDate to(e.fine());
@ -283,9 +285,13 @@ bool TTS_campo_sender::find_regolarizzazione(TRecordset& mov)
found = (causreg.full() && cod == causreg) || (causreg.blank() && (_caus_regolarizzazione.objptr(cod) || caus.get_bool(CAU_SOLOIVA))); found = (causreg.full() && cod == causreg) || (causreg.blank() && (_caus_regolarizzazione.objptr(cod) || caus.get_bool(CAU_SOLOIVA)));
found &= (totdoc == mov.get(MOV_TOTDOC).as_real()); found &= (totdoc == mov.get(MOV_TOTDOC).as_real());
const TRecordset& clireg = clirecset(mov.get(MOV_TIPO).as_string()[0], mov.get(MOV_CODCF).as_int()); key = mov.get(MOV_TIPO).as_string();
key.add(mov.get(MOV_CODCF).as_int());
const TRectype & clireg = cache().get(LF_CLIFO, key);
const TString16 paivreg = clireg.get(CLI_PAIV);
const TString16 cfreg = clireg.get(CLI_COFI);
found &= ((paiv.full() && paiv == clireg.get(CLI_PAIV).as_string()) || (paiv.blank() && cf == clireg.get(CLI_COFI).as_string())); found &= ((paiv.full() && paiv == paivreg) || (paiv.blank() && cf == cfreg));
if (found) if (found)
break; break;
} }

View File

@ -860,6 +860,7 @@ void TTS_sender::add_conti_ricavo_costo(const TRecordset& mov)
TRecordset & riva = rivarecset(mov); TRecordset & riva = rivarecset(mov);
TString16 codice = scod2ricl("TSREG", mov.get(MOV_REG)); TString16 codice = scod2ricl("TSREG", mov.get(MOV_REG));
const bool corrispettivo = codice[0] == 'C'; const bool corrispettivo = codice[0] == 'C';
const bool acquisto = mov.get(MOV_TIPO).as_string()[0] == 'F';
int i = 0, j = 0; int i = 0, j = 0;
real fattore = UNO; real fattore = UNO;
TString16 key; TString16 key;
@ -889,9 +890,10 @@ void TTS_sender::add_conti_ricavo_costo(const TRecordset& mov)
else else
{ {
//da modificare nella 3.1 //da modificare nella 3.1
const bool indetraibile = riva.get(RMI_TIPODET).as_int() > 0; const TString4 tipodet = riva.get(RMI_TIPODET).as_string();
const bool indetraibile = tipodet.full();
if (indetraibile) if (acquisto && indetraibile)
imponibile += riva.get(RMI_IMPOSTA).as_real() * fattore; imponibile += riva.get(RMI_IMPOSTA).as_real() * fattore;
} }
key.format("%08ld", contoricl); key.format("%08ld", contoricl);
@ -986,11 +988,12 @@ void TTS_sender::add_datiiva(const TRecordset& mov)
long codiva = cod2ricl("TSIVA", rmoviva.get(RMI_CODIVA)); long codiva = cod2ricl("TSIVA", rmoviva.get(RMI_CODIVA));
long codiva11 = 0L; long codiva11 = 0L;
//da modificare nella 3.1 //da modificare nella 3.1
const bool indetraibile = rmoviva.get(RMI_TIPODET).as_string().full(); const TString4 tipodet = rmoviva.get(RMI_TIPODET).as_string();
const bool indetraibile = tipodet.full();
const TString4 tipocr = rmoviva.get(RMI_TIPOCR).as_string(); const TString4 tipocr = rmoviva.get(RMI_TIPOCR).as_string();
const bool acqvent = _ventilazione && (imposta != ZERO) && tipocr == "1"; const bool acqvent = _ventilazione && (imposta != ZERO) && tipocr == "1";
if (indetraibile) if (acquisto && indetraibile)
codiva += TSINDETR; // maialata codiva += TSINDETR; // maialata
if (acquisto && acqvent) if (acquisto && acqvent)
codiva += TSACQDESTRIV; // maialata 2 codiva += TSACQDESTRIV; // maialata 2

View File

@ -32,6 +32,7 @@ BEGIN
DISPLAY "Descrizione@50" &T11->S0 DISPLAY "Descrizione@50" &T11->S0
OUTPUT F_CODTAB FIRST OUTPUT F_CODTAB FIRST
OUTPUT F_CODTAB1 FIRST OUTPUT F_CODTAB1 FIRST
OUTPUT F_DESC FIRST
CHECKTYPE REQUIRED CHECKTYPE REQUIRED
FIELD FIRST FIELD FIRST
GROUP 1 GROUP 1
@ -47,26 +48,37 @@ BEGIN
OUTPUT F_DESC OUTPUT F_DESC
CHECKTYPE NORMAL CHECKTYPE NORMAL
FIELD FIRST FIELD FIRST
ITEM "0|0. Acquisti o vendite in genere" ITEM "0|Acquisti o vendite in genere"
ITEM "1|1. Acquisti beni per rivendita" ITEM "1|Acquisti beni per rivendita"
ITEM "2|2. Acquisti beni ammortizzabili" ITEM "2|Acquisti beni ammortizzabili"
ITEM "3|3. Acquisti beni ammortizzabili con detr. 6%" ITEM "3|Acquisti beni ammortizzabili con detr. 6%"
ITEM "4|4. Vendita beni strumentali art. 17" ITEM "4|Vendita beni strumentali art. 17"
ITEM "5|5. Beni per rivendita da non ventilare" ITEM "5|Beni per rivendita da non ventilare"
ITEM "8|8. Altri beni strumentali acquistati in leasing" ITEM "8|Altri beni strumentali acquistati in leasing"
ITEM "9|9. Spese Generali" ITEM "9|Spese Generali"
ITEM "13|13. Subappalti in edilizia (Reverse charge)" ITEM "13|Subappalti in edilizia (Reverse charge)"
ITEM "50|50. Importazione di oro o argento (Reverse charge)" ITEM "50|Importazione di oro o argento (Reverse charge)"
ITEM "51|51. Rottami (Reverse charge)" ITEM "51|Rottami (Reverse charge)"
GROUP 2 GROUP 2
KEY 1 KEY 1
MESSAGE COPY,F_CODTAB MESSAGE COPY,F_CODTAB
FLAGS "G" FLAGS "G"
END END
STRING F_DESC 50 LIST F_DESC 50
BEGIN BEGIN
PROMPT 10 2 "Descrizione " PROMPT 10 2 "Descrizione "
ITEM "0|Acquisti o vendite in genere"
ITEM "1|Acquisti beni per rivendita"
ITEM "2|Acquisti beni ammortizzabili"
ITEM "3|Acquisti beni ammortizzabili con detr. 6%"
ITEM "4|Vendita beni strumentali art. 17"
ITEM "5|Beni per rivendita da non ventilare"
ITEM "8|Altri beni strumentali acquistati in leasing"
ITEM "9|Spese Generali"
ITEM "13|Subappalti in edilizia (Reverse charge)"
ITEM "50|Importazione di oro o argento (Reverse charge)"
ITEM "51|Rottami (Reverse charge)"
FLAGS "D" FLAGS "D"
END END