From d5557a2b3a8c98434827dd896ffdb200174b22aa Mon Sep 17 00:00:00 2001 From: alex Date: Sun, 17 Jan 2010 22:48:20 +0000 Subject: [PATCH] Patch level : 10.0 582 Files correlati : tc0.exe Ricompilazione Demo : [ ] Commento : MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit COrretta indetraibilità git-svn-id: svn://10.65.10.50/trunk@19933 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- tc/tc0700.cpp | 16 +++++++++++----- tc/tc0701.cpp | 11 +++++++---- tc/tctsi11.uml | 36 ++++++++++++++++++++++++------------ 3 files changed, 42 insertions(+), 21 deletions(-) diff --git a/tc/tc0700.cpp b/tc/tc0700.cpp index 1bf4472e5..f9bade834 100755 --- a/tc/tc0700.cpp +++ b/tc/tc0700.cpp @@ -265,9 +265,11 @@ bool TTS_campo_sender::find_regolarizzazione(TRecordset& mov) if (test_swap(mov)) totdoc = -totdoc; - const TRecordset& cli = clirecset(mov.get(MOV_TIPO).as_string()[0], mov.get(MOV_CODCF).as_int()); - const TString16 paiv = cli.get(CLI_PAIV).as_string(); - const TString16 cf = cli.get(CLI_COFI).as_string(); + TToken_string key(mov.get(MOV_TIPO).as_string()); + key.add(mov.get(MOV_CODCF).as_int()); + 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; const TEsercizio & e = esc.esercizio(esc.date2esc(mov.get(MOV_DATAREG).as_date())); 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 &= (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) break; } diff --git a/tc/tc0701.cpp b/tc/tc0701.cpp index 28db73477..3491d21f5 100755 --- a/tc/tc0701.cpp +++ b/tc/tc0701.cpp @@ -860,6 +860,7 @@ void TTS_sender::add_conti_ricavo_costo(const TRecordset& mov) TRecordset & riva = rivarecset(mov); TString16 codice = scod2ricl("TSREG", mov.get(MOV_REG)); const bool corrispettivo = codice[0] == 'C'; + const bool acquisto = mov.get(MOV_TIPO).as_string()[0] == 'F'; int i = 0, j = 0; real fattore = UNO; TString16 key; @@ -889,9 +890,10 @@ void TTS_sender::add_conti_ricavo_costo(const TRecordset& mov) else { //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; } 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 codiva11 = 0L; //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 bool acqvent = _ventilazione && (imposta != ZERO) && tipocr == "1"; - if (indetraibile) + if (acquisto && indetraibile) codiva += TSINDETR; // maialata if (acquisto && acqvent) codiva += TSACQDESTRIV; // maialata 2 diff --git a/tc/tctsi11.uml b/tc/tctsi11.uml index e4c1c1874..f6e21ab7b 100755 --- a/tc/tctsi11.uml +++ b/tc/tctsi11.uml @@ -32,6 +32,7 @@ BEGIN DISPLAY "Descrizione@50" &T11->S0 OUTPUT F_CODTAB FIRST OUTPUT F_CODTAB1 FIRST + OUTPUT F_DESC FIRST CHECKTYPE REQUIRED FIELD FIRST GROUP 1 @@ -47,26 +48,37 @@ BEGIN OUTPUT F_DESC CHECKTYPE NORMAL FIELD FIRST - ITEM "0|0. Acquisti o vendite in genere" - ITEM "1|1. Acquisti beni per rivendita" - ITEM "2|2. Acquisti beni ammortizzabili" - ITEM "3|3. Acquisti beni ammortizzabili con detr. 6%" - ITEM "4|4. Vendita beni strumentali art. 17" - ITEM "5|5. Beni per rivendita da non ventilare" - ITEM "8|8. Altri beni strumentali acquistati in leasing" - ITEM "9|9. Spese Generali" - ITEM "13|13. Subappalti in edilizia (Reverse charge)" - ITEM "50|50. Importazione di oro o argento (Reverse charge)" - ITEM "51|51. Rottami (Reverse charge)" + 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)" GROUP 2 KEY 1 MESSAGE COPY,F_CODTAB FLAGS "G" END -STRING F_DESC 50 +LIST F_DESC 50 BEGIN 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" END