cancel
Showing results for 
Search instead for 
Did you mean: 

Reason for Error "Unknown field type (28) encountered."

Former Member
0 Kudos

Hello,

I'm from Germany, so sorry for my English first.

I got the error "Unknown field type (28) encountered." when I run
a simple "SELECT * FROM system.functions" on my ADD-Database.
The solution for this problem is found in the KBA 2145730.
If I use the ADS DLLs v. 11.10.0.22 I got the error, but if I use the
ADS DLLs v. 9.10.0.35 everything is fine.
For solving other problems I think it would be better to use the newest
version, but in this case I can't. At this time it is not a problem, because
I can't find any real reason so that I must update for now, but nevertheless
I'd like to know, why this error occurs. What is type 28? Or (what real
would be great) can I make changes to my software, so that I can
avoid this problem? I hope you can help me with this "riddle" and wish
all of you a great day.

Greetings from Germany,
Gerit Freericks

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

For backwards compatibility the server will send different field types (i.e. char vs varchar, ansi vs unicode, etc).

The server determines this based on the ACE (Advantage Client Version).  By swapping in new DLLs you are telling the server that you are running a newer client and it can send the newer field types etc for the system tables.

In addition to swapping the DLLs re-build the application with the new TDataSet (re-compile) and this should resolve your issue.

For the field types look at ACE.pas  (or ACE.h) in the TDataSet (on the latest).  It looks like 28 is an NMEMO (Unicode Memo field)

Former Member
0 Kudos

Hello Mr. Sherman,

Thanks for your reply!
I'm toying with the idea of appending missing fields in the source,

like described in the comment in the ace.pas, but I think I have to wait
until all of our customers can be updated to v.11 and
install the updated components the "right" way.

Greetings from Germany,

Gerit Freericks

Answers (0)