Глобальная переменная пакета, вероятно, сделает то же самое.
CREATE OR REPLACE PACKAGE foo as
myVar BOOLEAN;
END foo;
CREATE OR REPLACE PACKAGE BODY foo AS
BEGIN
MyVar := true;
END foo;
BEGIN
If foo.myVar THEN
dbms_output.put_line ('MyVar is True');
end if;
END;
Преимущество использования пакета над SYS_CONTEXT заключается в том, что вы получаете некоторую инкапсуляцию.