From b41f83ac9dcd82fbf7c7922abc396530fd495f58 Mon Sep 17 00:00:00 2001 From: alex Date: Mon, 19 Feb 1996 13:30:15 +0000 Subject: [PATCH] Corretto campo totale documento Aggiunto flag stampa tutti i movimenti alla stampa solleciti e aggiornato programma programma git-svn-id: svn://10.65.10.50/trunk@2610 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- sc/sc2100.cpp | 12 +++++- sc/sc2400.cpp | 5 ++- sc/sc2400a.h | 1 + sc/sc2400a.uml | 115 ++++++++++++++++++++++++++----------------------- sc/sc2401.cpp | 18 +++++--- sc/sc2401.h | 8 ++-- sc/sc2402.cpp | 4 +- sc/sc2402.h | 2 +- 8 files changed, 92 insertions(+), 73 deletions(-) diff --git a/sc/sc2100.cpp b/sc/sc2100.cpp index ecd1f5fc1..ea3af9dc0 100755 --- a/sc/sc2100.cpp +++ b/sc/sc2100.cpp @@ -163,10 +163,15 @@ TEC_row::TEC_row(const TRiga_partite& row, const TDate& data, const TImporto& im _num_prot = row.get_long(PART_PROTIVA); _num_reg = row.get_long(PART_NREG); _importo = imp; _importo.normalize(); - _totale = row.get_real(PART_IMPTOTDOC); - _descrizione = row.get(PART_DESCR); + _descrizione = row.get(PART_DESCR); _valuta.get(row); + + const bool valuta = form().in_valuta() && _valuta.in_valuta(); + const char* const field = valuta ? PART_IMPTOTVAL : PART_IMPTOTDOC; + + _totale = row.get_real(field); + } TEC_row::TEC_row(const char* desc, const TImporto& imp, const TValuta& val) @@ -267,6 +272,9 @@ void TEC_row::print_on(TPrint_section& body) TForm_item& datadoc = body.find_field(PEC_DATADOC); datadoc.set(_data_doc.string()); + TForm_item& totdoc = body.find_field(PEC_TOTDOC); + totdoc.set(_totale.string()); + TForm_item& numdoc = body.find_field(PEC_NUMDOC); numdoc.set(_num_doc); diff --git a/sc/sc2400.cpp b/sc/sc2400.cpp index 7b2891902..edc43de77 100755 --- a/sc/sc2400.cpp +++ b/sc/sc2400.cpp @@ -223,8 +223,9 @@ bool TStampaSol_application::menu(MENU_TAG) { TSol_mask &m= mask(); while (m.run() != K_QUIT) - { - _form= new TSol_form(m, _gesval, F_DATALIMSOL); + { + const bool neverending_game = m.get_bool(F_ALLMOV); + _form= new TSol_form(m, _gesval, neverending_game ? 0: F_DATALIMSOL, F_DATALIMSOL); print_selected(); delete _form; _form= NULL; diff --git a/sc/sc2400a.h b/sc/sc2400a.h index 436fd6e38..6fa6365e6 100755 --- a/sc/sc2400a.h +++ b/sc/sc2400a.h @@ -9,5 +9,6 @@ #define F_STAMPESP 107 #define F_IMPORMIN 108 #define F_RIFIMPMIN 109 +#define F_ALLMOV 110 #endif diff --git a/sc/sc2400a.uml b/sc/sc2400a.uml index 294f7c524..a3c73a7ef 100755 --- a/sc/sc2400a.uml +++ b/sc/sc2400a.uml @@ -1,50 +1,50 @@ #include "scselmsk.h" #include "sc2400a.h" -PAGE "Stampa solleciti" -1 -1 68 17 +PAGE "Stampa solleciti" -1 -1 68 18 NUMBER F_CODDITTA 5 -BEGIN +BEGIN PROMPT 1 1 "Cod. " - FLAGS "DFR" - USE LF_NDITTE - INPUT CODDITTA F_CODDITTA - OUTPUT F_RAGSOC RAGSOC - CHECKTYPE REQUIRED + FLAGS "DFR" + USE LF_NDITTE + INPUT CODDITTA F_CODDITTA + OUTPUT F_RAGSOC RAGSOC + CHECKTYPE REQUIRED END STRING F_RAGSOC 50 46 -BEGIN +BEGIN PROMPT 15 1 "R.S. " FLAGS "D" END -GROUPBOX DLG_NULL 68 7 +GROUPBOX DLG_NULL 68 8 BEGIN PROMPT 0 2 "" END NUMBER F_CODPROF 4 -BEGIN - PROMPT 1 3 "Profilo " +BEGIN + PROMPT 1 3 "Profilo " FLAGS "Z" USE LF_FORM INPUT TIPOPROF BASE_EC_PROFILE - INPUT CODPROF[1,4] F_CODPROF + INPUT CODPROF[1,4] F_CODPROF INPUT CODPROF[5,5] F_LINPROF DISPLAY "Codice" CODPROF DISPLAY "Descrizione@50" DESC OUTPUT F_CODPROF CODPROF[1,4] OUTPUT F_LINPROF CODPROF[5,5] - OUTPUT F_DESPROF DESC + OUTPUT F_DESPROF DESC CHECKTYPE REQUIRED FIELD ANTICLEAR WARNING "Codice profilo o lingua errato" END STRING F_LINPROF 1 -BEGIN - PROMPT 18 3 "" +BEGIN + PROMPT 18 3 "" USE %LNG INPUT CODTAB F_LINPROF DISPLAY "Codice" CODTAB @@ -54,13 +54,13 @@ BEGIN END STRING F_DESPROF 50 40 -BEGIN +BEGIN PROMPT 25 3 "" FLAGS "D" END DATE F_DATALIMSOL -BEGIN +BEGIN PROMPT 1 4 "Data limite sollecito " FLAGS "A" VALIDATE DATE_CMP_FUNC <= F_DATASEND @@ -74,108 +74,113 @@ BEGIN END RADIOBUTTON F_RIFIMPMIN 10 -BEGIN - PROMPT 45 4 "" +BEGIN + PROMPT 45 4 "" ITEM "P|Partita" - ITEM "C|Cliente" + ITEM "C|Cliente" END BOOLEAN F_STAMPESP -BEGIN - PROMPT 1 6 "Stampa esposizione" +BEGIN + PROMPT 1 6 "Stampa esposizione" +END + +BOOLEAN F_ALLMOV +BEGIN + PROMPT 1 7 "Stampa tutti i movimenti" END STRING F_LUOGOSEND 50 32 -BEGIN - PROMPT 1 7 "Luogo d'invio " +BEGIN + PROMPT 1 8 "Luogo d'invio " END DATE F_DATASEND -BEGIN - PROMPT 50 7 "Data " - FLAGS "A" +BEGIN + PROMPT 50 8 "Data " + FLAGS "A" CHECKTYPE REQUIRED END RADIOBUTTON SC_SORTCF 40 -BEGIN - PROMPT 1 9 "Ordinamento" +BEGIN + PROMPT 0 10 "Ordinamento" ITEM "1|Per codice" MESSAGE HIDE,2@|SHOW,1@ ITEM "2|Per ragione sociale" MESSAGE HIDE,1@|SHOW,2@ END BUTTON SC_SELECT 10 1 -BEGIN - PROMPT 50 10 "~Selezione" +BEGIN + PROMPT 50 11 "~Selezione" END BUTTON SC_RESET 10 1 -BEGIN - PROMPT 50 11 "~Azzera" +BEGIN + PROMPT 50 12 "~Azzera" END NUMBER SC_CFCODFR 5 -BEGIN - PROMPT 1 13 "Da codice " +BEGIN + PROMPT 1 14 "Da codice " GROUP 1 END BUTTON SC_CFBUTFR 2 1 -BEGIN - PROMPT 31 13 "" +BEGIN + PROMPT 31 14 "" GROUP 1 PICTURE 109 END NUMBER SC_CFCODTO 5 -BEGIN - PROMPT 36 13 "a codice " +BEGIN + PROMPT 36 14 "a codice " GROUP 1 END - + BUTTON SC_CFBUTTO 2 1 -BEGIN - PROMPT 51 13 "" +BEGIN + PROMPT 51 14 "" PICTURE 109 GROUP 1 END STRING SC_CFDESFR 50 30 -BEGIN - PROMPT 1 13 "Da ragione sociale " +BEGIN + PROMPT 1 14 "Da ragione sociale " GROUP 2 FLAGS "H" END BUTTON SC_CFDESBUTFR 2 1 -BEGIN - PROMPT 51 13 "" +BEGIN + PROMPT 51 14 "" PICTURE 109 GROUP 2 FLAGS "H" END STRING SC_CFDESTO 50 30 -BEGIN - PROMPT 2 14 "A ragione sociale " +BEGIN + PROMPT 2 15 "A ragione sociale " GROUP 2 FLAGS "H" END - + BUTTON SC_CFDESBUTTO 2 1 -BEGIN - PROMPT 51 14 "" +BEGIN + PROMPT 51 15 "" PICTURE 109 - GROUP 2 + GROUP 2 FLAGS "H" END NUMBER SC_NSEL 3 BEGIN - PROMPT 59 13 "N. " + PROMPT 59 14 "N. " FLAGS "D" -END - +END + BUTTON DLG_PRINT 10 2 BEGIN PROMPT -12 -1 "" diff --git a/sc/sc2401.cpp b/sc/sc2401.cpp index b2be0ee21..2c92f6e5f 100755 --- a/sc/sc2401.cpp +++ b/sc/sc2401.cpp @@ -69,9 +69,13 @@ TESSL_row::TESSL_row(const TRiga_partite& row, const TDate& data, const TImporto _num_prot = row.get_long(PART_PROTIVA); _num_reg = row.get_long(PART_NREG); _importo = imp; _importo.normalize(); - _totale = row.get_real(PART_IMPTOTDOC); - _valuta.get(row); + + const bool valuta = form().in_valuta() && _valuta.in_valuta(); + const char* const field = valuta ? PART_IMPTOTVAL : PART_IMPTOTDOC; + + _totale = row.get_real(field); + } TESSL_row::TESSL_row(const char* desc, const TImporto& imp, const TValuta& val) @@ -175,6 +179,9 @@ void TESSL_row::print_on(TPrint_section& body) TForm_item& datadoc = body.find_field(PEC_DATADOC); datadoc.set(_data_doc.string()); + TForm_item& totdoc = body.find_field(PEC_TOTDOC); + totdoc.set(_totale.string()); + TForm_item& numdoc = body.find_field(PEC_NUMDOC); numdoc.set(_num_doc); @@ -990,11 +997,8 @@ TESSL_form::TESSL_form(const TESSL_mask& m, bool gesval, short id_datalim, short TCursor_sheet& cs = m.cur_sheet(); _cursore = cs.cursor(); - _dlo = m.get(id_datalim); - if (id_datascad > 0) - _dls = m.get(id_datascad); - else - _dls = eotime; + _dlo = id_datalim > 0 ? TDate(m.get(id_datalim)) : eotime; + _dls = id_datascad > 0 ? TDate(m.get(id_datascad)) : eotime; if (id_giorni_rischio > 0) _giorni_rischio = m.get_int(id_giorni_rischio); diff --git a/sc/sc2401.h b/sc/sc2401.h index 6a1bde903..add6f50fb 100755 --- a/sc/sc2401.h +++ b/sc/sc2401.h @@ -1,6 +1,6 @@ -#ifndef __SC2403_H -#define __SC2403_H +#ifndef __SC2401_H +#define __SC2401_H #include #include @@ -167,7 +167,7 @@ public: void ultima_pagina(); virtual bool print_game(const TPartita& game); - TESSL_form(const TESSL_mask& m, bool gesval, short id_datalim, short id_datascad = 0, short id_giorni_rischio = 0); + TESSL_form(const TESSL_mask& m, bool gesval, short id_datalim = 0 , short id_datascad = 0, short id_giorni_rischio = 0); virtual ~TESSL_form(); }; @@ -201,4 +201,4 @@ public: virtual ~TESSL_array() {} }; -#endif // __SC2403_H +#endif // __SC2401_H diff --git a/sc/sc2402.cpp b/sc/sc2402.cpp index 0bd9212e8..0ac10ba8c 100755 --- a/sc/sc2402.cpp +++ b/sc/sc2402.cpp @@ -48,8 +48,8 @@ TSol_row::TSol_row(const char* desc, const TImporto& imp, const TValuta& val) // TSol_form: form speciale per solleciti /////////////////////////////////////////////////////////// -TSol_form::TSol_form(const TSol_mask& m, bool gesval, short id_datalim) - :TESSL_form(m, gesval, id_datalim) +TSol_form::TSol_form(const TSol_mask& m, bool gesval, short id_datalim, short id_datascad) + :TESSL_form(m, gesval, id_datalim, id_datascad) { _sel_tot_saldo = m.get_sel_tot_saldo(); diff --git a/sc/sc2402.h b/sc/sc2402.h index 60db7570e..416da814c 100755 --- a/sc/sc2402.h +++ b/sc/sc2402.h @@ -61,7 +61,7 @@ protected: public: bool get_sel_tot_saldo() const { return _sel_tot_saldo;} const real & get_sel_importo() const { return _sel_importo; } - TSol_form(const TSol_mask& m, bool gesval, short id_datalim); + TSol_form(const TSol_mask& m, bool gesval, short id_datalim, short id_datascad); virtual ~TSol_form() {} };