create or replace type tom_any_data as object (
type varchar2(1),
vc2 varchar2(32767),
nr number,
dt date,
constructor function tom_any_data(self in out nocopy tom_any_data) return self as result,
member function getType (self in out nocopy tom_any_data) return varchar2,
member procedure setVc2(self in out nocopy tom_any_data, p_vc2 in varchar2),
member procedure setNr(self in out nocopy tom_any_data, p_nr in number),
member procedure setDt(self in out nocopy tom_any_data, p_dt in date),
member function getVc2(self in out nocopy tom_any_data) return varchar2,
member function getNr(self in out nocopy tom_any_data) return number,
member function getDt(self in out nocopy tom_any_data) return date
);
Type created.
create or replace type body tom_any_data as
constructor function tom_any_data(self in out nocopy tom_any_data) return self as result as
begin
self.type := 'U';
return;
end;
member function getType (self in out nocopy tom_any_data) return varchar2 as
begin
return self.type;
end getType;
member procedure setVC2(self in out nocopy tom_any_data, p_vc2 in varchar2) as
begin
self.type := 'V';
self.vc2 := p_vc2;
end setVC2;
member procedure setNr(self in out nocopy tom_any_data, p_nr in number) as
begin
self.type := 'N';
self.nr := p_nr;
end setNr;
member procedure setDt(self in out nocopy tom_any_data, p_dt in date) as
begin
self.type := 'D';
self.dt := p_dt;
end setDt;
member function getVc2(self in out nocopy tom_any_data) return varchar2 as
begin
return self.Vc2;
end;
member function getNr(self in out nocopy tom_any_data) return number as
begin
return self.nr;
end;
member function getDt(self in out nocopy tom_any_data) return date as
begin
return self.dt;
end;
end;
Type created.
select * from user_errors
no data found