Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » ElevateDB Technical Support » Support Forums » ElevateDB General » View Thread |
Messages 1 to 7 of 7 total |
Could new ANSI/UNICODE merger in 2.16 have had strange consequences? |
Tue, Mar 25 2014 6:40 AM | Permanent Link |
Adam Brett Orixa Systems | I use ANSI-only data, just for legacy reasons, as my databases started back with DBISAM.
As well as data-tables with content like names + numbers, I have a "configuration settings" database into which I "shovel" data from Delphi. This includes Settings data for DevEx DataLayout controls, which is not saved as a simple Ini-file format, but in a more complex binary format. Since I have shifted to EDB 2.16 my Data-layout controls no longer load / save correctly from their saved settings. There are changes to the management of character-sets between EDB 2.14 and 2.16 (which I don't really understand to be honest!) ... could these changes have resulted in this behaviour & if so how might I fix it? |
Tue, Mar 25 2014 7:51 AM | Permanent Link |
Roy Lambert NLH Associates Team Elevate | Adam
>I use ANSI-only data, just for legacy reasons, as my databases started back with DBISAM. Snap, but I just don't need UNICODE (and I'm sticking with D2006 as well). >As well as data-tables with content like names + numbers, I have a "configuration settings" database into which I "shovel" data from Delphi. This includes Settings data for DevEx DataLayout controls, which is not saved as a simple Ini-file format, but in a more complex binary format. > >Since I have shifted to EDB 2.16 my Data-layout controls no longer load / save correctly from their saved settings. When you say load/save correctly do you mean the data is different or what? If you revert back to 2.14 does the problem go away? There's also a property in 2.15 and 2.16 to set wether the engine/session is ANSI or UNICODE. Its CharacterSet and it should be csAnsi. Have you got that set correctly? >There are changes to the management of character-sets between EDB 2.14 and 2.16 (which I don't really understand to be honest!) ... could these changes have resulted in this behaviour & if so how might I fix it? Without seeing exactly what you're doing its impossible to say but I suspect its possible. I've been told by Tim that there'll be a 2.16b2 out soon to sort a bug I have which is due to converting ANSI to/from UNICODE (it involved Full Text Indexing and a custom WordGenerator). The big change between 2.14 and 2.15 was that Tim rolled both ANSI and UNICODE into a single piece of code. I'm guessing that internally he's doing what Windows and others do which is convert everything to UNICODE for use and convert back and forth to ANSI at the interface with the world. Roy |
Tue, Mar 25 2014 12:25 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Roy,
<< Without seeing exactly what you're doing its impossible to say but I suspect its possible. I've been told by Tim that there'll be a 2.16b2 out soon to sort a bug I have which is due to converting ANSI to/from UNICODE (it involved Full Text Indexing and a custom WordGenerator). >> That's for custom word generators *only*. It has nothing to do with other parts of the engine, and won't affect anything else. Tim Young Elevate Software www.elevatesoft.com |
Tue, Mar 25 2014 12:27 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Adam,
<< As well as data-tables with content like names + numbers, I have a "configuration settings" database into which I "shovel" data from Delphi. This includes Settings data for DevEx DataLayout controls, which is not saved as a simple Ini-file format, but in a more complex binary format. Since I have shifted to EDB 2.16 my Data-layout controls no longer load / save correctly from their saved settings. >> You would have to send me an example before I could comment further. If the data is being managed in a binary format, then there's really no way that the character set would have any effect upon that. However, if you're trying to use a CLOB or some other textual column type with binary data (using pointers, etc.), then it's possible that there could be an issue. Tim Young Elevate Software www.elevatesoft.com |
Tue, Mar 25 2014 12:39 PM | Permanent Link |
Adam Brett Orixa Systems | Thanks as ever Roy,
>>>>Since I have shifted to EDB 2.16 my Data-layout controls >>>>no longer load / save correctly from their saved settings. >>When you say load/save correctly do you mean the data >>is different or what? Sorry to be unclear. The datalayouts control the position of controls on a form (i.e. is label1 top=100, left = 50 etc.) Users can edit the layouts and save changed "looks" to the Config Settings DB. In this DB I just "shovel" the data from the dxLayoutControl as a Stream, I don't do anything clever with it. >>If you revert back to 2.14 does the problem go away? ** YES ** >>There's also a property in 2.15 and 2.16 to set wether the >>engine/session is ANSI or UNICODE. Its CharacterSet >>and it should be csAnsi. Have you got that set correctly? Yes it is set to csANSI (which is correct for all the data in the tables!) But the DevEx components must be using some weird character-set, otherwise I have no idea why I would have been able to use it in 2.14 and not in 2.16. --------- Having seen that the problem does relate to EDB's handling of the data, I will review the say I am saving to stream in my code to see whether that fixes it. If not I'll send Tim a Help request direct. |
Tue, Mar 25 2014 2:06 PM | Permanent Link |
Roy Lambert NLH Associates Team Elevate | Tim
Sorry, I thought it was more general than that. Roy Lambert |
Wed, Apr 2 2014 5:58 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Adam,
<< Having seen that the problem does relate to EDB's handling of the data, I will review the say I am saving to stream in my code to see whether that fixes it. If not I'll send Tim a Help request direct. >> Any progress on this ? My guess is that the stream reading/writing is assuming Unicode strings, or vice-versa, and that the string type used is not the correct one for EDB CLOB columns. Tim Young Elevate Software www.elevatesoft.com |
This web page was last updated on Tuesday, September 17, 2024 at 04:19 AM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |