From c1f7bec192e4279bd1a18ea7e4ecf51de522ad7e Mon Sep 17 00:00:00 2001 From: angelo Date: Thu, 23 Oct 1997 09:21:54 +0000 Subject: [PATCH] Aggiunto flag di settaggio di rate provvigionali generate da documento in calc_provv() git-svn-id: svn://10.65.10.50/trunk@5424 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ve/velib.h | 2 +- ve/velib03.cpp | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/ve/velib.h b/ve/velib.h index a1800d44f..3604f0cce 100755 --- a/ve/velib.h +++ b/ve/velib.h @@ -545,7 +545,7 @@ public: int rewrite() const { return write(TRUE); } int remove() const { TLocalisamfile f(LF_DOC); return remove(f);} - TProvvigioni_agente& calc_provvigioni(); + TProvvigioni_agente& calc_provvigioni(const bool generata = TRUE); int write_provvigioni() { return calc_provvigioni().write();} char tipo_numerazione() const { return get_char("PROVV"); } diff --git a/ve/velib03.cpp b/ve/velib03.cpp index 2594831de..6470e79f0 100755 --- a/ve/velib03.cpp +++ b/ve/velib03.cpp @@ -1004,7 +1004,7 @@ int TDocumento::remove(TBaseisamfile& f) const return TMultiple_rectype::remove(f); } -TProvvigioni_agente& TDocumento::calc_provvigioni() +TProvvigioni_agente& TDocumento::calc_provvigioni(const bool generata) { CHECK (_provv_agente, "Bad TProvvigione_agente object"); @@ -1053,8 +1053,8 @@ TProvvigioni_agente& TDocumento::calc_provvigioni() TToken_string t; t.add(anno); t.add(codnum);t.add(ndoc); t.add(datadoc.string()); t.add(totale_doc().string()); - t.add(tot_provv.string());t.add(""/*Importo netto base di calcolo provvigioni (metodo da implementare)*/); - t.add(codcf());t.add(""/* Tipo pagamento da prendere da %CPG->S4 oppure implementare un TPagamento()*/); + t.add(tot_provv.string());t.add(totale_netto().string()); + t.add(codcf()); t.add(TDocumento::valuta());t.add(change.string()); t.add(get(DOC_DATACAMBIO)); rd.set(t); @@ -1069,8 +1069,11 @@ TProvvigioni_agente& TDocumento::calc_provvigioni() TRata& rt = rd.row(i, isnew); rt.set_rata(i); rt.set_datascad(i == 0 ? datadoc : pag1.data_rata(i-1)); + rt.set_tipopag(i == 0 ? 1 : pag1.tipo_rata(i-1)); rt.set_imprata(i == 0 ? ZERO : pag1.importo_rata(i-1,valuta ? TRUE : FALSE)); rt.set_impprovv(i == 0 ? provv_fat : pag2->importo_rata(i-1,valuta ? TRUE : FALSE)); + if (generata) + rt.set_generata(); } // Rimuove eventuali righe in eccesso for (i = nrate; i < _provv_agente->items(); i++)