diff --git a/lv/lv2500.cpp b/lv/lv2500.cpp index 4ef5e5eca..ee82ba1f9 100755 --- a/lv/lv2500.cpp +++ b/lv/lv2500.cpp @@ -314,7 +314,7 @@ void TFatturazione_lavanderie::post_process_output(TLista_documenti& doc_out) const int index = artlav.find_clifomag(annoes); //se lo trovo e se il tipo dotazione è iniziale 'I', allora leggo la dotazione iniziale //dalle giacenze articolo per cliente, altrimenti leggo la dotazione odierna - if (index >=0) + if (index >= 0) { if (tipodot == "I") dot = artlav.clifomag(annoes)[index].get_real("DOTIN"); @@ -767,12 +767,12 @@ class TFatturazione_lav_app: public TSkeleton_application protected: virtual void main_loop(); - void genera_bolle_nolo(TAssoc_array& cliela, TFatturazione_lavanderie& elab); + void genera_bolle_nolo(TAssoc_array& cliela, TFatturazione_lavanderie& elab, int& numdocgen); bool controlli_preliminari(); }; //GENERA_BOLLE_NOLO: metodo che genera le fatture di solo nolo per quei clienti a cui non è stato consegnato niente -void TFatturazione_lav_app::genera_bolle_nolo(TAssoc_array& cliela, TFatturazione_lavanderie& elab) +void TFatturazione_lav_app::genera_bolle_nolo(TAssoc_array& cliela, TFatturazione_lavanderie& elab, int& numdocgen) { TString4 codnum = ini_get_string(CONFIG_DITTA, "lv", "NUM_GEN"); TString4 tipodoc = ini_get_string(CONFIG_DITTA, "lv", "TIPODOC_GEN"); @@ -791,10 +791,16 @@ void TFatturazione_lav_app::genera_bolle_nolo(TAssoc_array& cliela, TFatturazion TISAM_recordset contr(str); TLista_documenti doc_in; - TLista_documenti doc_out; + TLista_documenti doc_out; + + TProgind pi(contr.items(), "Fatturazione", true, true); for(bool ok = contr.move_first(); ok; ok = contr.move_next()) - { + { + pi.set_text(TR("Elaborazione Nolo")); + if (!pi.addstatus(1)) + break; + //scarto i contratti scaduti if (contr.get(LVCONDV_DATASC).as_date().ok()) if (_msk->get_date(F_DADATA) <= contr.get(LVCONDV_DATAIN).as_date() || _msk->get_date(F_ADATA) >= contr.get(LVCONDV_DATASC).as_date()) @@ -867,6 +873,7 @@ void TFatturazione_lav_app::genera_bolle_nolo(TAssoc_array& cliela, TFatturazion { elab.elabora(doc_in, doc_out, _msk->get_date(F_DATAFAT)); doc_out.write(); + numdocgen += doc_out.items(); } doc_out.destroy(-1); @@ -1065,20 +1072,33 @@ void TFatturazione_lav_app::main_loop() } } + int numdocgen; //se ho dei documenti in lista li elaboro e poi svuoto le TList_file if (docsin.items() != 0) { if (ini_get_bool(CONFIG_DITTA, "lv", "RifTest")) elab.put("B15", true); //forzo la descrizione abbreviata elab.elabora(docsin, docsout, datafat); - + + numdocgen = docsout.items(); + docsout.write(); docsout.destroy(-1); docsin.rewrite(); docsin.destroy(-1); } - genera_bolle_nolo(cliela, elab); + genera_bolle_nolo(cliela, elab, numdocgen); + + TString str; + + if (numdocgen > 1 || numdocgen == 0) + str << "Sono state generate " << numdocgen << " fatture"; + else + str << "E' stata generata " << numdocgen << " fattura"; + + message_box(str); + message_box(TR("Elaborazione terminata")); } }