Patch level : 12.0

Files correlati     : f9lib.h f9lib01.cpp real.h real.cpp

Commento:
corretto bug nell inserimento dei movimenti in errore nella tabella F9_ERR. la query era errata e ritornava un errore di "scrittura nel database"

Interno
nell'estrazione degli acquisti non viene estratto il numero di documento. da vedere
This commit is contained in:
Simoe 2022-09-14 17:42:33 +02:00
parent d883f74149
commit b8e91dce07
4 changed files with 20 additions and 11 deletions

View File

@ -498,6 +498,7 @@ class TF9_dberr
protected: protected:
void add_str(const TString& string); void add_str(const TString& string);
void add_num(const long& num);
void write_sqlerrlog(const TString& query) const; void write_sqlerrlog(const TString& query) const;
public: public:
void add(const TString& string); void add(const TString& string);

View File

@ -682,7 +682,7 @@ bool TEstrazione::export_error_list() const
dberr.add(mov.codcaus()); dberr.add(mov.codcaus());
dberr.add(mov.meseliq()); dberr.add(mov.meseliq());
dberr.add(mov.numdoc()); dberr.add(mov.numdoc());
dberr.add(mov.totale().stringa()); dberr.add(mov.totale().string_point());
dberr.add(mov.codcf()); dberr.add(mov.codcf());
dberr.add(mov.ragsoc()); dberr.add(mov.ragsoc());
dberr.add(mov.protiva()); dberr.add(mov.protiva());
@ -803,6 +803,7 @@ const char* TEstrazione::diagnostica_mov()
if (mov_i.no_err() && mov_i.estratto()) if (mov_i.no_err() && mov_i.estratto())
{ {
const long numreg = mov_i.numreg(); const long numreg = mov_i.numreg();
const TRectype & mov =cache().get(LF_MOV, numreg); const TRectype & mov =cache().get(LF_MOV, numreg);
@ -1336,19 +1337,22 @@ void TF9_dberr::add(const TString& string)
add_str(str); add_str(str);
} }
void TF9_dberr::add(const TDate& date) void TF9_dberr::add(const TDate& date)
{ {
if (date.ok()) if (date.ok())
add(date.date2ansi()); add(date.date2ansi());
else else
add("00010101"); add("00010101");
} }
void TF9_dberr::add(const long num) void TF9_dberr::add(const long num)
{ {
TString app; TString app;
app << num; app << num;
add(app); add(app);
} }
bool TF9_dberr::send() bool TF9_dberr::send()
@ -1370,8 +1374,6 @@ bool TF9_dberr::send()
ERR_RAGSOC ", " ERR_RAGSOC ", "
ERR_PROTIVA ", " ERR_PROTIVA ", "
ERR_DESCR ", " ERR_DESCR ", "
ERR_ESCLUDI ", "
ERR_ESCLUSO ", "
ERR_DESCERR ") VALUES ()"; ERR_DESCERR ") VALUES ()";
return ok; return ok;
} }
@ -1428,8 +1430,6 @@ TF9_dberr::TF9_dberr()
ERR_RAGSOC ", " ERR_RAGSOC ", "
ERR_PROTIVA ", " ERR_PROTIVA ", "
ERR_DESCR ", " ERR_DESCR ", "
ERR_ESCLUDI ", "
ERR_ESCLUSO ", "
ERR_DESCERR ") VALUES ()"; ERR_DESCERR ") VALUES ()";
_fout = new ofstream; _fout = new ofstream;
_fout->open("f9_dberr.txt"); _fout->open("f9_dberr.txt");
@ -1448,7 +1448,7 @@ TAnnesso_mov::TAnnesso_mov(TToken_string & row, int start)
_filename = row.get(); _filename = row.get();
_catdocpad = row.get(); _catdocpad = row.get();
_catdocann = row.get(); _catdocann = row.get();
_loaddate = row.get_date(); _loaddate = row.get_date(0);
_user = row.get(); _user = row.get();
} }

View File

@ -1296,6 +1296,12 @@ const char* real::stringe(int len, int dec, char pad) const
return str; return str;
} }
const char* real::string_point(int len, int dec, char pad) const
{
char* str = (char*)string(len, dec, pad);
return str;
}
void real::print_on(ostream& out) const void real::print_on(ostream& out) const
{ {

View File

@ -126,6 +126,8 @@ public:
// @cmember Trasforma un reale in stringa (chiama <mf real::string>), // @cmember Trasforma un reale in stringa (chiama <mf real::string>),
//ma ritorna il formato atteso da Excel //ma ritorna il formato atteso da Excel
const char* stringe(int len = 0, int dec = UNDEFINED, char pad = ' ') const; const char* stringe(int len = 0, int dec = UNDEFINED, char pad = ' ') const;
//Ritorna la string con il punto per dividere interi da decimali
const char* string_point(int len = 0, int dec = UNDEFINED, char pad = ' ') const;
// @cmember Ritorna la stringa con il formato passato // @cmember Ritorna la stringa con il formato passato
const char* string(const char* picture) const; const char* string(const char* picture) const;
// @cmember Ritorna la stringa con il formato passato // @cmember Ritorna la stringa con il formato passato