Patch level : 12.00 1268
Files correlati : lv0.exe lv2.exe Commento : Invio postino con ODBC
This commit is contained in:
parent
9b776ca03a
commit
078154b7a1
@ -706,16 +706,31 @@ HIDDEN void odbc_send(const TString & dsn, int num, TAuto_token_string & elab_fi
|
||||
TToken_string row(make_val(fld, t, str), '=');
|
||||
keys.add(row);
|
||||
}
|
||||
const TString & statement = build_statement(op, curr_file_num, name, keys, values);
|
||||
|
||||
TString statement;
|
||||
|
||||
if (op < db_remove)
|
||||
{
|
||||
statement << "SELECT * FROM [" << name << "] WHERE ";
|
||||
FOR_EACH_ARRAY_ROW(keys, rk, rowk)
|
||||
{
|
||||
if (rk > 0)
|
||||
statement << " AND";
|
||||
statement << ' ' << *rowk;
|
||||
}
|
||||
statement << ";";
|
||||
int err = recset.exec(statement);
|
||||
if (err == 0 && op == db_update)
|
||||
op = db_add;
|
||||
else
|
||||
if (err > 0 && op == db_add)
|
||||
op = db_update;
|
||||
}
|
||||
statement = build_statement(op, curr_file_num, name, keys, values);
|
||||
|
||||
int err = recset.exec(statement);
|
||||
|
||||
if (op < db_remove && err <= 0)
|
||||
{
|
||||
const TString & statement = build_statement(op == db_add ? db_update : db_add, curr_file_num, name, keys, values);
|
||||
|
||||
err = recset.exec(statement);
|
||||
}
|
||||
if (err <= 0)
|
||||
if (err < 0)
|
||||
error_box(FR("Errore n. %d invio file %d"), -err, curr_file_num);
|
||||
else
|
||||
recset.exec("COMMIT;");
|
||||
|
Loading…
x
Reference in New Issue
Block a user