Migrating from Delphi 7 to Delpi XE5

Discussion of open issues, suggestions and bugs regarding ODAC (Oracle Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
radub
Posts: 105
Joined: Sat 10 Jul 2010 18:46

Migrating from Delphi 7 to Delpi XE5

Post by radub » Sun 19 Oct 2014 15:56

Hello,

We have an n-Tier production application, developed with Delphi 7 along with ODAC latest version.
We try to upgrade the application server tier under Delphi XE5 with the corresponding DACs on Windows 7 64 bit OS.

We encounter 2 problems:
1. Regardless build platform, when trying to update a multiple master-detail structure.
Adding a new record in a detail table - the generated insert query is ok - the detail table is updated;
after that we send a DataRequest to the master table to retrieve the updated structure (master and details); the queries which have to get the inserted/updated records from details don't appear at all, although, the corresponding queries for other unmodified detail table are.

Here are the queries from a tracer at inserting a record in DOCVLN1 table:

Code: Select all

18-Oct-2014 22:49:32.189	TEST	Super(1)	Start:
18-Oct-2014 22:49:32.502			insert into DOCVLN1
			  (DVLN1ID, LINEORD, DOCID, ITEMID, CCOSTID, DVLN1QTY, DVLN1PUNIT, VALTVA, PRCTVA, DVLN1PUNITDEV, VALTVADEV, UMID, UMFACTOR, XLNID, PVA, DISC)
			values
			  (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10, :11, :12, :13, :14, :15, :16)
			:1(INTEGER,IN)=282137856 
			:2(INTEGER,IN)=3 
			:3(INTEGER,IN)=239342 
			:4(INTEGER,IN)=10611 
			:5(INTEGER,IN)=<NULL> 
			:6(FLOAT,IN)=5 
			:7(FLOAT,IN)=9 
			:8(FLOAT,IN)=0 
			:9(FLOAT,IN)=0 
			:10(FLOAT,IN)=9 
			:11(FLOAT,IN)=0 
			:12(INTEGER,IN)=1 
			:13(FLOAT,IN)=1 
			:14(INTEGER,IN)=0 
			:15(FLOAT,IN)=0 
			:16(FLOAT,IN)=0
18-Oct-2014 22:50:36.260	TEST	Super(1)	select DOCVLN1_seq.currval TID from dual
18-Oct-2014 22:55:55.681			update DOCVHD  set
			 DOCVALUE = :1,
			 DOCBTVAVAL = :2,
			 DOCVALUEDEV = :3,
			 DOCBTVAVALDEV = :4
			where
			 DOCID = :5
			:1(FLOAT,IN)=426.61 
			:2(FLOAT,IN)=426.61 
			:3(FLOAT,IN)=426.61 
			:4(FLOAT,IN)=426.61 
			:5(INTEGER,IN)=239342
18-Oct-2014 22:56:09.391			update DOCHD  set
			 DOCTIME = :1
			where
			 DOCID = :2 and
			 DOCDATE = :3 and
			 ISANULAT = :4 and
			 ISVALID = :5 and
			 ORDINALNO = :6
			:1(DATE,IN)=18-Oct-14 22:49:32 
			:2(INTEGER,IN)=239342 
			:3(INTEGER,IN)=20141018 
			:4(INTEGER,IN)=0 
			:5(INTEGER,IN)=0 
			:6(INTEGER,IN)=2000
18-Oct-2014 22:56:42.204	TEST	Super(1)	Commit:
18-Oct-2014 22:56:42.345	TEST	Super(1)	SELECT T.*
			FROM DOCHD T
			WHERE DOCID=239342
18-Oct-2014 22:56:42.822	TEST	Super(1)	SELECT T.*
			FROM DVSN T
			WHERE (SERNOSTOC=0) AND DVLN1ID = :DVLN1ID  
			ORDER BY DVLN1ID
			:DVLN1ID(INTEGER,IN)=256679
18-Oct-2014 22:56:42.897	TEST	Super(1)	SELECT T.*
			FROM DVSN T
			WHERE (SERNOSTOC=0) AND DVLN1ID = :DVLN1ID  
			ORDER BY DVLN1ID
			:DVLN1ID(INTEGER,IN)=256681

			
18-Oct-2014 23:28:33.099	TEST	Super(1)	SELECT T.*
			FROM DOCHD T
			WHERE DOCID=239342
18-Oct-2014 23:28:33.577	TEST	Super(1)	SELECT T.*
			FROM DVSN T
			WHERE (SERNOSTOC=0) AND DVLN1ID = :DVLN1ID  
			ORDER BY DVLN1ID
			:DVLN1ID(INTEGER,IN)=256679
18-Oct-2014 23:28:33.651	TEST	Super(1)	SELECT T.*
			FROM DVSN T
			WHERE (SERNOSTOC=0) AND DVLN1ID = :DVLN1ID  
			ORDER BY DVLN1ID
			:DVLN1ID(INTEGER,IN)=256681


DOCHD is the master table, DOCVLN1, DOCVHD are the detail tables; DVSN is DOCVLN1's detail. There are 2 queries against DVSN because DOCVLN1 had 2 records before the insert.
It appears that problem is related with one similar on SDAC section.

2. On an similar OS (64 bit windows 2003 server), but with Oracle 10.2g database (on a 64 bit Linux server), the application raise "Exception: C:\OraClient64\BIN\*.*", even there is no such folder.
The Oracle InstantClient is for both 32/64 bit version.


Any help would be a big step forward.

Thank you,

Radu B.

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: Migrating from Delphi 7 to Delpi XE5

Post by AlexP » Mon 20 Oct 2014 05:50

Hello,

We cannot reproduce the described problem. Please provide a small sample demonstrating the
problem to alexp*devart*com, including the table creation scripts.

radub
Posts: 105
Joined: Sat 10 Jul 2010 18:46

Re: Migrating from Delphi 7 to Delpi XE5

Post by radub » Thu 23 Oct 2014 06:23

The similar demo was provided for the same topic in the SDAC part.

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: Migrating from Delphi 7 to Delpi XE5

Post by AlexP » Mon 27 Oct 2014 06:49

Thank you, we have received your sample. We will inform you as soon as we have any results.

radub
Posts: 105
Joined: Sat 10 Jul 2010 18:46

Re: Migrating from Delphi 7 to Delpi XE5

Post by radub » Fri 07 Nov 2014 06:45

Hello,

I cannot make any progress in migrating to Delphi XE5.
I am waiting for the DACs to be corrected. Even a beta release will be good to continue testing.

Any news when this will happen?

Thank you
Radu B.

azyk
Devart Team
Posts: 1119
Joined: Fri 11 Apr 2014 11:47
Location: Alpha Centauri A

Re: Migrating from Delphi 7 to Delpi XE5

Post by azyk » Wed 12 Nov 2014 09:30

To solve the issue, please try a solution from the SDAC parallel topic: http://forums.devart.com/viewtopic.php?t=30607 . Please let us know if this solution have worked for ODAC.

radub
Posts: 105
Joined: Sat 10 Jul 2010 18:46

Re: Migrating from Delphi 7 to Delpi XE5

Post by radub » Thu 13 Nov 2014 06:40

Yes it's solved the problem.
Obviuosly it' a bug that affect all DACs.

azyk
Devart Team
Posts: 1119
Joined: Fri 11 Apr 2014 11:47
Location: Alpha Centauri A

Re: Migrating from Delphi 7 to Delpi XE5

Post by azyk » Mon 17 Nov 2014 09:45

It is good to see that the problem has been solved. Feel free to contact us if you have any further questions about ODAC.

Post Reply