diff --git a/src/sc/sc2401.cpp b/src/sc/sc2401.cpp index 14bf490e1..773982cbb 100755 --- a/src/sc/sc2401.cpp +++ b/src/sc/sc2401.cpp @@ -1,4 +1,5 @@ #include +#include #include "../cg/cgsaldac.h" #include "sc21pec.h" @@ -76,20 +77,24 @@ bool TESSL_mask::on_field_event(TOperable_field& o, TField_event e, long jolly) update_checked(); const int last = s.last_one(); - - for (long pos = s.first_one(); pos <= last; pos++) + { - if (s.checked(pos)) + TProgress_monitor p(last, "Stampa solleciti"); + + for (long pos = s.first_one(); p.addstatus() && pos <= last; pos++) { - fc = pos; // muove il cursore alla posizione corrente + if (s.checked(pos)) + { + fc = pos; // muove il cursore alla posizione corrente - const int ret = print_one(fc.curr().get(CLI_TIPOCF), fc.curr().get_long(CLI_CODCF)); + const int ret = print_one(fc.curr().get(CLI_TIPOCF), fc.curr().get_long(CLI_CODCF)); - if (ret < 0) - failed++; + if (ret < 0) + failed++; + } + if (pr.frozen()) + break; } - if (pr.frozen()) - break; } pr.close(); if (failed > 0) diff --git a/src/sc/sc2402.cpp b/src/sc/sc2402.cpp index 32721d9a9..10246f471 100755 --- a/src/sc/sc2402.cpp +++ b/src/sc/sc2402.cpp @@ -185,7 +185,7 @@ bool TSol_mask::some_to_print(const char * tipo, const long codice) TSol_form& f = (TSol_form&) form(); const bool sel_tot_saldo = f.get_sel_tot_saldo(); // selezione sul saldo totale cliente const real sel_importo(f.get_sel_importo()); // importo di selezione - const TDate data_inizio_soll = get(F_DATAINISCAD); + TDate data_inizio_soll = get(F_DATAINISCAD); const TDate data_limite_soll = f.data_limite_operazione(); const TDate data_limite_scaduto = f.data_limite_scaduto(); const TDate data_rischio = f.data_inizio_rischio(); @@ -197,6 +197,8 @@ bool TSol_mask::some_to_print(const char * tipo, const long codice) TLocalisamfile partite(LF_PARTITE); const TRectype& parkur = partite.curr(); + if (!data_inizio_soll.ok()) + data_inizio_soll = botime; filter.put(PART_TIPOCF, tipo); filter.put(PART_SOTTOCONTO, codice); partite.curr() = filter; @@ -213,13 +215,7 @@ bool TSol_mask::some_to_print(const char * tipo, const long codice) const real sld = game.calcola_scaduto_al(false, data_limite_soll); saldo += sld; } - if (data_inizio_soll.ok()) - { - if (ci_sono_scadenze_aperte(game, data_inizio_soll, data_limite_soll, data_rischio)) - any_to_print = true; - } - else - any_to_print = true; + any_to_print = ci_sono_scadenze_aperte(game, data_inizio_soll, data_limite_soll, data_rischio); } partite.put(PART_NRIGA, 9999); }