From b24dae768243c429864c4a707f9febaadfca855d Mon Sep 17 00:00:00 2001 From: guy Date: Tue, 21 Dec 2010 14:45:30 +0000 Subject: [PATCH] Patch level : 10.0 Files correlati : 770.exe Ricompilazione Demo : [ ] Commento : Recupera numero di registrazione in fase di modifica di una scheda collegata alla prima nota git-svn-id: svn://10.65.10.50/branches/R_10_00@21346 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- m770/770100.cpp | 67 ++++++++++++++++++++++++------------------------- m770/770102.cpp | 13 ++++++---- 2 files changed, 41 insertions(+), 39 deletions(-) diff --git a/m770/770100.cpp b/m770/770100.cpp index e70af1682..d1170c2ee 100755 --- a/m770/770100.cpp +++ b/m770/770100.cpp @@ -258,23 +258,23 @@ bool TSchedaPercipienti::codanagr_handler(TMask_field& f, KEY k) { TMask& m = f.mask(); const bool variazione = app().coll_variazione(); - TString16 codanagr(f.get()); + TString8 codanagr(f.get()); if (codanagr.not_empty()) { - if (!app().esiste_perc(f.mask(), codanagr)) + if (!app().esiste_perc(m, codanagr)) return f.warning_box("Percipiente non valido"); setta_nprog(m, variazione, codanagr); } // faccio a mano decodifica del percipiente // perchè l'automatismo non funziona long tmp_codanagr = atol(codanagr); - TString16 tmp_tipoa = f.mask().get(F_TIPOA); + TString4 tmp_tipoa = m.get(F_TIPOA); TString80 tmp_ragsoc = app().get_ragsoc(tmp_tipoa, tmp_codanagr); - f.mask().set(F_RAGSOCPER, tmp_ragsoc); - f.mask().set(F_RAGSOCCOM, tmp_ragsoc); + m.set(F_RAGSOCPER, tmp_ragsoc); + m.set(F_RAGSOCCOM, tmp_ragsoc); } - return TRUE; + return true; } void TSchedaPercipienti::calcola_riga_pag(TRectype & rec, @@ -597,35 +597,34 @@ bool TSchedaPercipienti::user_create() _rver = new TLocalisamfile(LF_RVER); _rpag = new TLocalisamfile(LF_RPAG); - _pags = new TNikArray_sheet(-1, -1, -4, -4, "Selezione Pagamenti", - "@1|Data@11|Compenso@16|Ritenuta@16|", + _pags = new TNikArray_sheet(-1, -1, -4, -4, TR("Selezione Pagamenti"), + HR("@1|Data@11|Compenso@16|Ritenuta@16|"), 0,NULL_WIN,5); set_search_field(F_CODANAGRPERC); -// simulo una chiamata da contabilità -// (lo lascio per eventuali prove) -// real totdocla = 1000000; -// real spesela = ZERO; -// real compensola = 1000000; -// real impostela = ZERO; -// real ritenutela = ZERO; -// TToken_string s(80); -// s.add(pagamento); -// s.add("M"); -// s.add("F"); -// s.add(30010); -// s.add(1); -// s.add("1"); -// s.add("01-01-1996"); -// s.add(totdocla.string()); -// s.add(spesela.string()); -// s.add(compensola.string()); -// s.add(impostela.string()); -// s.add(ritenutela.string()); -// const char* name = "770 -0"; -// TMessage mla(name, "LINK770", s); -// mla.send(); +// simulo una chiamata da contabilità (lo lascio per eventuali prove) +/* real totdocla = 1000000; + real spesela = ZERO; + real compensola = 1000000; + real impostela = ZERO; + real ritenutela = ZERO; + TToken_string s(80); + s.add(pagamento); + s.add("M"); + s.add("G"); + s.add(805); + s.add(15633); + s.add("7"); + s.add("04-01-2010"); + s.add(totdocla.string()); + s.add(spesela.string()); + s.add(compensola.string()); + s.add(impostela.string()); + s.add(ritenutela.string()); + const char* name = "770 -0"; + TMessage mla(name, "LINK770", s); + mla.send(); */ // Collegamento da contabilita' TMailbox m; @@ -641,7 +640,7 @@ bool TSchedaPercipienti::user_create() const long ditta_cg = get_firm(); if (!exist_dichiar_770(ditta_cg)) - if (yesno_box("Creo la dichiarazione per la ditta %ld", ditta_cg)) + if (yesno_box(FR("Creare la dichiarazione per la ditta %ld"), ditta_cg)) if (!enter_dichiar_770(ditta_cg)) { NFCHECK("Creazione dichiarazione fallita!"); @@ -651,7 +650,7 @@ bool TSchedaPercipienti::user_create() load_mask(0); - return TRUE; + return true; } bool TSchedaPercipienti::user_destroy() @@ -677,7 +676,7 @@ void TSchedaPercipienti::compila_testata(TMask& m) m.set(F_IVA, _coll._imposte.string()); m.set(F_SPESE, _coll._spese.string()); m.set(F_COMPENS, _coll._compenso.string()); - m.set(F_NUMREG, _coll._numreg); + m.set(F_NUMREG, _coll._numreg); switch (tipo_coll()) { diff --git a/m770/770102.cpp b/m770/770102.cpp index d2d54b3de..766004ae8 100755 --- a/m770/770102.cpp +++ b/m770/770102.cpp @@ -12,22 +12,25 @@ void TSchedaPercipienti::init_mask(TMask& m, bool inserimento) { if (inserimento) compila_testata(m); + else + { + // Recupera solo il numero di registrazione lasciando stare il resto + if (coll_numreg() > 0 && m.field(F_NUMREG).empty()) + m.set(F_NUMREG, coll_numreg()); + } switch (tipo_coll()) { case pagamento: case occasionale: // Compilo riga di pagamento SOLO SE NON ce ne sono gia'.. - if ( (tipo_coll() == pagamento && _rel->pag_items() == 0) - || - tipo_coll() == occasionale ) + if ( (tipo_coll() == pagamento && _rel->pag_items() == 0) || tipo_coll() == occasionale ) { const real totrit(m.get(F_TOTRIT)); const real totdoc(m.get(F_TOTDOC)); const real compenso(m.get(F_COMPENS)); const real spese(m.get(F_SPESE)); - if ((tipo_coll() == pagamento && (_coll._compenso + totrit == totdoc) ) - || + if ((tipo_coll() == pagamento && (_coll._compenso + totrit == totdoc) ) || (tipo_coll() == occasionale)) { TSheet_field& pags = pag_sheet_enabled(m);