From b10adf3a968de078496bc755f38479eb315c5703 Mon Sep 17 00:00:00 2001 From: bonazzi Date: Sun, 29 Oct 2017 09:05:28 +0000 Subject: [PATCH] Patch level : 12.0 462 Files correlati : cg0500a.msk cg0.exe cg4.exe MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ora é possibile creare una causale anche senza aprire l'ultimo esercizio iva In gennaio se attivavo la gestione manuale del credito utilizzato in IVA la liquidazione lo azzerava. git-svn-id: svn://10.65.10.50/branches/R_10_00@24156 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- src/cg/cg0500.cpp | 10 ++++++++-- src/cg/cg0500a.uml | 2 +- src/cg/cg4301.cpp | 17 +++++++++++++---- 3 files changed, 22 insertions(+), 7 deletions(-) diff --git a/src/cg/cg0500.cpp b/src/cg/cg0500.cpp index 37b15b65f..ba1baa09d 100755 --- a/src/cg/cg0500.cpp +++ b/src/cg/cg0500.cpp @@ -363,9 +363,15 @@ bool TCaus_app::tipodoc_hndl (TMask_field& f, KEY k) if (codreg.full()) { TRegistro registro(codreg, app().anno_iva()); + if (registro.name().empty()) - return f.error_box(FR("Non esiste il registro %s per l'anno %d"), - (const char*)codreg, app().anno_iva()); + { + TRegistro registro_prec(codreg, app().anno_iva() - 1); + + if (registro_prec.name().empty()) + return f.error_box(FR("Non esiste il registro %s per l'anno %d"), + (const char*)codreg, app().anno_iva()); + } } app().mostra_campi(); diff --git a/src/cg/cg0500a.uml b/src/cg/cg0500a.uml index 9f8196d2f..89a922b78 100755 --- a/src/cg/cg0500a.uml +++ b/src/cg/cg0500a.uml @@ -104,7 +104,7 @@ BEGIN OUTPUT F_CORRISP B0 OUTPUT F_DES_REG S0 WARNING "Registro assente o non compatibile col tipo documento" - CHECKTYPE REQUIRED + CHECKTYPE SEARCH FLAGS "UZ" END diff --git a/src/cg/cg4301.cpp b/src/cg/cg4301.cpp index fd62043ae..4a6c09f87 100755 --- a/src/cg/cg4301.cpp +++ b/src/cg/cg4301.cpp @@ -2211,9 +2211,17 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array & } // __end of _agricolo if (tipodet == 1) // acquisti indeducibili su ricavi esenti art. 10 - { - acq_ies += imponibile; - acq_ies_iva += imposta; + { + if (is_reverse_charge(_mov->curr())) + { + acquisti += imponibile; + acquisti_iva += imposta; + } + else + { + acq_ies += imponibile; + acq_ies_iva += imposta; + } } if (tipodet == 3) // passaggi interni (solo per ventilaz) @@ -3989,7 +3997,7 @@ void TLiquidazione_app::write_liq(int month, const char* codatts) { real debiti = res_debt; round_imposta(debiti); real crediti = res_cred; round_imposta(crediti); - const real risul = debiti - crediti; + real risul = debiti - crediti; TRectype lim = get_lim(month+deltam); const real cred_util_F24 = lim.get_real("R16"); @@ -3997,6 +4005,7 @@ void TLiquidazione_app::write_liq(int month, const char* codatts) ((_freqviva == "T") && (month == 3))) { risultato += cred_prec; + risul += cred_prec; cred_prec = ZERO; } credito_utilizzabile = credito_utilizzabile_inizio_anno;