Hi, I'm trying to port MDO RC2 to Delphi 2009, I've already make it running, selecting data with TMDOQuery and TMDOSql, BUT I'm with some troubles when I try to run more then 3-8 SQLs, IT just raises an exception... some one can help me?
(sorry my English...)
Thanks
Hello, can you show me the exception error? (your english sounds good).
I don't know how, but I submitted this topic as
"Anonymous", sorry.
The error occurs randomly, not at the first SQL
execution, but at the third or fourth select, dependeing on some unknow circunstances
the error is:
First chance exception at $7519B4F4. Exception class EAccessViolation with message 'Access violation at address 00401B9D in module 'MDO2009Test.exe'. Read of address 0000A38C'. Process MDO2009Test.exe (3848)
where can I post the MDO source code, and the sample code?
may I e-mail it to someone?
the SQL:
pMDOQuery.Close;
pMDOQuery.SQL.Clear;
pMDOQuery.SQL.Add('select * from customer c');
pMDOQuery.SQL.Add('join country t ');
pMDOQuery.SQL.Add('on t.country=c.country ');
pMDOQuery.SQL.Add('where cust_no>=1007 ');
pMDOQuery.Open;
pMDOQuery.FetchAll;
hum... now I know why I'm "nobody", timeout
:D
I'm looking for a developer with Delphi2009 (I have Delphi2007). Between, can you tell me if you have any problem to install MDO on D2009? I have some users that don't got MDO on D2009.
I had to make a lot of changes, because with Delphi2009, a Char uses 2 bytes, not one, so, I had to change to AnsiChar, and Byte... and some other changes, It would be better to show you the code
Ok, send me the code. Do you uses directives? Or do you put comments on your changes? Last question: did you use the code from CVS repository?
...no,... no... and no
:)
sorry... I didn't intended to go on with the source... I tried first to make it work
here is the download:
http://rapidshare.com/files/333623943/mdo-rc2.zip.html
I had started my own port to D2009, but then I noticed this effort. How is it proceeding? I might be able to help out if nobody else wants to.
Hi Elias.
If you got MDO on D2009, pls, send us your changed code. If don't got it yet, go ahead!
I don't have D2009, I need to download a trial version.
Hi.
I'll try again to port MDO, but now downloading from CVS files :)
if some one could help me...
I'll keep contact
thanks
Did anyone successfully ported the code to Delphi 2009/2010.
The link from arvanus is not valid anymore.
Also a recommendation for alternative components is welcome, free or commercial.
thanks
just to keep track:
I worked today (re)changing the code from CVS, I think that in 2 or 3 days, I can make it usable, but I'll need help bugtracking, 'cause, for example, in the same method, a variable of type Char in Delphi 2007, in 2009/2010(I'm working on 2010), can be: AnsiChar, Char, OR even Byte =) uhuuuuuu! that's amazing! So, I changed many Char using IFDEFS for delphi 2009 2010 or Not.
I'll post as Alpha version to everybody test when I can select from tables/SPs/views, and alter data.
Question: is the a way I can post it? cause I'm no MDO developer, and I'm afraid the code isn't accepted from MDO developers :)
for now, I'll post on rapidshare again
Thanks
just to keep track:
I can select data without errors, but extract metadata don't work, I'll fix it, before post an Alpha to test.
(if someone want to test, ask me)
hi arvanus,
i am pleased that your work continues.
I am at the beginning to move a large projekt with several 3rd-party components from Delphi 7 to 2010.
In this project the MDO is used "only" for importing data.
Hope you have success in upgrading MDO to Delphi 2010
Hi!
I think the job is done, I didn't published the code, because it wasn't "tested" exhaustiveness, if you (or somebody else) want to help me testing things like transactions and other, I'll be glad.
Just post a comment.
thanks
Please post your code somewhere even if it is still ''alpha'or 'beta'. I have installed Delphi 2010 and want to port an old D6 app that uses MDO, and this will be a prety good test.
arvanus, I can promote you to developer team member.
Any way, I think is better no merge your code with in the current CVS code, but create a new branch.
http://rapidshare.com/files/394494061/Source.zip
here is the source
please TEST it before using in productions system!
and report any error here!
thanks
Installed the package in D2010 and compiled my app successfully. Seems to work OK, but it is a simple application, few queries and datasets. Anything more specific that should be checked/tested?
I had to change one line in MDOSQL.pas - the $I directive to ..\MDO.inc.
hum, in fact, I don't know, generally the errors appears when you do not expect then to appear :)
I mean: No bug was found after changing the code, but it might still exists :)
I have found a serious issue with non-ASCII characters. Will investigate and come back with more info.
The issue is not related to non-ASCII characters, but to entering any data via a TDBedit control. ASCII field get truncated to the first char only, and non-ASCII are translated to nonsense. Looks like UNICODE data is treated as non-unicode somewhere.
In the DBEdit.OnChange event the text is still OK, but in the OnExit event it is alredy corrupted.
could you reproduce it without TDBEdit, just using fieldByName/paramByName too?
I made a change to TMDOStringField.SetAsString, introducing a TempS: AnsiString, then assigning TempS := Value (which is always UnicodeString) and performing the StrLCopy from the TempS. This helped so that the correct values are now shown in the DBEdit, but I get a DB exception when trying to post - looks like the Params are not correctly set. Still fighting with it ;-)