Page 1 of 1

Using ADSDBE with Xbase++ 2.0

Posted: Sat Mar 21, 2015 6:32 am
by rdonnay
I ran into a problem with ADSDBE the other day after updating my Xbase++ 2.0 to the latest build.

Suddenly, none of my programs that connect to Advantage Server would connect anymore. I would get 5381 errors (undocumented) and DLL conflict errors.

This is because I had forgotten that I replaced the Ads Client files in the Alaska runtime folders with the most current version. When I updated, these files were overwritten by the old ones from the Alaska installation.

Deployment of ADS client libraries MUST adhere to the following rule: They MUST reside in the same folder as ADSDBE.DLL.

Regardless of what your SET PATH says, the client DLLs are first loaded from the same folder as ADSDBE.DLL.

NOTE: This is not necessarily a problem with deployment of your application to your customers because most deployments include the Alaska runtime all in one folder. This is mostly an aggravation during development because development environments tend to have the Alaska runtime in only one place and use the SET PATH environment to find the DLLs. This is the preferred way to develop Xbase++ applications because eliminating redundancies also eliminates ambiguities.

There are 2 possible solutions to this problem which must be applied every time you update your Xbase++ 2.0 runtime.

1. Remove ACE32.DLL and AXCWS32.DLL from the following folders:

C:\Program Files (x86)\Alaska Software\cxp20\bin
C:\Program Files (x86)\Alaska Software\xpp20\lib
C:\Program Files (x86)\Alaska Software\xpp20\runtime

2. Copy the four (4) ADS client DLLs from the latest ADS version to these 3 folders and overwrite those files. The most current ADS client files are the following: ACE32.DLL, AXCWS32.DLL, ADSLOC32.DLL and AICU32.DLL.

These 4 DLLs can be found in your C:\Program Files (x86)\Advantage 10.0\ARC folder

Re: Using ADSDBE with Xbase++ 2.0

Posted: Sat Mar 21, 2015 12:37 pm
by Cliff Wiernik
Just a note that the files would be similar with the ADS 11.x versions. That is the version we currently use in our Windows Server and Novell SLES/OES server environments.

Re: Using ADSDBE with Xbase++ 2.0

Posted: Tue Feb 02, 2016 9:29 am
by bwolfsohn
Interesting reading this. This has NOT been our experience...

We have a number of clients on version 10.10.0.nn (.6, .28, and .49, among others)

All of our clients and even our webservers (both xbase 1.9 and 2.0) are using the files in the first group.

The second group are the same files in the current version of ads.

We have experienced NO problems on any of our installation except 1. I'll detail that in the next message.

on the c drive, these files are in the same directory as adsdbe.dll

Directory of C:\CUS
07/09/2004 07:02 PM 835,584 ACE32.DLL
07/09/2004 07:01 PM 1,081,344 Adsloc32.DLL
not found
09/22/2009 01:03 AM 143,360 Axcws32.DLL
3 File(s) 2,060,288 bytes

Directory of O:\Program Files (x86)\Advantage 10.10\ARC
03/15/2011 09:10 AM 1,611,104 ace32.dll
03/15/2011 09:10 AM 1,869,152 adsloc32.dll
03/15/2011 09:10 AM 2,037,088 aicu32.dll
03/15/2011 09:10 AM 226,656 axcws32.dll
4 File(s) 5,744,000 bytes

Re: Using ADSDBE with Xbase++ 2.0

Posted: Tue Feb 02, 2016 9:33 am
by bwolfsohn
One of our clients is having problems running under adsserver. Adslocal is not a problem.

there are no ads errors being generated.

but, there are numerous file errors when re-indexing or updating structures.

Similar behavior is exhibited whether running xbase++ 1.9 or 2.0 on the client side.. There is no xbase server at this client. only adslocal or adsserver.

if newer files are required, why are we not getting errors on any of our installations, other than this one.

We have also tried using the newer .dll files in the local \cus directory, with no difference in behavior.. (same problems).

Almost all the errors are 8999 errors.

The client's server is 2008 R2 SP2. ADS 10.10.0.nn is compatible with this server.

We also tried shutting down the anti-virus on both the server and the client with no change.

We also tried running our app from the server, no change.. (both old and new dlls)

Re: Using ADSDBE with Xbase++ 2.0

