From 70be9179857dd5080790a14e43c5663df9dd06d3 Mon Sep 17 00:00:00 2001 From: guy Date: Mon, 2 Jul 2012 13:06:09 +0000 Subject: [PATCH] Correzioni su evasione buoni git-svn-id: svn://10.65.10.50/branches/R_10_00@22685 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- lv/lv2900.cpp | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/lv/lv2900.cpp b/lv/lv2900.cpp index acd8f8bc7..955fa81b9 100755 --- a/lv/lv2900.cpp +++ b/lv/lv2900.cpp @@ -436,11 +436,16 @@ bool TConta_pulito_msk::elabora_file(const TFilename& file, TLog_report& logrep) TDate data(atoi(riga.mid(78, 2)), atoi(riga.mid(80, 2)), atoi(riga.mid(82, 4))); long codcf = atol(riga.mid(86, 6)); - const bool ann = riga.mid(100, 1)[0] == 'S' ? true : false; + const bool ann = riga.mid(100, 1)[0] == 'S'; if(ann) { + const TDate oggi(TODAY); + TRiga_pacco rp(codpacco); + if (data < oggi) + data = oggi; // Altrimenti ignora tutti gli annullamenti! 19-06-2012 + rp.set_data(data); rp.set_annullato(ann); rp.set_movmag(-1); @@ -813,12 +818,12 @@ void TConta_pulito_msk::prepara_movimenti(const TFilename& file, TAssoc_array& m //il primo ha per chiave la data (in ansi) e come contenuto un TAssoc_array degli articoli //il secondo ha per chiave il codart e come contenuto le quantità TAssoc_array* articoli = (TAssoc_array*)movimenti.objptr(ansidate); - if(articoli == NULL) + if (articoli == NULL) { articoli = new TAssoc_array(); movimenti.add(ansidate, articoli); } - if(articoli->is_key(keyarticoli)) + if (articoli->is_key(keyarticoli)) { real& qta = *(real*)articoli->objptr(keyarticoli); qta += quantita; @@ -827,7 +832,7 @@ void TConta_pulito_msk::prepara_movimenti(const TFilename& file, TAssoc_array& m articoli->add(keyarticoli, quantita); //se il pacco risulta annullato, lo elimino - if(annullato) + if (annullato) { rp.remove(pacchi); rp.rewrite(pacchi); @@ -965,7 +970,7 @@ TConta_pulito_msk::TConta_pulito_msk():TAutomask("lv2900a") _print = main_app().argv(5); _print = _print.right(1); - file = (TFilename)main_app().argv(6); + file = main_app().argv(6); } else { @@ -1019,7 +1024,7 @@ bool TConta_pulito_app::create() _auto = argv(2); _auto = _auto.right(1); - TString16 tmp = argv(3); + const TFixed_string tmp = argv(3); char c = tmp.mid(1,1)[0]; switch (c) { @@ -1071,6 +1076,6 @@ void TConta_pulito_app::main_loop() int lv2900(int argc, char *argv[]) { TConta_pulito_app a; - a.run (argc, argv, "Elaborazioni pulito"); + a.run (argc, argv, TR("Elaborazioni pulito")); return TRUE; }