diff --git a/sc/sc2100.cpp b/sc/sc2100.cpp index b4855632f..3607fe6a7 100755 --- a/sc/sc2100.cpp +++ b/sc/sc2100.cpp @@ -555,7 +555,7 @@ void TEC_array::add_row(const TRiga_partite& row) { const TDate data_pag(row.get(PART_DATAPAG)); const TImporto imp(row.importo(in_valuta, 0x1)); // Importo pulito senza nient'altro - TEC_row& riga = new_row(row, data_pag, imp, 1); + TEC_row& riga = new_row(row, data_pag, imp, 10); const int tipo_pag = row.get_int(PART_TIPOPAG); const tipo_movimento tipo_mov = row.tipo(); @@ -566,8 +566,12 @@ void TEC_array::add_row(const TRiga_partite& row) { const TDate& dls = form().data_limite_scaduto(); const int gr = form().giorni_rischio(); + const TDate& dir = form().data_inizio_rischio(); bool sbf = FALSE; + TImporto esposto(row.esposto(in_valuta, dls, dir, sbf)); + bool esp = !esposto.is_zero(); +/* if (gr > 0) { const TDate& dir = form().data_inizio_rischio(); @@ -579,13 +583,15 @@ void TEC_array::add_row(const TRiga_partite& row) if (!esp) { esp = gr > 0 ? data_pag >= dls : data_pag > dls; // Esposto normale - } + } +*/ if (esp) { - TImporto esposto(imp); + TImporto esposto(esp); const char sezione = row.get_char(PART_TIPOCF) == 'C' ? 'A' : 'D'; esposto.normalize(sezione); + riga.salvo_buon_fine(sbf); // Esposto salvo buon fine riga.esposto(esposto.valore()); } } @@ -593,7 +599,7 @@ void TEC_array::add_row(const TRiga_partite& row) const TImporto abbuoni(row.importo(in_valuta, 0x2)); if (!abbuoni.is_zero()) { - TEC_row& rec = new_row(row, data_pag, abbuoni, 2); + TEC_row& rec = new_row(row, data_pag, abbuoni, 20); rec.descrizione(form().describe(PEC_ABBUONI)); if (in_valuta) { @@ -606,7 +612,7 @@ void TEC_array::add_row(const TRiga_partite& row) TImporto diffcam(row.importo(FALSE, 0x4)); if (!diffcam.is_zero() && !in_valuta) { - TEC_row& rec = new_row(row, data_pag, TImporto('D', ZERO), 3); + TEC_row& rec = new_row(row, data_pag, TImporto('D', ZERO), 30); rec.descrizione(form().describe(PEC_DIFFCAM)); rec.importo(diffcam); } @@ -614,7 +620,7 @@ void TEC_array::add_row(const TRiga_partite& row) TImporto ritenute(row.importo(FALSE, 0x8)); if (!ritenute.is_zero()) { - TEC_row& rec = new_row(row, data_pag, TImporto('D', ZERO), 4); + TEC_row& rec = new_row(row, data_pag, TImporto('D', ZERO), 40); rec.descrizione(form().describe(PEC_RITENUTE)); if (in_valuta) { diff --git a/sc/sc2100a.uml b/sc/sc2100a.uml index f23db5958..1035ec574 100755 --- a/sc/sc2100a.uml +++ b/sc/sc2100a.uml @@ -1,7 +1,7 @@ #include "scselmsk.h" #include "sc2100a.h" -PAGE "Stampa estratti conto" -1 -1 64 18 +PAGE "Stampa estratti conto" -1 -1 68 18 NUMBER F_CODDITTA 5 BEGIN @@ -38,7 +38,6 @@ BEGIN OUTPUT F_CODPROF CODPROF[1,4] OUTPUT F_LINPROF CODPROF[5,5] OUTPUT F_DESPROF DESC -// CHECKTYPE REQUIRED FIELD ANTICLEAR WARNING "Codice profilo o lingua errato" END @@ -52,7 +51,6 @@ BEGIN DISPLAY "Codice" CODTAB DISPLAY "Descrizione@50" S0 OUTPUT F_LINPROF CODTAB -// COPY ALL F_CODPROF CHECKTYPE NORMAL WARNING "Codice lingua errato" END @@ -68,13 +66,11 @@ DATE F_DATALIMOP BEGIN PROMPT 1 4 "Data limite operazione " FLAGS "A" -// CHECKTYPE REQUIRED END DATE F_DATALIMSC BEGIN PROMPT 1 5 "Data limite scaduto " -// FLAGS "A" CHECKTYPE REQUIRED END @@ -136,57 +132,29 @@ END NUMBER SC_CFCODFR 5 BEGIN PROMPT 1 14 "Da codice " - GROUP 3 -END - -BUTTON SC_CFBUTFR 2 1 -BEGIN - PROMPT 31 14 "" - PICTURE 109 - GROUP 3 + GROUP 3 + FLAGS "B" END NUMBER SC_CFCODTO 5 BEGIN PROMPT 36 14 "a codice " - GROUP 3 -END - -BUTTON SC_CFBUTTO 2 1 -BEGIN - PROMPT 51 14 "" - PICTURE 109 - GROUP 3 + GROUP 3 + FLAGS "B" END STRING SC_CFDESFR 50 30 BEGIN PROMPT 1 14 "Da ragione sociale " GROUP 2 - FLAGS "H" -END - -BUTTON SC_CFDESBUTFR 2 1 -BEGIN - PROMPT 51 14 "" - PICTURE 109 - GROUP 2 - FLAGS "H" + FLAGS "HB" END STRING SC_CFDESTO 50 30 BEGIN PROMPT 1 15 "A ragione sociale " GROUP 2 - FLAGS "H" -END - -BUTTON SC_CFDESBUTTO 2 1 -BEGIN - PROMPT 51 15 "" - PICTURE 109 - GROUP 2 - FLAGS "H" + FLAGS "HB" END NUMBER SC_NSEL 3 diff --git a/sc/sc2400a.uml b/sc/sc2400a.uml index e3dffd565..b50a01eef 100755 --- a/sc/sc2400a.uml +++ b/sc/sc2400a.uml @@ -38,7 +38,6 @@ BEGIN OUTPUT F_CODPROF CODPROF[1,4] OUTPUT F_LINPROF CODPROF[5,5] OUTPUT F_DESPROF DESC -// CHECKTYPE REQUIRED FIELD ANTICLEAR WARNING "Codice profilo o lingua errato" END @@ -81,7 +80,7 @@ BEGIN PROMPT 1 6 "Importo minimo " END -RADIOBUTTON F_RIFIMPMIN 10 +RADIOBUTTON F_RIFIMPMIN 12 BEGIN PROMPT 45 5 "" ITEM "P|Partita" @@ -105,7 +104,7 @@ BEGIN CHECKTYPE REQUIRED END -RADIOBUTTON SC_SORTCF 40 +RADIOBUTTON SC_SORTCF 25 BEGIN PROMPT 0 10 "Ordinamento" ITEM "1|Per codice" MESSAGE HIDE,2@|SHOW,1@ @@ -125,26 +124,14 @@ END NUMBER SC_CFCODFR 5 BEGIN PROMPT 1 14 "Da codice " + FLAGS "B" GROUP 1 END -BUTTON SC_CFBUTFR 2 1 -BEGIN - PROMPT 31 14 "" - GROUP 1 - PICTURE 109 -END - NUMBER SC_CFCODTO 5 BEGIN PROMPT 36 14 "a codice " - GROUP 1 -END - -BUTTON SC_CFBUTTO 2 1 -BEGIN - PROMPT 51 14 "" - PICTURE 109 + FLAGS "B" GROUP 1 END @@ -152,30 +139,14 @@ STRING SC_CFDESFR 50 30 BEGIN PROMPT 1 14 "Da ragione sociale " GROUP 2 - FLAGS "H" -END - -BUTTON SC_CFDESBUTFR 2 1 -BEGIN - PROMPT 51 14 "" - PICTURE 109 - GROUP 2 - FLAGS "H" + FLAGS "HB" END STRING SC_CFDESTO 50 30 BEGIN PROMPT 2 15 "A ragione sociale " GROUP 2 - FLAGS "H" -END - -BUTTON SC_CFDESBUTTO 2 1 -BEGIN - PROMPT 51 15 "" - PICTURE 109 - GROUP 2 - FLAGS "H" + FLAGS "HB" END NUMBER SC_NSEL 3 diff --git a/sc/sc2401.cpp b/sc/sc2401.cpp index 978786eaf..d21d6ebcb 100755 --- a/sc/sc2401.cpp +++ b/sc/sc2401.cpp @@ -131,7 +131,7 @@ TESSL_row::TESSL_row(const TRiga_partite& row, const TDate& data, const TImporto TESSL_row::TESSL_row(const char* desc, const TImporto& imp, const TValuta& val) : _riga(9999), _rata(9999), _num_prot(0), _num_reg(0), _salvo_buon_fine(FALSE) { - _descrizione = DA_VUOTARE; + _descrizione = desc; _importo = imp; _importo.normalize(); _valuta = val; } @@ -145,7 +145,7 @@ int TESSL_row::compare(const TSortable& s) const if (_data == r._data) { c = r._riga - _riga; - if (c == 0) c = r._rata - _rata; + if (c == 0) c = _rata - r._rata; } else c = _data < r._data ? -1 : +1; @@ -486,7 +486,7 @@ void TESSL_array::add_row(const TRiga_partite& row) { const TDate data_pag(row.get(PART_DATAPAG)); const TImporto imp(row.importo(in_valuta, 0x1)); // Importo pulito senza nient'altro - TESSL_row& riga = new_row(row, data_pag, imp, 1); + TESSL_row& riga = new_row(row, data_pag, imp, 10); if (in_valuta) { TImporto i(row.importo(FALSE, 0x1)); @@ -503,8 +503,12 @@ void TESSL_array::add_row(const TRiga_partite& row) { const TDate& dls = form().data_limite_scaduto(); const int gr = form().giorni_rischio(); - + const TDate& dir = form().data_inizio_rischio(); + bool sbf = FALSE; + TImporto esposto(row.esposto(in_valuta, dls, dir, sbf)); + bool esp = !esposto.is_zero(); +/* if (gr > 0) { const TDate& dir = form().data_inizio_rischio(); @@ -517,11 +521,12 @@ void TESSL_array::add_row(const TRiga_partite& row) { esp = gr > 0 ? data_pag >= dls : data_pag > dls; // Esposto normale } - +*/ if (esp) { - TImporto esposto(imp); + TImporto esposto(esp); esposto.normalize(sezione); + riga.salvo_buon_fine(sbf); // Esposto salvo buon fine riga.esposto(esposto.valore()); } } @@ -529,7 +534,7 @@ void TESSL_array::add_row(const TRiga_partite& row) TImporto ritenute(row.importo(FALSE, 0x8)); if (!ritenute.is_zero()) { - TESSL_row& r = new_row(row, data_pag, TImporto('D', ZERO), 4); + TESSL_row& r = new_row(row, data_pag, TImporto('D', ZERO), 40); r.descrizione(form().describe(PEC_RITENUTE)); if (in_valuta) { @@ -543,7 +548,7 @@ void TESSL_array::add_row(const TRiga_partite& row) const TImporto abbuoni(row.importo(in_valuta, 0x2)); if (!abbuoni.is_zero()) { - TESSL_row& r = new_row(row, data_pag, abbuoni, 2); + TESSL_row& r = new_row(row, data_pag, abbuoni, 20); r.descrizione(form().describe(PEC_ABBUONI)); if (in_valuta) { @@ -556,7 +561,7 @@ void TESSL_array::add_row(const TRiga_partite& row) TImporto diffcam(row.importo(FALSE, 0x4)); if (!diffcam.is_zero() && !in_valuta) { - TESSL_row& r = new_row(row, data_pag, TImporto('D', ZERO), 3); + TESSL_row& r = new_row(row, data_pag, TImporto('D', ZERO), 30); r.descrizione(form().describe(PEC_DIFFCAM)); r.importo(diffcam); } diff --git a/sc/scselect.cpp b/sc/scselect.cpp index 9670f3dd9..305f8eb78 100755 --- a/sc/scselect.cpp +++ b/sc/scselect.cpp @@ -37,17 +37,13 @@ TSelection_mask::TSelection_mask(const char* name) } set_handler(SC_CLIFO, rclifo_handler); - set_handler(SC_SORTCF, rsortcf_handler); - set_handler(SC_CFBUTFR, bfrom_handler); - set_handler(SC_CFBUTTO, bto_handler); + set_handler(SC_SORTCF, rsortcf_handler); set_handler(SC_SELECT, bselect_handler); set_handler(SC_RESET, breset_handler); set_handler(SC_CFCODFR, ffrom_handler); set_handler(SC_CFCODTO, fto_handler); set_handler(SC_CFDESFR, fdfrom_handler); set_handler(SC_CFDESTO, fdto_handler); - set_handler(SC_CFDESBUTFR, bdfrom_handler); - set_handler(SC_CFDESBUTTO, bdto_handler); } TSelection_mask::~TSelection_mask() @@ -134,7 +130,7 @@ void TSelection_mask::select_clifo_range(long from, long to) rec.put(CLI_CODCF,to); TRectype recx(rec); TRecnotype end = crs->read(_isgteq); - if (rec != recx) + if (rec > recx) { end--; (*crs)-=1; @@ -191,7 +187,7 @@ void TSelection_mask::select_des_clifo_range(const TString& from, const TString rec.put(CLI_RAGSOC,s_to); TRectype recx(rec); TRecnotype end = crs->read(_isgteq); - if (rec != recx) + if (rec > recx) { end--; (*crs)-=1; @@ -291,44 +287,6 @@ void TSelection_mask::set_des_clifo_limits() } // handlers -bool TSelection_mask::bfrom_handler(TMask_field& f, KEY k) -{ - if (k == K_SPACE) - { - TSelection_mask& m = (TSelection_mask&)f.mask(); - TCursor_sheet& c = m.cur_sheet(); - - c.disable_check(); - if (c.run() == K_ENTER) - { - TToken_string& t = c.row(c.selected()); - const long cod1 = t.get_long(m.get_key()); - const long cod2 = m.get_long(SC_CFCODTO); - m.set(SC_CFCODFR, cod1); - m.select_clifo_range(cod1, cod2); - } - } - return TRUE; -} - -bool TSelection_mask::bto_handler(TMask_field& f, KEY k) -{ - if (k == K_SPACE) - { - TSelection_mask& m = (TSelection_mask&)f.mask(); - TCursor_sheet& c = m.cur_sheet(); - c.disable_check(); - if (c.run() == K_ENTER) - { - TToken_string& t = c.row(c.selected()); - const long cod2 = t.get_long(m.get_key()); - const long cod1 = m.get_long(SC_CFCODFR); - m.set(SC_CFCODTO, cod2); - m.select_clifo_range(cod1, cod2); - } - } - return TRUE; -} bool TSelection_mask::ffrom_handler(TMask_field& f, KEY k) { @@ -343,9 +301,19 @@ bool TSelection_mask::ffrom_handler(TMask_field& f, KEY k) else if (k == K_F9) { - TMask_field& f = m.field(SC_CFBUTFR); - f.on_hit(); - } + TSelection_mask& m = (TSelection_mask&)f.mask(); + TCursor_sheet& c = m.cur_sheet(); + c.disable_check(); + if (c.run() == K_ENTER) + { + TToken_string& t = c.row(c.selected()); + const long cod1 = t.get_long(m.get_key()); + const long cod2 = m.get_long(SC_CFCODTO); + m.set(SC_CFCODFR, cod1); + m.select_clifo_range(cod1, cod2); + } + c.enable_check(); + } return TRUE; } @@ -363,49 +331,19 @@ bool TSelection_mask::fto_handler(TMask_field& f, KEY k) else if (k == K_F9) { - TMask_field& f = m.field(SC_CFBUTTO); - f.on_hit(); - } - return TRUE; -} - -bool TSelection_mask::bdfrom_handler(TMask_field& f, KEY k) -{ - if (k == K_SPACE) - { - TSelection_mask& m = (TSelection_mask&)f.mask(); - TCursor_sheet& c = m.cur_sheet(); - - c.disable_check(); - if (c.run() == K_ENTER) - { - TToken_string& t = c.row(c.selected()); - const TString des1(t.get(3 - m.get_key())); - const TString des2 = m.get(SC_CFDESTO); - m.set(SC_CFDESFR, des1); - m.select_des_clifo_range(des1, des2); + TSelection_mask& m = (TSelection_mask&)f.mask(); + TCursor_sheet& c = m.cur_sheet(); + c.disable_check(); + if (c.run() == K_ENTER) + { + TToken_string& t = c.row(c.selected()); + const long cod2 = t.get_long(m.get_key()); + const long cod1 = m.get_long(SC_CFCODFR); + m.set(SC_CFCODTO, cod2); + m.select_clifo_range(cod1, cod2); + } + c.enable_check(); } - } - return TRUE; -} - -bool TSelection_mask::bdto_handler(TMask_field& f, KEY k) -{ - if (k == K_SPACE) - { - TSelection_mask& m = (TSelection_mask&)f.mask(); - TCursor_sheet& c = m.cur_sheet(); - - c.disable_check(); - if (c.run() == K_ENTER) - { - TToken_string& t = c.row(c.selected()); - const TString des1(m.get(SC_CFDESFR)); - const TString des2(t.get(3 - m.get_key())); - m.set(SC_CFDESTO, des2); - m.select_des_clifo_range(des1, des2); - } - } return TRUE; } @@ -421,10 +359,21 @@ bool TSelection_mask::fdfrom_handler(TMask_field& f, KEY k) } else if (k == K_F9) - { - TMask_field& f = m.field(SC_CFDESBUTFR); - f.on_hit(); - } + { + TSelection_mask& m = (TSelection_mask&)f.mask(); + TCursor_sheet& c = m.cur_sheet(); + + c.disable_check(); + if (c.run() == K_ENTER) + { + TToken_string& t = c.row(c.selected()); + const TString des1(t.get(3 - m.get_key())); + const TString des2 = m.get(SC_CFDESTO); + m.set(SC_CFDESFR, des1); + m.select_des_clifo_range(des1, des2); + } + c.enable_check(); + } return TRUE; } @@ -442,9 +391,20 @@ bool TSelection_mask::fdto_handler(TMask_field& f, KEY k) else if (k == K_F9) { - TMask_field& f = m.field(SC_CFDESBUTTO); - f.on_hit(); - } + TSelection_mask& m = (TSelection_mask&)f.mask(); + TCursor_sheet& c = m.cur_sheet(); + + c.disable_check(); + if (c.run() == K_ENTER) + { + TToken_string& t = c.row(c.selected()); + const TString des1(m.get(SC_CFDESFR)); + const TString des2(t.get(3 - m.get_key())); + m.set(SC_CFDESTO, des2); + m.select_des_clifo_range(des1, des2); + } + c.enable_check(); + } return TRUE; } diff --git a/sc/scselmsk.h b/sc/scselmsk.h index b19d9a7f5..641312456 100755 --- a/sc/scselmsk.h +++ b/sc/scselmsk.h @@ -3,8 +3,6 @@ #define SC_CFCODFR 301 #define SC_CFCODTO 302 -#define SC_CFBUTFR 303 -#define SC_CFBUTTO 304 #define SC_CFDESFR 305 #define SC_CFDESTO 306 #define SC_SELECT 307 @@ -21,8 +19,6 @@ #define SC_PCONCODTO3 318 #define SC_PCONBUTFR 319 #define SC_PCONBUTTO 320 -#define SC_CFDESBUTFR 321 -#define SC_CFDESBUTTO 322 #define SC_PCONDESBUTFR 323 #define SC_PCONDESBUTTO 324 #define SC_PCONDESFR 325