From 0f19fed6f821abd1aafa4be62d46713ec0e6b48c Mon Sep 17 00:00:00 2001 From: Alessandro Bonazzi Date: Mon, 12 Jun 2023 14:16:48 +0200 Subject: [PATCH] Patch level : 12.00 1266 Files correlati : vv0.exe lv2.exe Commento : La gestione passaggi per contratto ddava un errore 3261 nell'invio a touchscreen --- src/include/postman.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/include/postman.cpp b/src/include/postman.cpp index fe9bb7a76..8f9145808 100755 --- a/src/include/postman.cpp +++ b/src/include/postman.cpp @@ -629,11 +629,7 @@ HIDDEN void odbc_send(const TString & dsn, int num, TAuto_token_string & elab_fi TTrec wrk(curr_file_num); int nfields = wrk.fields(); const TString name = table_name(curr_file_num); - - /*TString check_statement = "SELECT TOP 1 * FROM ["; - - check_statement << name << "];";*/ - + TToken_string key(wrk.keydef(), '+'); TString check_statement = "SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'dbo' AND TABLE_NAME = '"; check_statement << name << "';"; @@ -653,12 +649,13 @@ HIDDEN void odbc_send(const TString & dsn, int num, TAuto_token_string & elab_fi TFieldtypes t = (TFieldtypes)def.get_int(1); TString str = ini.get(field); str = str.strip("\""); + if (key.find(field) >= 0 && str.blank()) + str << rowkey.get(); TToken_string row(make_val(field, t, str), '='); values.add(row); } - TToken_string key(wrk.keydef(), '+'); int pos = key.find("|"); if (pos > 0)