Patch level : 12.00 1326

Files correlati     : ca0.exe cg0.exe ve0.exe

Inivo a CRM
Chiusura commesse fino all'anno
This commit is contained in:
Alessandro Bonazzi 2024-07-30 10:44:47 +02:00
parent 33124b2cdb
commit 3aaeb6c48b

View File

@ -731,20 +731,40 @@ HIDDEN void odbc_send(const TString & dsn, int num, TAuto_token_string & elab_fi
int nfields = wrk.fields(); int nfields = wrk.fields();
const TString name = table_name(curr_file_num, mssql); const TString name = table_name(curr_file_num, mssql);
TToken_string key(wrk.keydef(), '+'); TToken_string key(wrk.keydef(), '+');
TString check_statement = "SHOW TABLES LIKE '";
int err = 0;
if (mssql) if (mssql)
{ {
TString sqlname = name.mid(1, name.len() - 2); TString sqlname = name.mid(1, name.len() - 2);
TString check_statement = "SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'dbo' AND TABLE_NAME = '";
check_statement = "SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'dbo' AND TABLE_NAME = '";
check_statement << sqlname << "';"; check_statement << sqlname << "';";
int err = recset.exec(check_statement);
} }
else else
check_statement << name << "';"; {
HIDDEN int __magic_find_tables = -2;
int err = recset.exec(check_statement); if (__magic_find_tables == -2)
__magic_find_tables = ini_get_bool(CONFIG_STUDIO, "Main", "MAGIC_FIND_TABLES");
if (__magic_find_tables)
{
TString check_statement = "SELECT * FROM ";
check_statement << name << ";";
err = recset.exec(check_statement);
err = err == -1146 ? 0 : 1;
}
else
{
TString check_statement = "SHOW TABLES LIKE '";
check_statement << name << "';";
err = recset.exec(check_statement);
}
}
if (err <= 0) if (err <= 0)
{ {
create_table(recset, curr_file_num, name, wrk); create_table(recset, curr_file_num, name, wrk);