Kbase P172558: Running stored procedure through Oracle DataServer causes error 14944
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  30/08/2010 |
|
Status: Unverified
SYMPTOM(s):
Running stored procedure through Oracle DataServer causes error 14944
error text: ---- (14944)
error text: ORA-06550: line 1, column 11: ---- (14944)
error text: PLS-00302: component '<STORED_PROCEDURE_NAME>' must be declared ---- (14944)
error text: ORA-06550: line 1, column 7: ---- (14944)
error text: PL/SQL: Statement ignored ---- (14944)
ORACLE error -6550 see "ORACLE Error Messages and Codes Manual". (1252)
Usually a PL/SQL compilation error. (4213)
When some other users other than the owner runs with execute any procedure privileges, the stored procedure runs fine.
Running the same stored procedure from the SQLPLUS using the owner also shows the same errors listed above
SQL> var r number
SQL> exec owner.stored_procedure_name(:r);
BEGIN owner.stored_procedure_name(:r);
END;
*
ERROR at line 1:
ORA-06550: line 1, column 11:
PLS-00302: component '<stored_procedure_name>' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
FACT(s) (Environment):
All Supported Operating Systems
OpenEdge 10.x
Progress 9.x
Oracle DataServer
CAUSE:
A Oracle package exist with the same name as the owner userid on the oracle instance. This caused the fully qualified oracle procedure to be executed from the oracle package. But the stored procedure is mising from that oracle package.
FIX:
Add the stored procedure to the oracle package that has the same name as the owner userid.