Path: dp-news.maxwell.syr.edu!spool.maxwell.syr.edu!drn.maxwell.syr.edu!news.maxwell.syr.edu!postnews.google.com!f14g2000cwb.googlegroups.com!not-for-mail
From: "G-Man" <gfeiner@gmail.com>
Newsgroups: comp.databases.oracle.server
Subject: Re: Object type change on the fly
Date: 2 Feb 2005 20:32:39 -0800
Organization: http://groups.google.com
Lines: 10
Message-ID: <1107405159.554366.281840@f14g2000cwb.googlegroups.com>
References: <3a0fcf7d.0502020228.463fd57d@posting.google.com>
NNTP-Posting-Host: 12.170.133.244
Mime-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
X-Trace: posting.google.com 1107405163 945 127.0.0.1 (3 Feb 2005 04:32:43 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Thu, 3 Feb 2005 04:32:43 +0000 (UTC)
In-Reply-To: <3a0fcf7d.0502020228.463fd57d@posting.google.com>
User-Agent: G2/0.2
Complaints-To: groups-abuse@google.com
Injection-Info: f14g2000cwb.googlegroups.com; posting-host=12.170.133.244;
   posting-account=3YqHOg0AAACZSrkMLY_zQiVZdwBR85Uu
Xref: dp-news.maxwell.syr.edu comp.databases.oracle.server:234868

Not sure I followed everything your looking for, but here goes.

It is generally a bad idea create objects on the fly.  Why not create a
type and procedure for each "type" you need in a package (overloading
procedures for each type).  Depending on which type is passed, it will
run the appropriate procedure.

Put all the code you need to run in the procedures.  Return a ref
cursor back to the calling code.

