From 3ea075ee98ae7b2cc947305c011efbedcde1c396 Mon Sep 17 00:00:00 2001 From: Simoe Date: Fri, 18 Feb 2022 17:11:51 +0100 Subject: [PATCH] Patch level : 12.0 nopatch Files correlati : 770100.cpp, 770102.h, 777200.cpp Commento: Modifiche Integrazioni per reinvio modifica provvisorio --- src/m770/770100.cpp | 38 ++++++++++++++++++++++++++++++++++++++ src/m770/770102.h | 1 + src/m770/777200.cpp | 11 +++++++---- 3 files changed, 46 insertions(+), 4 deletions(-) diff --git a/src/m770/770100.cpp b/src/m770/770100.cpp index d36d7dc67..47770ed16 100755 --- a/src/m770/770100.cpp +++ b/src/m770/770100.cpp @@ -174,6 +174,7 @@ TMask* TSchedaPercipienti::load_mask(int n) m->set_handler(F_SPESE, check_spese); m->set_handler(F_COMPENS, check_compensi); m->set_handler(F_MESECOMP, check_competenza); + m->set_handler(F_CODQUA, enable_rimborsi); //////////////////////////////////////////////////////////////////////// // Handler versamenti @@ -1164,6 +1165,43 @@ bool TSchedaPercipienti::check_competenza(TMask_field& f, KEY k) return TRUE; } +bool TSchedaPercipienti::enable_rimborsi(TMask_field& f, KEY k) +{ + if (f.initial_check(k) || f.running_check(k)) + { + const TString4 caus = f.get(); + TSheet_field& sheet_c = f.mask().sfield(F_PAGAMENTI_C); + TSheet_field& sheet_d = f.mask().sfield(F_PAGAMENTI_D); + const bool on = (caus == "X" || caus == "Y"); + + sheet_c.enable_column(112, on); + sheet_c.enable_column(113, on); + sheet_c.enable_column(114, on); + sheet_d.enable_column(109, on); + sheet_d.enable_column(110, on); + sheet_d.enable_column(111, on); + + if (!on) + { + const int item_c = sheet_c.items(); + for (int i = 0; i < item_c; i++) { + sheet_c.set_row_cell(112, "", i); + sheet_c.set_row_cell(113, "", i); + sheet_c.set_row_cell(114, "", i); + } + + const int item_d = sheet_d.items(); + for (int i = 0; i < item_d; i++) { + sheet_d.set_row_cell(109, "", i); + sheet_d.set_row_cell(110, "", i); + sheet_d.set_row_cell(111, "", i); + } + } + + } + return TRUE; +} + // // Calcola: // diff --git a/src/m770/770102.h b/src/m770/770102.h index 31e9bb666..5d519bfe2 100755 --- a/src/m770/770102.h +++ b/src/m770/770102.h @@ -84,6 +84,7 @@ class TSchedaPercipienti : public TRelation_application static bool check_compensi(TMask_field& f, KEY k); static bool check_spese(TMask_field& f, KEY k); static bool check_competenza(TMask_field& f, KEY k); + static bool enable_rimborsi(TMask_field& f, KEY k); static bool forced_handler(TMask& m, KEY key); // Handler del versamento diff --git a/src/m770/777200.cpp b/src/m770/777200.cpp index 6568a9aa8..a3faaa02d 100755 --- a/src/m770/777200.cpp +++ b/src/m770/777200.cpp @@ -546,10 +546,10 @@ bool TTrasferimentoCU::append_record_b() const TRectype& rec_anagr = cache().get(LF_ANAG, TString(rec_nditte.get("TIPOA")) << "|" << rec_nditte.get("CODANAGR")); const int evecc = rec_anagr.get_int("EVECC"); - if (evecc == 5) // EDIT 2020: Non piu' valori 1, 5 ma 1, 3 - warning_box("Attenzione trovata persona con valore\nevento eccezionale non piu' valido: 5.\nValori accettati 1 o 3."); + if (evecc == 3) // EDIT 2020: Non piu' valori 1, 5 ma 1, 3 // EDIT 2022 non pił 1 5 ma 1, 99 + warning_box("Attenzione trovata persona con valore\nevento eccezionale non piu' valido: 3.\nValori accettati 1 o 99."); - if (evecc == 1 || evecc == 3) + if (evecc == 1 || evecc == 99) rec.set(17, evecc); const TAnagrafica rapp(LF_ANAG, 'F', rec_nditte.get_long(NDT_RAPPR)); @@ -560,7 +560,7 @@ bool TTrasferimentoCU::append_record_b() rec.set(19, rec_nditte.get(NDT_CARRAPP)); rec.set(20, rapp.cognome().left(24)); rec.set(21, rapp.nome()); - rec.set(22, _codfis_dic); + rec.set(22, _codfis_dic); } else { @@ -829,6 +829,9 @@ bool TTrasferimentoCU::append_record_h(const TRectype& qla, int modulo, TLog_rep rec.np_put("AU001018", qla.get_real(QUD_IMPANNIPRE)); // imponibile anni precedenti rec.np_put("AU001019", qla.get_real(QUD_RITANNIPRE)); // ritenute anni precedenti rec.np_put("AU001020", qla.get_real(QUD_SPESERIMB)); // spese rimborsate + if (qla.get_real(QUD_RITRIMB) != ZERO) { + int i = 0; + } rec.np_put("AU001021", qla.get_real(QUD_RITRIMB)); // ritenute rimborsate rec.np_put("AU001022", qla.get_real(QUD_SRNETRIT)); // somme restituite al netto della ritenuta subita