Posted: Tue Feb 02, 2016 10:29 am
by Cliff Wiernik
What does the adserr log messages state. I have not seen any problems on ADS 11.x for linux or ADS 11.x for win2008R2 or Win2012. In production, this is still 1.9. Am testing with 2.0 and I do not experience issues with ADS 11 server on linux. Don't do adslocal anymore. I have the 2 user developer version on my laptop.

Re: Using ADSDBE with Xbase++ 2.0

Posted: Tue Feb 02, 2016 11:10 am
by bwolfsohn
we're getting 7008, 7144 and 7147 errors.

Re: Using ADSDBE with Xbase++ 2.0

Posted: Tue Feb 02, 2016 11:41 am
by bwolfsohn
and here's the error message:


==============================================================================
ERROR LOG of "D:\CUS\auctionw.exe" Date: 02/01/2016 22:23:32
------------------------------------------------------------------------------
Xbase++ version : Xbase++ (R) Version 2.00.644
eXPress++ version : eXPress++ (c) Version 2.0.261
Operating system : Windows Server 2008 R2 06.01 Build 07601 Service Pack 1
Version : 12.00G1 - User: SW
Database path : d:\CUSAUC\ - d:\CUSAUC\ - Archive:
Current Directory : D:\CUS
Company Name : # YODER & FREY AUCTIONEERS, INC. #
------------------------------------------------------------------------------
ERROR OBJECT:
------------------------------------------------------------------------------
oError:args :
-> VALTYPE: C VALUE: d:\CUSAUC\FL2014.mai
-> VALTYPE: A VALUE: {{"CODE", "C", 8, 0}, {"COMPANY", "C", 40, 0}, {"FNAME", "C", 25, 0}, {"LNAME", "C", 30, 0}, {"ADDR1", "C", 40, 0}, {"ADDR2", "C", 40, 0}, {"CITY", "C", 30, 0}, {"STATE", "C", 2, 0}, {"COUNTRY", "C", 20, 0}, {"ZIP", "C", 12, 0}, {"RESALENO", "C", 16, 0}, {"DLNUM", "C", 16, 0}, {"GSTSTATUS", "C", 1, 0}, {"GSTTAX", "N", 11, 2}, {"TAXSTATUS", "C", 1, 0}, {"TAXSTAT2", "C", 1, 0}, {"TAXSTAT3", "C", 1, 0}, {"TAXRATE", "N", 7, 3}, {"TAXRATE2", "N", 7, 3}, {"TAXRATE3", "N", 7, 3}, {"TOTDOL", "N", 12, 2}, {"TOTTXBLE", "N", 12, 2}, {"TOTTAX", "N", 11, 2}, {"TOTTAX2", "N", 11, 2}, {"TOTTAX3", "N", 11, 2}, {"TOTPREM", "N", 11, 2}, {"TOTCOLL", "N", 12, 2}, {"TOTCC", "N", 12, 2}, {"BXPTOT", "N", 12, 2}, {"DEPOSIT", "N", 12, 2}, {"UNBILLED", "N", 12, 2}, {"CCRATE", "N", 7, 3}, {"PHONE", "C", 14, 0}, {"NOTE", "C", 25, 0}, {"R", "C", 45, 0}, {"EXPINVNO", "C", 6, 0}, {"MAILCODE", "C", 8, 0}, {"SOURCE", "C", 4, 0}, {"BUY_PREM", "N", 7, 3}, {"FPHONE", "C", 14, 0}, {"ID", "L", 1, 0}, {"TOTDOL_BB", "N", 12, 2}, {"UNBILL_BB", "N", 12, 2}, {"TOTDISCTX", "N", 11, 2}, {"CREDMAX", "N", 12, 2}, {"CCNUM", "C", 16, 0}, {"EXPDATE", "C", 7, 0}, {"BKNAME", "C", 20, 0}, {"BKADDR", "C", 20, 0}, {"EMAIL1", "C", 100, 0}, {"PASSWORD", "C", 15, 0}, {"OKTOBID", "L", 1, 0}, {"NEEDBMAIL", "L", 1, 0}, {"BUYERID", "C", 10, 0}, {"CLIENT", "C", 8, 0}, {"POSTDATE", "D", 8, 0}, {"POSTTIME", "C", 8, 0}, {"TOTSLSAZ", "N", 12, 2}, {"TOTSLTXAZ", "N", 11, 2}, {"TAXSTATA", "C", 1, 0}, {"TAXSTATB", "C", 1, 0}, {"TAXSTATC", "C", 1, 0}, {"TAXSTATD", "C", 1, 0}, {"TAXSTATE", "C", 1, 0}, {"TAXSTATF", "C", 1, 0}, {"TAXSTATG", "C", 1, 0}, {"TAXSTATH", "C", 1, 0}, {"TAXSTATI", "C", 1, 0}, {"TAXSTATJ", "C", 1, 0}, {"TAXSTATK", "C", 1, 0}, {"TAXSTATL", "C", 1, 0}, {"TAXSTATM", "C", 1, 0}, {"TAXSTATN", "C", 1, 0}, {"TAXSTATO", "C", 1, 0}, {"TAXSTATP", "C", 1, 0}, {"TAXSTATQ", "C", 1, 0}, {"TAXSTATR", "C", 1, 0}, {"TAXSTATS", "C", 1, 0}, {"TAXSTATT", "C", 1, 0}, {"TAXSTATU", "C", 1, 0}, {"TAXSTATV", "C", 1, 0}, {"TAXSTATW", "C", 1, 0}, {"TAXSTATX", "C", 1, 0}, {"TAXSTATY", "C", 1, 0}, {"TAXSTATZ", "C", 1, 0}, {"LANGUAGE", "C", 15, 0}, {"PHONE2", "C", 14, 0}, {"COUNTY", "C", 20, 0}, {"COKTOBID", "C", 1, 0}, {"SCOMPANY", "C", 40, 0}, {"SFNAME", "C", 25, 0}, {"SLNAME", "C", 30, 0}, {"SADDR1", "C", 40, 0}, {"SADDR2", "C", 40, 0}, {"SCITY", "C", 30, 0}, {"SSTATE", "C", 2, 0}, {"SZIP", "C", 10, 0}, {"SCOUNTRY", "C", 20, 0}, {"DOB", "D", 8, 0}, {"EBAYID", "C", 30, 0}, {"SHIPONINV", "C", 1, 0}, {"PHONETEMP", "C", 14, 0}, {"RECORD_ID", "C", 20, 0}, {"BOTHONINV", "C", 1, 0}, {"OUTBID", "C", 1, 0}, {"DAILYBID", "C", 1, 0}, {"PHONELOC", "C", 15, 0}, {"PREMKICK", "N", 7, 3}, {"MIDI", "C", 12, 0}, {"USERMSG", "C", 5, 0}, {"DLYBIDDATE", "D", 8, 0}, {"RESALENO2", "C", 16, 0}, {"MAKEPERM", "L", 1, 0}, {"COKTOBIDP", "C", 1, 0}, {"INQUERY", "L", 1, 0}, {"GROUP", "C", 8, 0}, {"WEBSITE", "C", 75, 0}, {"DISCRATE1", "N", 7, 3}, {"DISCRATE2", "N", 7, 3}, {"DISCRATE3", "N", 7, 3}, {"DISCLMT1", "N", 8, 0}, {"DISCLMT2", "N", 8, 0}, {"DISCLMT3", "N", 8, 0}, {"TOTDISCTX1", "N", 11, 2}, {"TOTDISCTX2", "N", 11, 2}, {"TOTDISCTX3", "N", 11, 2}}
oError:canDefault : Y
oError:canRetry : N
oError:canSubstitute: N
oError:cargo : NIL
oError:description :
oError:filename :
oError:genCode : 8999
oError:operation : DbCreate
oError:osCode : 0
oError:severity : 2
oError:subCode : 5381
oError:subSystem : BASE
oError:thread : 1
oError:tries : 0
------------------------------------------------------------------------------
CALLSTACK:
------------------------------------------------------------------------------
Called from CHKUPGUT_NEW(1997)
Called from CHKUPGUT(1763)
Called from CHECK_AUCTION_UPDATES(82)
Called from MAIN(414)
------------------------------------------------------------------------------
WORKAREA STATUS:
------------------------------------------------------------------------------
Area Alias Record Index Order Eof Bof Del Found
------------------------------------------------------------------------------

Re: Using ADSDBE with Xbase++ 2.0

Posted: Tue Feb 02, 2016 1:10 pm
by Cliff Wiernik
The only time I get errors related to dbcreate is if the file is open for some reason. That could be a function of the metadata that the smb2 fix fixes.