PLS-00492: variable or constant initialization may not refer to functions declared in the same package

oracle

PLS-00492: variable or constant initialization may not refer to functions declared in the same package
Cause: If a package specification p declares a function f, that function may not be used in any variable declarations in that same package specification. This is because of a circular instantiation problem: in order to fully instantiate the package specification, the variable must be initialized. To initialize the variable, the function body code in the package body must be executed. That requires that the package body be instantiated. However, the package body cannot be instantiated until the package specification is fully instantiated.
Action: Remove the reference to the function from the variable initialization. A technique which often works is to move the variable initialization from the variable declaration (in the package specification) to the package body initialization block.

Back to previous menu

https://support.oracle.com/

http://www.oracle.com/