Patch level : 10.0 patch 514
Files correlati : lv2 Ricompilazione Demo : [ ] Commento : Nell'acquisizione da pulito gli eventuali errori vcengono salvato su un file .log e non più mandati a video (quando il programma è lanciato da linea di comando) git-svn-id: svn://10.65.10.50/trunk@19622 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
083a031429
commit
33e9f8b468
@ -2,6 +2,8 @@
|
||||
#include <automask.h>
|
||||
#include <defmask.h>
|
||||
#include <execp.h>
|
||||
#include <reprint.h>
|
||||
#include <reputils.h>
|
||||
#include <utility.h>
|
||||
|
||||
#include "lvlib.h"
|
||||
@ -138,20 +140,20 @@ TBuoni_cache::TBuoni_cache() : TCache(17)
|
||||
//classe TConta_pulito_msk
|
||||
class TConta_pulito_msk: public TAutomask
|
||||
{
|
||||
TString4 _auto;
|
||||
TString4 _giri;
|
||||
bool _percli;
|
||||
bool _permag;
|
||||
long _codcf;
|
||||
TString4 _print;
|
||||
TString4 _auto;
|
||||
TString4 _giri;
|
||||
bool _percli;
|
||||
bool _permag;
|
||||
long _codcf;
|
||||
TString4 _print;
|
||||
|
||||
protected:
|
||||
virtual bool on_field_event(TOperable_field& o,TField_event e,long jolly);
|
||||
|
||||
bool elabora_file(const TFilename& file);
|
||||
bool elabora_file(const TFilename& file, TLog_report& logrep);
|
||||
void sposta_file(const TFilename& file);
|
||||
bool genera_documenti(const TFilename& file, TAssoc_array& documenti);
|
||||
void prepara_movimenti(const TFilename& file, TAssoc_array& movimenti);
|
||||
bool genera_documenti(const TFilename& file, TAssoc_array& documenti, TLog_report& logrep);
|
||||
void prepara_movimenti(const TFilename& file, TAssoc_array& movimenti, TLog_report& logrep);
|
||||
bool genera_movmag(TAssoc_array& movimenti);
|
||||
|
||||
public:
|
||||
@ -170,13 +172,15 @@ bool TConta_pulito_msk::on_field_event(TOperable_field& f,TField_event e,long jo
|
||||
TAssoc_array documenti;
|
||||
TAssoc_array movimenti;
|
||||
|
||||
TLog_report logrep("");
|
||||
|
||||
//a seconda del bottone premuto esegui un metodo diverso
|
||||
switch (f.dlg())
|
||||
{
|
||||
case DLG_IMPORT:
|
||||
if(e == fe_button)
|
||||
{
|
||||
if (elabora_file(file))
|
||||
if (elabora_file(file, logrep))
|
||||
{
|
||||
sposta_file(file);
|
||||
message_box(TR("Importazione dei dati terminata"));
|
||||
@ -186,7 +190,7 @@ bool TConta_pulito_msk::on_field_event(TOperable_field& f,TField_event e,long jo
|
||||
case DLG_PACKTCLI:
|
||||
if(e == fe_button)
|
||||
{
|
||||
genera_documenti(file, documenti);
|
||||
genera_documenti(file, documenti, logrep);
|
||||
|
||||
if (documenti.items() > 0)
|
||||
{
|
||||
@ -222,34 +226,57 @@ bool TConta_pulito_msk::on_field_event(TOperable_field& f,TField_event e,long jo
|
||||
message_box(TR("Generazione dei documenti terminata"));
|
||||
}
|
||||
else
|
||||
message_box(TR("Non è stato possibile generare nessun documento con i parametri fissati"));
|
||||
if (_auto == "A")
|
||||
logrep.log(2, "Non è stato possibile generare nessun documento con i parametri fissati");
|
||||
else
|
||||
message_box(TR("Non è stato possibile generare nessun documento con i parametri fissati"));
|
||||
}
|
||||
break;
|
||||
case DLG_PACKTMAG:
|
||||
if(e == fe_button)
|
||||
{
|
||||
prepara_movimenti(file, movimenti);
|
||||
prepara_movimenti(file, movimenti, logrep);
|
||||
if (movimenti.items() > 0)
|
||||
{
|
||||
genera_movmag(movimenti);
|
||||
message_box(TR("Generazione dei movimenti di magazzino terminata"));
|
||||
}
|
||||
else
|
||||
message_box(TR("Non è stato possibile generare nessun documento con i parametri fissati"));
|
||||
if (_auto == "A")
|
||||
logrep.log(2, "Non è stato possibile generare nessun documento con i parametri fissati");
|
||||
else
|
||||
message_box(TR("Non è stato possibile generare nessun documento con i parametri fissati"));
|
||||
}
|
||||
break;
|
||||
default: break;
|
||||
}
|
||||
TReport_book buc;
|
||||
buc.add(logrep);
|
||||
|
||||
//genero il file .log che contiene gli errori
|
||||
if (buc.pages() > 0)
|
||||
{
|
||||
TString str = file.name_only();
|
||||
str << ".log";
|
||||
|
||||
TFilename log = file.path();
|
||||
log.add(str);
|
||||
|
||||
buc.export_text(log, false);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
//ELABORA_FILE: metodo che importa il file e prepara la tabella pacchi
|
||||
bool TConta_pulito_msk::elabora_file(const TFilename& file)
|
||||
bool TConta_pulito_msk::elabora_file(const TFilename& file, TLog_report& logrep)
|
||||
{
|
||||
if (!file.exist())
|
||||
{
|
||||
warning_box(TR("ATTENZIONE: il file che si desidera importare non esiste!"));
|
||||
if (_auto == "A")
|
||||
logrep.log(2, "ATTENZIONE: il file che si desidera importare non esiste!");
|
||||
else
|
||||
warning_box(TR("ATTENZIONE: il file che si desidera importare non esiste!"));
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -299,7 +326,10 @@ bool TConta_pulito_msk::elabora_file(const TFilename& file)
|
||||
{
|
||||
TString str;
|
||||
str << "ATTENZIONE: non è stata trovata nessuna unità di misura valida per l'articolo " << codart;
|
||||
warning_box(str);
|
||||
if (_auto == "A")
|
||||
logrep.log(2, str);
|
||||
else
|
||||
warning_box(str);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -331,12 +361,12 @@ void TConta_pulito_msk::sposta_file(const TFilename& file)
|
||||
}
|
||||
|
||||
//GENERA_DOCUMENTI: metodo che genera i documenti partendo dal file pacchi
|
||||
bool TConta_pulito_msk::genera_documenti(const TFilename& file, TAssoc_array& documenti)
|
||||
bool TConta_pulito_msk::genera_documenti(const TFilename& file, TAssoc_array& documenti, TLog_report& logrep)
|
||||
{
|
||||
//se esite un file da importare, lo importo e lo sposto
|
||||
if (file.exist())
|
||||
{
|
||||
elabora_file(file);
|
||||
elabora_file(file, logrep);
|
||||
sposta_file(file);
|
||||
}
|
||||
|
||||
@ -541,12 +571,12 @@ bool TConta_pulito_msk::genera_documenti(const TFilename& file, TAssoc_array& do
|
||||
}
|
||||
|
||||
//PREPARA_MOVIMENTI: questo metodo prepara il TAssoc_array che contiene i movimenti da generare
|
||||
void TConta_pulito_msk::prepara_movimenti(const TFilename& file, TAssoc_array& movimenti)
|
||||
void TConta_pulito_msk::prepara_movimenti(const TFilename& file, TAssoc_array& movimenti, TLog_report& logrep)
|
||||
{
|
||||
//se esite un file da importare, lo importo e lo sposto
|
||||
if (file.exist())
|
||||
{
|
||||
elabora_file(file);
|
||||
elabora_file(file, logrep);
|
||||
sposta_file(file);
|
||||
}
|
||||
|
||||
@ -803,7 +833,7 @@ bool TConta_pulito_app::create()
|
||||
case 'M': _cliormag = 'M'; break;
|
||||
case 'I': _cliormag = 'I'; break;
|
||||
default: break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -825,8 +855,7 @@ bool TConta_pulito_app::destroy()
|
||||
|
||||
//TRANSFER: metodo che decide cosa effettivamente far fare al programma a seconda delle indicazioni ricevute
|
||||
bool TConta_pulito_app::transfer()
|
||||
{
|
||||
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user