I noticed an interesting behavior of Code Contents browser. Package like this (see below) has invisible functions! They are visible in Package Specification, package has been compiled with no errors, and all functions work correctly. And Code Assistant doesn't see local variables in this case. PL/SQL Developer v.5.1.4.728, Oracle 9i release 9.2.0.4.0.
- ------
create or replace package test_pack is
FUNCTION f_visible(p_change CHAR) RETURN VARCHAR2;
FUNCTION f_invisible(p_change CHAR) RETURN VARCHAR2;
end test_pack;
-----
create or replace package body test_pack is
FUNCTION f_visible(p_change CHAR ) RETURN varchar2 IS
l_result varchar2(4);
BEGIN
CASE p_change
WHEN '1' THEN l_result := '111';
WHEN '2' THEN l_result := '222';
WHEN '3' THEN l_result := '333';
WHEN '4' THEN l_result := '444';
ELSE l_result := NULL;
END CASE;
RETURN l_result;
END;
-----------this function is invisible in Code Contents-------------
FUNCTION f_invisible(p_change CHAR ) RETURN varchar2 IS
l_result varchar2(5);
BEGIN
CASE p_change
WHEN '1' THEN l_result := '10';
WHEN '2' THEN l_result := '100';
WHEN '3' THEN l_result := '1000';
WHEN '4' THEN l_result := '10000';
ELSE l_result := NULL;
END CASE;
RETURN l_result;
END;
END test_pack;
----