Re: how to return a record from pl/sql function
From: Svend Jensen <svend.jensen_at_it.dk>
Date: Tue, 11 Feb 2003 20:44:04 +0100
Message-ID: <3E495284.7030300_at_it.dk>
Date: Tue, 11 Feb 2003 20:44:04 +0100
Message-ID: <3E495284.7030300_at_it.dk>
web guy wrote:
> Yes that is what I want to do, but I can't determine what to
> put as the return value for the function in the package body.
>
> If in my package my_pkg I define a record:
>
edited:
> type my_rec_typ is record (
> field1 char,
> field2 number,
> filed3 varchar2);
- define return rec type: my_rec my_rec_typ;
>
> and the function:
>
- noe this should work:
> function f_my_function (userfield IN VARCHAR2)
> return my_rec;
>
> This compiles (in JDeveloper).
>
> When I build the package body:
>
> package body my_pkg as
>
> function f_my_function (userfield IN VARCHAR2)
> return theData my_pkg.my_rec
> as
> cursor .....
>
> The compiler does not like the return theData my_pkg.my_rec
>
> So I do I return the record to the Oracle Form that called the function?
>
> thank you.
> "Ethel Aardvark" <bigjobbies_at_hotmail.com> wrote in message
> news:1a8fec49.0302110214.32fa2bd6_at_posting.google.com...
>
>>Tim,
>>
>>I haven't done this for a while, but can't you define a record type in
>>the package and use that as the package-level data type rather than
>>using the cursor type?
>>The function could copy fields from the cursor to the record a field
>>at a time, but everywhere else would see it as a single variable (of a
>>record type).
>>
>>Sorry, no example and no real chance to try it!
>>
>>Regds,
>>
>>ETA
>>
>>(P.S., Hope this makes sense!)
>>
>>"web guy" <web-guy01_at_attbi.com> wrote in message
>
> news:<rlV1a.66158$vm2.37868_at_rwcrnsc54>...
>
>>>I have been successful returning a single value from a function, however
>>
> I
>
>>>now need to return a record and am having difficulties. I want my
>>
> function
>
>>>to be part of a package.
>>>
>>>I want the record to be a cursor record, because I only want to select
>>>certain fields from a table, not the entire row.
>>>
>>>I can figure out what to put in as the return entry, when I don't
>>>create the cursor record until after I define the cursor.
>>>
>>>Can anyone provide an example? I searched and I can't seem to
>>>find one.
>>>
>>>Thanks.
>>>
>>>Tim
>>
>
>