I'm updating an ancient codebase written in Delphi 7 using ODBC Express for database connectivity to Delphi Seattle 10 using FireDAC. Currently, ODBC Express OEDataset components are pointed at stored procs and defined with params at design-time, including an @Result param populated from the "Return" function of the Sybase SPs.
If I attempt a simple swap (with minimal adjustment) for FireDAC's TFDStoredProc component (defining params at design-time), I get an "invalid parameter type" error when I include the @Result parameter (DataType=ftInteger, ParamType=ptResult). Without the @Result parameter, the stored procedure executes fine, but then I can't access the "Return" value.
I've mucked about with ResourceOptions.UnifyParams, FetchItems.Items := [fiMeta], ExecFunc instead of ExecProc, leaving out the @Result param, etc etc.
I'm sure I'm missing something very obvious, but I've been banging my head on my desk for a day trying to figure this out. Does anybody have any advice?