Oracle. Инкремент обращений к пакету
В пакете есть несколько процедур. Они могут вызываться отдельно, а могут вызываться последовательно в одном блоке:
begin
proc_1;
proc_2;
end;
Надо при каждом таком обращении к пакету, производить определенное действие, например выделять следующее значение из последовательности.
Попробовал в тело пакета добавить переменную v_check_init := 0. И проверять ее в каждой процедуре, если 0, то выполнить действие, поменять на 1. Предполагал что proc_1 изменит, а proc_2 уже увидит что она равна 1 и действие выполнено не будет. Так и происходит при самом первом запуске.
Но эта переменная сохраняет свое последнее значение между запусками блоков. То есть она не устанавливается в 0 при следующем запуске, а так и сохраняет 1.
Подскажите, как мне можно организовать такой механизм учета обращений к пакету? Или чтобы значение этой переменной при каждом последующем запуске сбрасывалось снова на 0.