PL/SQL Object Question
Date: Sat, 16 Apr 2005 02:47:14 -0500
Message-ID: <Q5ednSp8xqWfXv3fRVn_vA_at_giganews.com>
Hi -
I've created the following SuperType object in Oracle :
create or replace type body ct_calc_ut is
member procedure set_ct_val(pi_ct_val in number) is
begin
ct_value := pi_ct_val;
end set_ct_val;
Also, I've created the following subtype with it's own type body:
CREATE OR REPLACE TYPE CT_CALC_SP_UT UNDER CT_CALC_UT (
Sed_Basins_in_service number(2), Sed_Raw_flow_rate number(7,3), Sed_flocc_free_cl number(7,3), Sed_settled_free_cl number(7,3), App_ph number(7,3), Fltrs_free_cl number(7,3), Fltrs_flow_rate number(7,3),
Fltrs_temp number(7,3),
Fltrs_ph number(7,3),
MEMBER function displayVals return varchar2 )
create or replace type body ct_calc_sp_ut is member function displayVals return varchar2 is
...
..
..
..
..
v_ct_value := v_tot_LGiardia_Rmvl_Cred / v_log_giardia_removal_const;
self.set_ct_val(v_ct_value); !!!! Error Message is Coming here !!!!!!
...
...
end displayVals;
I keep getting an error message, Compilation errors for TYPE BODY
BMARINI.CT_CALC_SP_UT
Error: PLS-00363: expression 'SELF' cannot be used as an assignment
target
Line: 138
Text: self.set_ct_val(v_ct_value);
Error: PL/SQL: Statement ignored
Line: 138
Text: self.set_ct_val(v_ct_value);
I'm not sure what is going on with this....I have seen plenty of examples where an object type is being modified from within a procedure...and I'm prety stumped as to what is going on. If anyone has any help...or ideas, please let me know.
Thanks. Received on Sat Apr 16 2005 - 09:47:14 CEST