Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » ElevateDB Technical Support » Support Forums » ElevateDB General » View Thread |
Messages 1 to 10 of 17 total |
Lazarus 9.26 with EDB 2.02 Unicode getting error #206 on Tutorial App |
Sat, Apr 18 2009 4:07 AM | Permanent Link |
Todd Neuman | Hi Guys,
I just picked up the LCL and VCL (D2009) versions of ElevateDB (2.02 Build 11) and I'm playing around with them now. I'm trying to do the Tutorials from the Product Manuals and I just can't get it to go on the Lazarus implementation because whenever I set the Connected Property to True on the EDBSession1 component in Lazarus I immediately get the following text: Elevate DB Error #406 Invalid data type identifier '' But I can set the EDBEngine1.Active to True without a problem. When I do what I believe are the exact same tasks in D2009 (Unicode) it works just fine and I can see the sample data. I also tried the Remote example and again it works in D2009 but I get the same error in Lazarus/FPC. I'm new to Lazarus as well (only found out it existed from the tech article Tim did for the Win CE) and so I'm using Lazarus 0.9.26 and the only component that I've added to it is the Elevate DB 2.02 Build 11 Unicode. Oddly when I drop a TEDBEngine on my D2009, it automatically populates many of the properties (such as Backup Extension, Catalog Extension, etc) but on the Lazarus implementation many of those fields are blank. Thanks for any and all help, Cheers, Todd |
Tue, Apr 21 2009 2:11 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Todd,
<< Oddly when I drop a TEDBEngine on my D2009, it automatically populates many of the properties (such as Backup Extension, Catalog Extension, etc) but on the Lazarus implementation many of those fields are blank. >> Per our phone conversation, I'm checking this out in more detail. My first attempts at recreating what you're seeing haven't worked. -- Tim Young Elevate Software www.elevatesoft.com |
Wed, Apr 22 2009 11:20 AM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Todd,
This is a weird one. The first time I installed the Lazarus 0.926 Win32-Unicode version of EDB, I saw the problem that you were seeing. However, once I uninstalled it and installed the Lazarus 0.926 Win32 (non-Unicode) version of EDB, the problem did not occur. So, I uninstalled the non-Unicode version and re-installed the Unicode version, and now it works also. So, I'm not sure what is going on. There may be an issue with the design-time IDE/Object Inspector and WideStrings. I'll do some more investigating. -- Tim Young Elevate Software www.elevatesoft.com |
Thu, Apr 23 2009 4:57 PM | Permanent Link |
Todd Neuman | Hi Tim,
Because the only thing I've done in Lazarus so far is try to get ElevateDB running, I tried removing all Elevate LCL components from my system and uninstalling Lazarus. I made sure that even the original folders were removed from the hard drive after the uninstall. I then installed Lazarus to its default (C:\Lazarus) and the LCL Unicode to C:\Comp\EDB V2\Lazarus Unicode 926 and installed the Design-time LPI. I then tried dropping an Engine and Session (both Remote and Local) on to a plain application and I still get the same error for Invalid Data Type ''. I had thought it might be a Unicode issue, so I removed the Unicode version and installed the ANSI version and got the exact same result. Since I got the same error result I removed the ANSI version and put the Unicode back in service and still got the same error. (There seems to be a trend I was doing some tracing into the code and playing around. I found that the DEFAULT_SIGNATURE constant declared in edbenginemgr is blank when the TEDBEngineInstance.Initialize is called to set FSignature in edbcomps. I think this is in line with why when I drop a component on the form the default values for a bunch of the properties are not filled in. I'm going to continue playing with it, but do you have any ideas on this? It seems like the Delphi Assignable Constants type compiler flag but I can't see anything like it in the compiler options on Lazarus. Cheers, Todd |
Thu, Apr 23 2009 5:16 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Todd,
<< Because the only thing I've done in Lazarus so far is try to get ElevateDB running, I tried removing all Elevate LCL components from my system and uninstalling Lazarus. I made sure that even the original folders were removed from the hard drive after the uninstall. I then installed Lazarus to its default (C:\Lazarus) and the LCL Unicode to C:\Comp\EDB V2\Lazarus Unicode 926 and installed the Design-time LPI. I then tried dropping an Engine and Session (both Remote and Local) on to a plain application and I still get the same error for Invalid Data Type ''. I had thought it might be a Unicode issue, so I removed the Unicode version and installed the ANSI version and got the exact same result. Since I got the same error result I removed the ANSI version and put the Unicode back in service and still got the same error. (There seems to be a trend >> Yes, it's all related to the fact that the string assignments aren't working properly at design-time, but only in certain cases. Of course, I cannot figure out yet what those cases are. Right now, for instance, it's working fine in my Lazarus IDE. << I was doing some tracing into the code and playing around. I found that the DEFAULT_SIGNATURE constant declared in edbenginemgr is blank when the TEDBEngineInstance.Initialize is called to set FSignature in edbcomps. I think this is in line with why when I drop a component on the form the default values for a bunch of the properties are not filled in. I'm going to continue playing with it, but do you have any ideas on this? It seems like the Delphi Assignable Constants type compiler flag but I can't see anything like it in the compiler options on Lazarus. >> No, it can't be that because these aren't constant assignments, rather they are assignments to normal string members of a class *from* constants. The problem is most likely related to the design-time IDE, the object inspector, and how the published properties are reflected in the object inspector, but it could also be some other glitch in the compiler code generation. -- Tim Young Elevate Software www.elevatesoft.com |
Thu, Apr 23 2009 6:40 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Todd,
What are you seeing at runtime ? For example, putting the following code on a blank form: procedure TForm1.Button1Click(Sender: TObject); begin Engine.Active:=True; ShowMessage(Engine.Signature); end; Do you see the actual signature, even though the TEDBEngine on the form is still missing the signature in the object inspector ? -- Tim Young Elevate Software www.elevatesoft.com |
Thu, Apr 23 2009 7:14 PM | Permanent Link |
Todd Neuman | "Tim Young [Elevate Software]" wrote:
Do you see the actual signature, even though the TEDBEngine on the form is still missing the signature in the object inspector ? I will try this in a bit. I'm off on a slightly different idea right now. I have been using Lazarus 0.9.26.2 (the final point 2) and I noticed on your WinCE demo you were using 0.9.26 BETA. The theory I'm trying here is that there was some incompatibility / instability introduced in the .2 subrelease. Here are the steps I've taken . . . 1 - Uninstalled Lazarus 2 - Uninstalled EDB LCL Ansi & Unicode 3 - Removed the appropriate folders from the hard drive 4 - Installed Lazarus 0.9.26 5 - Installed EDB LCL Ansi After that it ALL WORKED just like it was supposed to! Thinking that life might be better now, I removed EDB LCL ANSI from the Lazarus packages and installed the Unicode version. Now whenever I attempt to install the EDB LCL Unicode, I get the following message: "C:\Comp\EDB V2\Lazarus Unicode 926\code\source\edbcursor.pas(1,1) Fatal: Compilation aborted" and the text editor is simply highlighting the first row of the file (the {***** row). If I try to install it again, I get the same message but it is referencing a different file, such as edbcommsmgr. Needless to say, I don't get the EDB components on my page and I can't use them. I know the code should install because it is the same code that I have been successfully installing in 0.9.26.2. I am using the Lazarus 0.9.26 binaries from Source Forge downloaded this afternoon and I also downloaded another copy of the EDB LCL Unicode files this afternoon too but it didn't change anything. Any chance you could try replicating a new Lazarus 0.9.26 install with just the EDB LCL Unicode and see what happens on side? Thank you very much for your attention to this matter. I realize this is a tricky problem and I do appreciate the time and effort you are putting in on this. I will try your request tonight and post the results. Cheers, Todd |
Thu, Apr 23 2009 7:25 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Todd,
<< I will try this in a bit. I'm off on a slightly different idea right now. I have been using Lazarus 0.9.26.2 (the final point 2) and I noticed on your WinCE demo you were using 0.9.26 BETA. The theory I'm trying here is that there was some incompatibility / instability introduced in the .2 subrelease. >> I noticed the same thing, and was just about to try the latest 0.926.2 version. << After that it ALL WORKED just like it was supposed to! Thinking that life might be better now, I removed EDB LCL ANSI from the Lazarus packages and installed the Unicode version. Now whenever I attempt to install the EDB LCL Unicode, I get the following message: "C:\Comp\EDB V2\Lazarus Unicode 926\code\source\edbcursor.pas(1,1) Fatal: Compilation aborted" and the text editor is simply highlighting the first row of the file (the {***** row). >> This is a weird issue with the compiler that crops up occasionally. It's almost like the compiler loses its mind for a second and can't deal with a perfectly valid source unit. I've fixed it by removing all .ppu and .o files from the source directory, and then retrying the installation/compilation. That usually fixes it. << Any chance you could try replicating a new Lazarus 0.9.26 install with just the EDB LCL Unicode and see what happens on side? >> I will do so tonight. At the very least, I should be able to consistently reproduce the issue with the 0.926.2 version that you were seeing, since I'm pretty sure that the differences we were seeing were probably down to the version being used. -- Tim Young Elevate Software www.elevatesoft.com |
Thu, Apr 23 2009 8:08 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Todd,
Yep, it happens reliably with 0.926.2. Now that I have something that does it all of the time, I can play around and see what the issue is. -- Tim Young Elevate Software www.elevatesoft.com |
Thu, Apr 23 2009 11:03 PM | Permanent Link |
Todd Neuman | "Tim Young [Elevate Software]" wrote:
Yep, it happens reliably with 0.926.2. Now that I have something that does it all of the time, I can play around and see what the issue is. Hi Tim, I apologize that I didn't put that detail in sooner in the thread - as a fellow software developer I know that it's the details that matter. Thank you for the hint about deleting the .ppu and .o files, it worked perfectly and I now have a working DB model in Unicode with the base Lazarus 0.9.26. I will play with that version until you have a solution for the 0.9.26.2 subrelease. Cheers, Todd |
Page 1 of 2 | Next Page » | |
Jump to Page: 1 2 |
This web page was last updated on Sunday, May 19, 2024 at 08:46 AM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |