Page 1 of 1

SQLExpress problem with Advantage Database Server 12.0

Posted: Tue Jan 17, 2017 10:29 am
by Tomaz
Hello, dear programmers!

I have been using xBase, eXpress, ADS and SQLExpress nerely decades.
My access to ADS server goes exclusively through xBase++ with ADSDBE assistance and SQLExpress assistance.

Till now for testing purposes I possess an ADS 8.1 licence and it suits me very well for years.

After migrating to new comupter and new OS Windows 10 last summer it all works well.

But only until september WIN10 anniversary update.
Since then ADS server 8.1 haven't worked any more. No connection possible...
I was forced to install ADS 12.0.

After instalation of ADS version 12.0, that only works properly under WIN10, I encountered a problem:

Now ADSDBE still works all right, but SQLExpess not.
I talked to Mr. Boris Borzic http://www.xb2.net but he could not help me, saying that his code should work normaly even with newest ADS server.

SQLExpress log file reports for example:
Thread ID 5
Called from SQLSTATEMENT:EXECUTE(451)
Called from SQLSELECT:EXECUTE(1588)
Called from _APP:SQLEXPRESSSELECTEXECUTE(3050)
SQLString: SELECT ROWID, VALUE, ACCOUNT
FROM DKPOST WHERE LEFT(ACCOUNT, 1) = '4'

And then an error message appears, that stops my program:
»Internal data structures corrupted«.

The same xBase++ program works properly on computers with older version of ADS servers.
Also the ARC utility works properly in all cases including problematic ADS 12.
if I try to execute some SQL statements, that my xBase program produce, there are no obstacles.

It seems, that there is a connection string problem, and not an SQL string problem.
Within my Alaska xBase++ program ti is made like:
::oSqlConn := SqlConnection():new(Alltrim(PPubAdsOdbcName),Alltrim(PPubAdscUserName),Alltrim(PPubAdscPassword))

Can somebody please give me a hint about this issue?

Best regards
Tomaž

Re: SQLExpress problem with Advantage Database Server 12.0

Posted: Tue Jan 17, 2017 10:44 am
by rdonnay
Do I understand that you are using SQLexpress to make an ODBC connection to Advantage Server?

Have you tried to use the Alaska ODBCDBE to make the connection and run the SQL SELECT?

It may be a problem with the Advantage ODBC driver.

Re: SQLExpress problem with Advantage Database Server 12.0

Posted: Tue Jan 17, 2017 2:30 pm
by Auge_Ohr
Tomaz wrote:I have been using xBase, eXpress, ADS and SQLExpress ...
please tell us which Version you are talking about now ?

if Xbase++ v2.x :
remember Express++ and SQLexpress are written with Xbase++
i have read Msg about v2.x where User got »Internal data structures corrupted«.

Re: SQLExpress problem with Advantage Database Server 12.0

Posted: Thu Jan 19, 2017 4:47 am
by Tomaz
rdonnay wrote:Do I understand that you are using SQLexpress to make an ODBC connection to Advantage Server?
Have you tried to use the Alaska ODBCDBE to make the connection and run the SQL SELECT?
It may be a problem with the Advantage ODBC driver.
Thanks, Roger!
It really might be the ADS ODBC problem, but there is no specific warning and ODBC seems to be installed properly, at least comparing with ODBC on my WinXP computer, where ADS 8.1 is installed.

Is there any way to check the ODBC instalation itself whetherit is installed all right or not?
Namely, there is an inside checker for DLLs and it all went good.
I am not aware for anything else to test.
ARC utility works fine with my database even under newest ADS 12, but it does not use ODBC so it is irelevant.

Re: SQLExpress problem with Advantage Database Server 12.0

Posted: Thu Jan 19, 2017 4:54 am
by Tomaz
Auge_Ohr wrote:
Tomaz wrote:I have been using xBase, eXpress, ADS and SQLExpress ...
please tell us which Version you are talking about now ?
if Xbase++ v2.x :
remember Express++ and SQLexpress are written with Xbase++
i have read Msg about v2.x where User got »Internal data structures corrupted«.
Thank you, Jimmy!

xBase++ verson is 1.90.331
eXpress++ is 19.249

But I doubt, that could be the reason.
Because if SQLExpress is wirtten with xBase and Boris Borzic did not warn me about need for newest version for ADS 12, there must be something else.

At my customer I have clients form WInXP, WIN7 to WIN10 with ADS 9.1 and appropriate ODBC and everything works.
At my place, where ADS itself runs on WIN10 and the only ADS that runs on WIN10 is ADS12, I encountered problem.
Before WINDOWS anniversary update I could use version 8.1 and it worked just fine.

Is there any solution to overide Microsoft anniversary update obstacles and again enable older version of ADS?

Re: SQLExpress problem with Advantage Database Server 12.0

Posted: Thu Jan 19, 2017 4:57 am
by Tomaz
rdonnay wrote:Have you tried to use the Alaska ODBCDBE to make the connection and run the SQL SELECT?
That combination i have never tried.
And ADSDBE indeed works fine even under newest ADS.

Re: SQLExpress problem with Advantage Database Server 12.0

Posted: Thu Jan 19, 2017 5:28 am
by Wolfgang Ciriack
And use the arc32.dll and axcws32.dll from the ads client 11.x

Re: SQLExpress problem with Advantage Database Server 12.0

Posted: Thu Jan 19, 2017 6:38 am
by Cliff Wiernik
To reiterate the comment about the latest version. Make certain that your ads client dlls are the newest. Version shipping with Alaska are old and do not work with certain things, ADT's being one of them.

Re: SQLExpress problem with Advantage Database Server 12.0

Posted: Mon Jan 23, 2017 2:45 am
by Tomaz
I found the solution at last, but can not explain it.

After deployment of my old libraries of ADS 8.1 it began to work.

Source: "C:\Program Files\Extended Systems\Advantage 8.1\ODBC\Redistribute\ACE32.DLL"; DestDir: "{sys}" ; Components: ADS
Source: "C:\Program Files\Extended Systems\Advantage 8.1\ODBC\Redistribute\AXCWS32.DLL"; DestDir: "{sys}" ; Components: ADS
Source: "C:\Program Files\Extended Systems\Advantage 8.1\ODBC\Redistribute\ADSLOC32.DLL"; DestDir: "{sys}" ; Components: ADS
Source: "C:\Program Files\Extended Systems\Advantage 8.1\ODBC\Redistribute\ADSLOCAL.CFG"; DestDir: "{sys}" ; Components: ADS
Source: "C:\Program Files\Extended Systems\Advantage 8.1\ODBC\Redistribute\EXTEND.CHR"; DestDir: "{sys}" ; Components: ADS
Source: "C:\Program Files\Extended Systems\Advantage 8.1\ODBC\Redistribute\ANSI.CHR"; DestDir: "{sys}" ; Components: ADS

With intalations from ADS 12.0 instalation repository I have constantly encountered problems - mentioned error of data structers corrupted.

In both cases, after isntalation of ODBC 12 (32 and 64) or ODBC 8.1 I succeded to define an ODBC connection within ODBC Data Source Administrator.
But with version 12.0 it simply did not work.

Did I forget something or miss?

Namely ADS 12 have more sofisticated declaration of character sets (OEM or ANSI and additional LOCAL country setting), but even trying to made some combinations within, there was no gain.

Best regards

Tomaž

Re: SQLExpress problem with Advantage Database Server 12.0

Posted: Mon Jan 23, 2017 3:27 am
by Wolfgang Ciriack
That was the reason i posted
And use the arc32.dll and axcws32.dll from the ads client 11.x
With the files from the 12.x client i did not succeed to build a connection to the ADServer.