Correzioni su evasione buoni

git-svn-id: svn://10.65.10.50/branches/R_10_00@22685 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2012-07-02 13:06:09 +00:00
parent 3e64641a51
commit 70be917985

View File

@ -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))); TDate data(atoi(riga.mid(78, 2)), atoi(riga.mid(80, 2)), atoi(riga.mid(82, 4)));
long codcf = atol(riga.mid(86, 6)); 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) if(ann)
{ {
const TDate oggi(TODAY);
TRiga_pacco rp(codpacco); TRiga_pacco rp(codpacco);
if (data < oggi)
data = oggi; // Altrimenti ignora tutti gli annullamenti! 19-06-2012
rp.set_data(data); rp.set_data(data);
rp.set_annullato(ann); rp.set_annullato(ann);
rp.set_movmag(-1); 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 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à //il secondo ha per chiave il codart e come contenuto le quantità
TAssoc_array* articoli = (TAssoc_array*)movimenti.objptr(ansidate); TAssoc_array* articoli = (TAssoc_array*)movimenti.objptr(ansidate);
if(articoli == NULL) if (articoli == NULL)
{ {
articoli = new TAssoc_array(); articoli = new TAssoc_array();
movimenti.add(ansidate, articoli); movimenti.add(ansidate, articoli);
} }
if(articoli->is_key(keyarticoli)) if (articoli->is_key(keyarticoli))
{ {
real& qta = *(real*)articoli->objptr(keyarticoli); real& qta = *(real*)articoli->objptr(keyarticoli);
qta += quantita; qta += quantita;
@ -827,7 +832,7 @@ void TConta_pulito_msk::prepara_movimenti(const TFilename& file, TAssoc_array& m
articoli->add(keyarticoli, quantita); articoli->add(keyarticoli, quantita);
//se il pacco risulta annullato, lo elimino //se il pacco risulta annullato, lo elimino
if(annullato) if (annullato)
{ {
rp.remove(pacchi); rp.remove(pacchi);
rp.rewrite(pacchi); rp.rewrite(pacchi);
@ -965,7 +970,7 @@ TConta_pulito_msk::TConta_pulito_msk():TAutomask("lv2900a")
_print = main_app().argv(5); _print = main_app().argv(5);
_print = _print.right(1); _print = _print.right(1);
file = (TFilename)main_app().argv(6); file = main_app().argv(6);
} }
else else
{ {
@ -1019,7 +1024,7 @@ bool TConta_pulito_app::create()
_auto = argv(2); _auto = argv(2);
_auto = _auto.right(1); _auto = _auto.right(1);
TString16 tmp = argv(3); const TFixed_string tmp = argv(3);
char c = tmp.mid(1,1)[0]; char c = tmp.mid(1,1)[0];
switch (c) switch (c)
{ {
@ -1071,6 +1076,6 @@ void TConta_pulito_app::main_loop()
int lv2900(int argc, char *argv[]) int lv2900(int argc, char *argv[])
{ {
TConta_pulito_app a; TConta_pulito_app a;
a.run (argc, argv, "Elaborazioni pulito"); a.run (argc, argv, TR("Elaborazioni pulito"));
return TRUE; return TRUE;
} }