Watch, Follow, &
Connect with Us

For forums, blogs and more please visit our
Developer Tools Community.


Welcome, Guest
Guest Settings
Help

Thread: BDE to FireDac



Permlink Replies: 3 - Last Post: Aug 23, 2017 5:36 AM Last Post By: Evgeny Rex
Jader Moraes

Posts: 13
Registered: 12/25/16
BDE to FireDac
Click to report abuse...   Click to reply to this thread Reply
  Posted: Dec 2, 2016 5:02 AM
I'm converting from D7 (BDE) to XE6 (FireDac) and it's almost done..

I'm getting this error when opening a FDQuery:

Project Project.exe raised exception class EFDException with message '[FireDAC][Phys][MSSQL]-338. Param [@pParam] type changed from [ftFixedChar] to [ftString]. Query must be reprepared. Possible reason: an assignment to a TFDParam.AsXXX property implicitly changed the parameter data type. Hint: use the TFDParam.Value or appropriate TFDParam.AsXXX property'.

This happens when the field is a fixed char in the SQL, if I change the param type in the DFM file to ftFixedChar it works, but I have over 500 forms to review.. Does it have a easier way to solve?

Thanks in advance.

Edit. : The error occurs mostly on TFDStoredProcs.

Edited by: Jader Moraes on Dec 2, 2016 5:59 AM

Dmitry Arefiev

Posts: 1,406
Registered: 12/7/03
Re: BDE to FireDac
Click to report abuse...   Click to reply to this thread Reply
  Posted: Dec 2, 2016 6:17 AM   in response to: Jader Moraes in response to: Jader Moraes
I believe that was fixed after DX10.1

--
With best regards,
Dmitry
Jader Moraes

Posts: 13
Registered: 12/25/16
Re: BDE to FireDac
Click to report abuse...   Click to reply to this thread Reply
  Posted: Dec 2, 2016 7:16 AM   in response to: Dmitry Arefiev in response to: Dmitry Arefiev
Dmitry Arefiev wrote:
I believe that was fixed after DX10.1

--
With best regards,
Dmitry

I don't own a DX10.1 licence, was hoping i could get this to work.. Looks like i'll have to review each form, hopefully it's a TFDStoredProc problem exclusively...
Evgeny Rex

Posts: 1
Registered: 10/22/06
Re: BDE to FireDac
Click to report abuse...   Click to reply to this thread Reply
  Posted: Aug 23, 2017 5:36 AM   in response to: Jader Moraes in response to: Jader Moraes
Try
FDStoredProc1.FetchOptions.Items := FDStoredProc1.FetchOptions.Items - [fiMeta];
before ExecProc (or do the same in TFDConnection globally)

Jader Moraes wrote:
I'm converting from D7 (BDE) to XE6 (FireDac) and it's almost done..

I'm getting this error when opening a FDQuery:

Project Project.exe raised exception class EFDException with message '[FireDAC][Phys][MSSQL]-338. Param [@pParam] type changed from [ftFixedChar] to [ftString]. Query must be reprepared. Possible reason: an assignment to a TFDParam.AsXXX property implicitly changed the parameter data type. Hint: use the TFDParam.Value or appropriate TFDParam.AsXXX property'.

This happens when the field is a fixed char in the SQL, if I change the param type in the DFM file to ftFixedChar it works, but I have over 500 forms to review.. Does it have a easier way to solve?

Thanks in advance.

Edit. : The error occurs mostly on TFDStoredProcs.

Edited by: Jader Moraes on Dec 2, 2016 5:59 AM

Legend
Helpful Answer (5 pts)
Correct Answer (10 pts)

Server Response from: ETNAJIVE02