Subject RE: [IBO] 4.9.14b32 - Problem with executable SP and output parameters
Author IBO Support List
Thomas,

The change took place in Firebird, not IBO.

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