Patch level : 12.0 1090
Files correlati : bs0.exe Commento : aggiunto un meccanismo di trace nell'importazione bee store Interno: Si attiva mettendo nel paragrafo Main di studio.ini TRACE = X
This commit is contained in:
parent
0e9502d07d
commit
c25b6ab330
@ -400,6 +400,7 @@ void TImporta_Beestore::import_table(int logicnum, const char* table, TAssoc_arr
|
||||
odbc.connect(_dsn, _usr, _psw);
|
||||
|
||||
const TRecnotype n = odbc.items();
|
||||
TRACE("Importazione file %s", logicnum);
|
||||
|
||||
if (n > 0)
|
||||
{
|
||||
@ -419,7 +420,8 @@ void TImporta_Beestore::import_table(const char * tab, const char* table, TAssoc
|
||||
|
||||
const TRecnotype n = odbc.items();
|
||||
|
||||
if (n > 0)
|
||||
TRACE("Importazione tabella %s", tab);
|
||||
if (n > 0)
|
||||
{
|
||||
if (_direct_write)
|
||||
direct_table(tab, odbc, pairs);
|
||||
@ -437,6 +439,7 @@ void TImporta_Beestore::direct_table(int logicnum, TODBC_recordset & odbc, TAsso
|
||||
str.format(TR("Importazione %ld record dalla tabella %s"), odbc.items(), odbc.table_name());
|
||||
_log->log(0, "");
|
||||
_log->log(0, str);
|
||||
TRACE(str);
|
||||
|
||||
TProgress_monitor pi(odbc.items(), str);
|
||||
|
||||
@ -512,6 +515,7 @@ void TImporta_Beestore::direct_table(const char * tab, TODBC_recordset & odbc, T
|
||||
str.format(TR("Importazione %ld record dalla tabella %s"), odbc.items(), odbc.table_name());
|
||||
_log->log(0, "");
|
||||
_log->log(0, str);
|
||||
TRACE(str);
|
||||
|
||||
TProgress_monitor pi(odbc.items(), str);
|
||||
|
||||
@ -587,9 +591,9 @@ void TImporta_Beestore::transaction_table(int logicnum, TODBC_recordset & odbc,
|
||||
str.format(TR("Importazione %ld record dalla tabella %s"), odbc.items(), odbc.table_name());
|
||||
_log->log(0, "");
|
||||
_log->log(0, str);
|
||||
TRACE(str);
|
||||
|
||||
TProgress_monitor pi(odbc.items(), str);
|
||||
|
||||
TArray transactions;
|
||||
|
||||
for (bool ok = odbc.move_first(); pi.add_status() && ok; ok = odbc.move_next())
|
||||
@ -643,7 +647,7 @@ void TImporta_Beestore::transaction_table(int logicnum, TODBC_recordset & odbc,
|
||||
transactions.add(t);
|
||||
}
|
||||
}
|
||||
execute_transactions(transactions, *_log, _interactive);
|
||||
execute_transactions(transactions, *_log, _interactive, str);
|
||||
}
|
||||
}
|
||||
|
||||
@ -657,6 +661,7 @@ void TImporta_Beestore::transaction_table(const char * table, TODBC_recordset &
|
||||
str.format(TR("Importazione %ld record dalla tabella %s"), odbc.items(), odbc.table_name());
|
||||
_log->log(0, "");
|
||||
_log->log(0, str);
|
||||
TRACE(str);
|
||||
|
||||
TProgress_monitor pi(odbc.items(), str);
|
||||
|
||||
@ -701,7 +706,7 @@ void TImporta_Beestore::transaction_table(const char * table, TODBC_recordset &
|
||||
transactions.add(t);
|
||||
}
|
||||
}
|
||||
execute_transactions(transactions, *_log, _interactive);
|
||||
execute_transactions(transactions, *_log, _interactive, str);
|
||||
}
|
||||
}
|
||||
|
||||
@ -711,7 +716,7 @@ void TImporta_Beestore::import_ums()
|
||||
|
||||
fields.add("CodUntMis", "CODTAB");
|
||||
fields.add("DSUntMis", "S0");
|
||||
|
||||
TRACE("Unità di misura");
|
||||
import_table("%UMS", "tieUntMisura", fields);
|
||||
}
|
||||
|
||||
@ -723,7 +728,7 @@ void TImporta_Beestore::import_iva()
|
||||
fields.add("CodIvaSt", "CODTAB");
|
||||
fields.add("DSIva", "S0");
|
||||
fields.add("Aliquota", "R0");
|
||||
|
||||
TRACE("IVA");
|
||||
import_table("%IVA", "tieIva", fields);
|
||||
}
|
||||
|
||||
@ -733,7 +738,7 @@ void TImporta_Beestore::import_lines()
|
||||
|
||||
fields.add("CodLinea", "CODTAB");
|
||||
fields.add("DSLinea", "S0");
|
||||
|
||||
TRACE("Linee");
|
||||
import_table("GMC", "tieLineeArt", fields);
|
||||
}
|
||||
|
||||
@ -744,7 +749,7 @@ void TImporta_Beestore::import_catmer()
|
||||
fields.add("CodCategoriaMerceologica", "CODTAB");
|
||||
fields.add("DSCategoriaMerceologica", "S0");
|
||||
// fields.add("CodTipoEtichetta", ""); a che serviva ?
|
||||
|
||||
TRACE("Categorie merceologiche");
|
||||
import_table("GMC", "tieCategorieMerceologiche", fields);
|
||||
}
|
||||
|
||||
@ -759,8 +764,8 @@ void TImporta_Beestore::import_anamag()
|
||||
fields.add("CodCategMerceologica", ANAMAG_GRMERC);
|
||||
fields.add("Bloccato", ANAMAG_SOSPESO);
|
||||
fields.add("codDogana", ANAMAG_CLASSDOG);
|
||||
|
||||
if (_direct_write)
|
||||
TRACE("Anagrafica di magazzino");
|
||||
if (_direct_write)
|
||||
{
|
||||
import_table(LF_ANAMAG, "tieArticoli", fields);
|
||||
fields.destroy();
|
||||
@ -1037,6 +1042,7 @@ bool TImporta_Beestore::split_phone(const TRecordset& odbc, const char* number,
|
||||
}
|
||||
return pn.full();
|
||||
}
|
||||
|
||||
void TImporta_Beestore::direct_clifo(char tipocf)
|
||||
{
|
||||
TString str(255);
|
||||
@ -1064,6 +1070,7 @@ void TImporta_Beestore::direct_clifo(char tipocf)
|
||||
clifo.zero();
|
||||
clifo.put(CLI_TIPOCF, tipocf);
|
||||
clifo.put(CLI_CODCF, codcf);
|
||||
TRACE("%s %ld", tipocf == 'C' ? "Clienti" : "Fornitore", codcf);
|
||||
|
||||
const int err = clifo.read();
|
||||
const bool elab = (err == NOERR && (_tipo_imp != imp_aggiungi)) ||
|
||||
@ -1169,6 +1176,7 @@ void TImporta_Beestore::transaction_clifo(char tipocf) // fare
|
||||
rec.put(CLI_TIPOCF, tipocf);
|
||||
if (codcf > 0L)
|
||||
rec.put(CLI_CODCF, codcf);
|
||||
TRACE("%s %ld", tipocf == 'C' ? "Clienti" : "Fornitore", codcf);
|
||||
|
||||
bool found = clifo.read() == NOERR;
|
||||
const bool elab = (found && (_tipo_imp != imp_aggiungi)) ||
|
||||
@ -1224,13 +1232,14 @@ void TImporta_Beestore::transaction_clifo(char tipocf) // fare
|
||||
t.set(CLI_DATAAGG, dataagg, -1, LF_CLIFO);
|
||||
transactions.add(t);
|
||||
}
|
||||
execute_transactions(transactions, *_log, _interactive);
|
||||
execute_transactions(transactions, *_log, _interactive, str);
|
||||
}
|
||||
}
|
||||
|
||||
void TImporta_Beestore::import_clifo(int cfmask, const TDate& dal, const TDate& al)
|
||||
{
|
||||
if (_direct_write)
|
||||
TRACE("Clienti/Fonitori");
|
||||
if (_direct_write)
|
||||
{
|
||||
if (cfmask & 1) direct_clifo('C');
|
||||
if (cfmask & 2) direct_clifo('F');
|
||||
@ -1250,6 +1259,7 @@ void TImporta_Beestore::import_val()
|
||||
fields.add("CodValuta", "CODTAB");
|
||||
fields.add("DSValuta2", "S0");
|
||||
fields.add("Simbolo", "CODTAB");
|
||||
TRACE("Valute");
|
||||
import_table("%VAL", "tieValute", fields);
|
||||
}
|
||||
|
||||
@ -1335,6 +1345,7 @@ void TImporta_Beestore::direct_doc(TODBC_recordset & docs, const char * table, c
|
||||
int eccezioni_errori = 0;
|
||||
TString codpk = "";
|
||||
bool elab = false;
|
||||
long numdoc;
|
||||
|
||||
for (bool ok = docs.move_first(); ok; ok = docs.move_next())
|
||||
{
|
||||
@ -1386,13 +1397,13 @@ void TImporta_Beestore::direct_doc(TODBC_recordset & docs, const char * table, c
|
||||
TTipo_documento tipo(tipodoc);
|
||||
const TString8 codcaus = tipo.caus_mov();
|
||||
TString str = docs.get_string("NumDoc");
|
||||
long numdoc = ndoc;
|
||||
|
||||
|
||||
numdoc = ndoc;
|
||||
while (str[0] > 'A')
|
||||
str.ltrim(1);
|
||||
if (str.full())
|
||||
numdoc = atol(str);
|
||||
|
||||
TRACE("%s n. %ld", table, numdoc);
|
||||
doc = new TDocumento('D', datadoc.year(), get_num(docs.get_string("SuffNum"), tipotestata), numdoc);
|
||||
doc->destroy_rows();
|
||||
doc->put(DOC_DATADOC, datadoc);
|
||||
@ -1446,6 +1457,8 @@ void TImporta_Beestore::direct_doc(TODBC_recordset & docs, const char * table, c
|
||||
const int tipoart = docs.get_int("TipoArticolo");
|
||||
TRectype& rdoc = doc->new_row("01");
|
||||
TString80 codart = docs.get_string("IDArticolo");
|
||||
TRACE("%s n. %ld riga %d", table, numdoc, rdoc.get_int(RDOC_NRIGA));
|
||||
|
||||
if (codart.blank())
|
||||
codart = docs.get_string("CodArticolo");
|
||||
if (codart == BS_FREEROW)
|
||||
@ -1579,6 +1592,7 @@ void TImporta_Beestore::transaction_doc(TODBC_recordset & docs, const char * tab
|
||||
TString wrk = docs.get_string("CodCliente");
|
||||
TString8 tipodoc = tipotestata != 14 ? docs.get_string("TipoDocCE") : get_num("", 14);
|
||||
TString cod_pk = docs.get_string("Cod_PK");
|
||||
long numdoc;
|
||||
|
||||
if (tipodoc.full())
|
||||
{
|
||||
@ -1599,7 +1613,8 @@ void TImporta_Beestore::transaction_doc(TODBC_recordset & docs, const char * tab
|
||||
row = 0;
|
||||
|
||||
TString str = docs.get_string("NumDoc");
|
||||
long numdoc = ndoc;
|
||||
|
||||
numdoc = ndoc;
|
||||
// TString origine_dc = docs.get_string("Origine");
|
||||
TTipo_documento tipo(tipodoc);
|
||||
const TString8 codcaus = tipo.caus_mov();
|
||||
@ -1610,6 +1625,7 @@ void TImporta_Beestore::transaction_doc(TODBC_recordset & docs, const char * tab
|
||||
str.ltrim(1);
|
||||
if (str.full())
|
||||
numdoc = atol(str);
|
||||
TRACE("%s n. %ld", table, numdoc);
|
||||
|
||||
const TString16 numerazione = get_num(docs.get_string("SuffNum"), tipotestata);
|
||||
|
||||
@ -1670,6 +1686,7 @@ void TImporta_Beestore::transaction_doc(TODBC_recordset & docs, const char * tab
|
||||
if (codart == BS_FREEROW)
|
||||
codart = "";
|
||||
t.set(RDOC_TIPORIGA, "01", -1, LF_RIGHEDOC, ++row);
|
||||
TRACE("%s n. %ld riga %d", table, numdoc, row);
|
||||
if (codart.full())
|
||||
{
|
||||
t.set(RDOC_CODART, codart, -1, LF_RIGHEDOC, row);
|
||||
@ -1767,8 +1784,10 @@ void TImporta_Beestore::transaction_doc(TODBC_recordset & docs, const char * tab
|
||||
|
||||
if (elab && last > 0 && row > 0)
|
||||
transactions.add(t);
|
||||
TRACE("Salvataggio articoli");
|
||||
execute_transactions(art_transactions, *_log, _interactive, "Importazione articoli");
|
||||
execute_transactions(transactions, *_log, _interactive, "Importazione documenti");
|
||||
TRACE("Salvataggio %s", table);
|
||||
execute_transactions(transactions, *_log, _interactive, msg);
|
||||
}
|
||||
|
||||
void TImporta_Beestore::import_doc(const TDate& dal, const TDate& al, int tipotestata, const char* unitadefault, bool importadoc)
|
||||
@ -1845,6 +1864,7 @@ void TImporta_Beestore::import_doc(const TDate& dal, const TDate& al, int tipote
|
||||
str = TR("Documenti");
|
||||
break;
|
||||
};
|
||||
TRACE(str);
|
||||
if (_direct_write)
|
||||
direct_doc(docs, str, tipotestata, unitadefault, importadoc);
|
||||
else
|
||||
@ -1899,16 +1919,18 @@ bool TImporta_Beestore::create()
|
||||
TString query; query << "SELECT * FROM tieValute;";//"ODBC(" << _dsn << ")\nSELECT * FROM tieValute;";
|
||||
TODBC_recordset recset(query);
|
||||
|
||||
recset.connect(_dsn, _usr, _psw); // Dovrebbe connettersi anche con solo _dsn valorizzato
|
||||
recset.move_first();
|
||||
if (_sqlog.full() && _sqlog.is_relative_path())
|
||||
if (recset.connect(_dsn, _usr, _psw)) // Dovrebbe connettersi anche con solo _dsn valorizzato
|
||||
{
|
||||
TFilename n; n.tempdir();
|
||||
n.add(_sqlog.name());
|
||||
_sqlog = n;
|
||||
recset.move_first();
|
||||
if (_sqlog.full() && _sqlog.is_relative_path())
|
||||
{
|
||||
TFilename n; n.tempdir();
|
||||
n.add(_sqlog.name());
|
||||
_sqlog = n;
|
||||
}
|
||||
recset.set_log_file(_sqlog);
|
||||
return TSkeleton_application::create();
|
||||
}
|
||||
recset.set_log_file(_sqlog);
|
||||
return TSkeleton_application::create();
|
||||
}
|
||||
return error_box(FR("Impossibile connettersi al DSN '%s'"), (const char*)_dsn);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user