ZEOS LIB components ? lazarus / 7-LCL ---------------------------------------------------------------------- Lightning · 2004-06-29 07:42 This is a set of CrossDataBase+CrossPlatform components that work in Delphi/Kylix and the Zeos team say that it's ok if someone wants to adapt them to work in Lazarus+FPC but nobody from the Zeos team has the time to do this so it's up to the Lazarus team or someone else who wants Lazarus to support them in the future. See them in action here: http://zeoslib.net/ PS: I have been using them in Delphi for a while. ---------------------------------------------------------------------- Marc · 2004-06-29 10:48 Go ahead I would say ---------------------------------------------------------------------- Lightning · 2004-06-29 13:13 I'm already doing something: - Translating Lazarus to Romanian - Adapting one of my own components, a button like those in XP with skin, glyph, transparency and spy protection. The problem is that i used too much Win32 specific messages and API funcs so it's not that simple to make it CrossPlatform. PS: The Zeos component set is verry complex and it may take a long time to do it all. ---------------------------------------------------------------------- IgD · 2004-07-13 00:23 Have you guys actually looked at the zeoslib source?  I'm curious as to why it would be so difficult to port to Lazarus.  Lazarus is so similar to Delphi in so many ways.  How hard could it be?  I might be interested in working on this project. ---------------------------------------------------------------------- Lightning · 2004-07-14 10:55 Go to http://zeoslib.net/ on the latest version forum you'll see my question about Lazarus support, you should download version 5 and 6 (I used 5 mostly) and check the code, they have removed some DB engines that were supported in version 5, but enhanced version 6 to have a single set of comps. for all DB servers. You might be right about the "difficult". I like these components much more than the Delphi/Kylix DBExpress, you'll see what i mean after you download'em. They are better than UIB and Lazarus will be much more powerful with them ---------------------------------------------------------------------- IgD · 2004-09-11 20:02 Did you ever try to install Zeoslib in Lazarus?  I got it to install and work with Delphi 7.  I was pretty impressed... ---------------------------------------------------------------------- Lightning · 2004-09-14 13:58 The project is "BIG" so there is a lot to understand before doing this. As soon as i have some time i will try to do some parts. ---------------------------------------------------------------------- IgD · 2004-11-08 21:34 Hey did you ever look at this any further?  Just curious. ---------------------------------------------------------------------- Lightning · 2004-11-08 21:40 FPC doesn't support some of the syntax. "This kind of property cannot be published" I'm stuck ---------------------------------------------------------------------- IgD · 2004-11-08 23:33 I might be able to help.  Do you want to set up a private forum on my website for development? ---------------------------------------------------------------------- Lightning · 2004-11-09 09:46 If you want to ... But there's always the mailing list and the IRC channel wich are verry active. I could send you my files, it's not much but a good starting point. ---------------------------------------------------------------------- Lightning · 2004-11-09 10:09 Good news, let's help them: http://zeoslib.net/modules.php?name=Forums&file=viewtopic&t=1620&sid=2 2c78c0000280cf644f8af300b90f07e ---------------------------------------------------------------------- Lightning · 2004-11-09 18:15 I sent an e-mail to Zeos developers to see who's working on the Lazarus implementation of Zeos. Maybe they want us to help them adapting Zeos to Lazarus. ---------------------------------------------------------------------- IgD · 2004-12-09 02:43 Lightning, any news?  I'm getting more and more motivated to check this out.  Also, Lazarus seems to have some basic MySQL support. ---------------------------------------------------------------------- Lightning · 2004-12-09 20:02 One of the Lazarus users is working on variants and interfaces to make the code compilable with FPC, if he succedes the rest won't be that hard. I contacted the Zeos team and they provided some docs and some info about a testing environment used for Zeos wich also needs to be ported. The Zeos team doesn't want to break Delphi/Kylix compatibility. IgD you can also join the Zeos team, contact Sergey Seroukhov and check http://zeoslib.net/modules.php?name=Content&pa=showpage&pid=7 ---------------------------------------------------------------------- IgD · 2005-01-15 14:15 Lightning, have you heard any more updates on using Zeoslib with Lazarus?  I want to start using Lazarus with DB stuff but my work won't permit installation of open source DB's.  We are required to use Microsoft SQL Server. ---------------------------------------------------------------------- matthijs · 2005-01-15 15:19 Cannot you use ODBC components then? I think there is a library to connect through ODBC. ---------------------------------------------------------------------- Lightning · 2005-01-16 10:22 IgD, not yet completed, we are waiting for a version of FPC with full variant and interfaces support because Zeos uses too much Delphi/Kylix specific syntax, but as soon as FPC will support that kind of syntax we will port all the Zeos code to Lazarus, you could join the Zeos team and help if you want to. ---------------------------------------------------------------------- Stevie · 2005-03-16 14:27 Hi, I am a member of the ZeosLib-Team and I tried to port the zeosdbo (6.5.1 alpha) to lazarus/fcp. But I have some problems porting the component-package to fcp because the db-objects (i.e. TDataSet) in fpc are quite different to the delphi-objects. Is there a newer version of them available than the version included with the newest lazarus (0.9.6) ? P.S.: I'm totally new to lazarus... ;-) Regards Stevie ---------------------------------------------------------------------- jesusr · 2005-03-16 15:26 Quote from: "Stevie"Hi, I am a member of the ZeosLib-Team and I tried to port the zeosdbo (6.5.1 alpha) to lazarus/fcp. But I have some problems porting the component-package to fcp because the db-objects (i.e. TDataSet) in fpc are quite different to the delphi-objects. Is there a newer version of them available than the version included with the newest lazarus (0.9.6) ? P.S.: I'm totally new to lazarus... ;-) Regards Stevie I'm afraid not too much changes in TDataset. Can you show what the differences are? what would be the solution? ---------------------------------------------------------------------- Anonymous · 2005-03-21 16:10 Quote from: "jesusr"I'm afraid not too much changes in TDataset. Can you show what the differences are? what would be the solution?Hello, some methods are not present (Lookup, Locate), but this is no problem, because they are overwritten anyway. But there is a serious problem in calling an inherited abstract method which results in an compilation-error: "Abstract Methods can't be called directly" for which I do not know any solution. Furthermore I have the error: "Procedure overloading is switched off" BUT the -SO-Switch is off!! Is there a problem with overloading/overriding and/or abstract methods in FPC?? Regards Stevie ---------------------------------------------------------------------- jesusr · 2005-03-21 20:32 Quote from: "Anonymous"Quote from: "jesusr"I'm afraid not too much changes in TDataset. Can you show what the differences are? what would be the solution?Hello, some methods are not present (Lookup, Locate), but this is no problem, because they are overwritten anyway. But there is a serious problem in calling an inherited abstract method which results in an compilation-error: "Abstract Methods can't be called directly" for which I do not know any solution. Furthermore I have the error: "Procedure overloading is switched off" BUT the -SO-Switch is off!! Is there a problem with overloading/overriding and/or abstract methods in FPC?? Regards Stevie Try to use -Sd for delphi compatibility, perhaps for porting from delphi, this would be better. if you have more abstract methods problem's, please describe which functions/procedures are failing. ---------------------------------------------------------------------- Marc · 2005-03-22 09:57 afaik calling an inherited abstract method in Delphi rewsults in an EAbstract exception ---------------------------------------------------------------------- Stevie · 2005-03-22 16:01 Quote from: "jesusr"Try to use -Sd for delphi compatibility, perhaps for porting from delphi, this would be better. if you have more abstract methods problem's, please describe which functions/procedures are failing. I used the -Sd-Switch already! The problem was that I did not overload a procedure that is already overloaded in the Delphi-TDataSet but not in FPC and is declared as override. There are many differences, that are not implemented yet in the TDataSet... Quote from: "Marc"afaik calling an inherited abstract method in Delphi rewsults in an EAbstract exception In Delphi the method that is called is not abstract, but I worked around it for now. Ok, now it compiles and i installed the package! But when I try to open the DataSet an EVariantError raised with the message "Method Unassigned not yet supported" which is raised by the following method in dsparams.inc - i think: Code: [Select]constructor TParam.Create(ACollection: TCollection); begin   inherited Create(Collection);   ParamType:=ptUnknown;   DataType:=ftUnknown;   FValue:=Unassigned;  // <---   FNull:=True; end; When I try to debug my test-project, I also cannot debug into the db- sources nor into the zeos-sources... P.S. Is works!!!  :mrgreen: (with a little modification in the variants-unit... ) But still, I have got a question: How must I configure the debugger to step into the units? I worked around it by putting them into my project-path... :oops: ---------------------------------------------------------------------- Marc · 2005-03-23 10:45 Variant support is not complete in FPC. The error you get means that the implicit VarClear (when assigning unassigend) is not yet implemented. Chances are that this won't get fixed before FPC 2.0 is released, so your patches are more than welcome if you want it in the 2.0 release. About debugging dbsources, if you have the FPC sources, you can compile a debug version with Code: [Select]make OPT=-g in the fcl and/or packages base dir followed by a Code: [Select]make install PREFIX=/your_path_to_a_location_to_install_you_debug_units in those dirs. If you place this location in your fpc.cfg before the other paths, they get used first. ---------------------------------------------------------------------- Stevie · 2005-03-23 11:12 Quote from: "Marc"Variant support is not complete in FPC. The error you get means that the implicit VarClear (when assigning unassigend) is not yet implemented. Chances are that this won't get fixed before FPC 2.0 is released, so your patches are more than welcome if you want it in the 2.0 release. I "fixed" it as follows: Code: [Select]function Unassigned: Variant; // Unassigned standard constant begin //  NotSupported('Unassigned');   sysvarclear(Result); end; Quote from: "Marc"About debugging dbsources, if you have the FPC sources, you can compile a debug version with Code: [Select]make OPT=-g in the fcl and/or packages base dir followed by a Code: [Select]make install PREFIX=/your_path_to_a_location_to_install_you_debug_units in those dirs. If you place this location in your fpc.cfg before the other paths, they get used first. Does this mean, I have to recompile the sources? Sorry, I am not very familiar with make an these tools... ---------------------------------------------------------------------- Marc · 2005-03-23 18:12 Quote from: "Stevie"Does this mean, I have to recompile the sources? Sorry, I am not very familiar with make an these tools... Yes. By default fpc is shipped with release units without any debug info. So if you want debug info you have to make them yourself. If you are on linux, the only thin you have to do to type the commands I gave. On win32 you have to make sure that the make shipped in your fpc\bin dir is the first in your path. ---------------------------------------------------------------------- Anonymous · 2005-03-24 15:10 Ok, I did as you said, but there is still the message "The file dataset.inc was not found. Do you want to locate it yourself" But no matter if i click on Yes or No the next message is "The file \dataset.inc does not exist." I have Lazarus 0.9.6 beta (25.02.2005) on WindowsXP ---------------------------------------------------------------------- Lightning · 2005-03-24 20:48 Try getting the latest snapshot from http://www.ca.freepascal.org/Lazarus/ Good news ---------------------------------------------------------------------- Stevie · 2005-04-04 13:55 Quote from: "Lightning"Try getting the latest snapshot from http://www.ca.freepascal.org/Lazarus/ Good news Ok, I got the latest version today. I've installed the packages but there is still the error which I mentioned above. Can anyone give me a detailed description, how to make my lazarus work with debug units? :roll: Another error which i got was an access violation when setting master/detail with two TZTables. I assume an error in the TDataSet implementation but I did not look more exactly at the DB-Sources. Another (maybe a little bit off topic) question: Will there be the TDBLookupComboBox or/and TDBLookupListBox in the LCL in future?? P.S.: Ok, search before post... :oops: I have found this topic(http://www.lazarus.freepascal.org/index.php?na me=PNphpBB2&file=viewtopic&t=556&highlight=master+detail) about the master/detail problem/workaround. ---------------------------------------------------------------------- Marc · 2005-04-06 16:21 Quote from: "Stevie" Another (maybe a little bit off topic) question: Will there be the TDBLookupComboBox or/and TDBLookupListBox in the LCL in future?? As soon as someone implements them :-) (but I expect that they will be added someday)