Subject | Re: [IBO] 4.9.14b32 - Problem with executable SP and output parameters |
---|---|
Author | Thomas Steinmaurer |
Post date | 2012-01-09T07:47:51Z |
Hello Jason,
it worked. Recompiled IBLM with the most recent IBO version against
Firebird 2.5 shows the problem, so it isn't a pure Firebird engine problem.
Regards,
Thomas
> The change took place in Firebird, not IBO.Hmm. I was trying an older IB LogManager version with Firebird 2.5 where
it worked. Recompiled IBLM with the most recent IBO version against
Firebird 2.5 shows the problem, so it isn't a pure Firebird engine problem.
Regards,
Thomas
> I protested the change but that's all I can do.
>
> Jason
>
> -----Original Message-----
> From: IBObjects@yahoogroups.com [mailto:IBObjects@yahoogroups.com] On Behalf
> Of Thomas Steinmaurer
> Sent: 09 January 2012 12:37 AM
> To: IBObjects@yahoogroups.com
> Subject: Re: [IBO] 4.9.14b32 - Problem with executable SP and output
> parameters
>
> Jason,
>
>> This is due to there being no SUSPEND in the body of the procedure.
>
> An executable stored procedure shouldn't need a SUSPEND to return a
> single set of return parameters.
>
>
>> I have put in a request to enhance Firebird to provide an implicit SUSPEND
>> if one is not included in the body of the procedure and there are output
>> fields. So far it doesn't appear that this issue is being given much
>> consideration.
>
> But it did work with an older IBO version (early 4.9.14), thus I thought
> it is a problem in a more recent IBO version.
>
> Thanks,
> Thomas
>
>> Jason
>>
>> -----Original Message-----
>> From: IBObjects@yahoogroups.com [mailto:IBObjects@yahoogroups.com] On
> Behalf
>> Of Thomas Steinmaurer
>> Sent: 09 January 2012 12:04 AM
>> To: IBObjects@yahoogroups.com
>> Subject: Re: [IBO] 4.9.14b32 - Problem with executable SP and output
>> parameters
>>
>> Hello Jason,
>>
>>> migrating a legacy app from D2006 to D2010 for Unicode support.
>>> Currently I'm using 4.9.14b32.
>>>
>>> I have an executable SP (no SUSPEND in the SP) with a few input
>>> parameters and one output parameter:
>>>
>>> SET TERM ^^ ;
>>> CREATE PROCEDURE P_1 (
>>> ...
>>> )
>>> returns (
>>> VAR_ID Numeric(18,0))
>>> AS
>>> BEGIN
>>> VAR_ID = GEN_ID(MYGEN, 1);
>>> ...
>>> END ^^
>>> SET TERM ; ^^
>>>
>>>
>>> In the application I'm using a TIB_StoredProc and:
>>>
>>> ...
>>> myProc.ExecProc;
>>> ...
>>> myVar := FieldByName('VAR_ID').AsInt64;
>>>
>>>
>>> While this has worked in previous IBO versions, even in earlier 4.9.14
>>> versions, with b32, myVar is always 0.
>>>
>>> Any ideas?
>>
>> Did you have time to investigate?
>>
>>
>> Thanks,
>> Thomas
>
>
>
> ------------------------------------
>
> ___________________________________________________________________________
> IB Objects - direct, complete, custom connectivity to Firebird or InterBase
> without the need for BDE, ODBC or any other layer.
> ___________________________________________________________________________
> http://www.ibobjects.com - your IBO community resource for Tech Info papers,
> keyword-searchable FAQ, community code contributions and more ! Yahoo! Groups Links
>
>
>