Quero usar um código como este:
Create or Replace PACKAGE BODY MyPackage
... declarations, other functions ...
Function Parent(param1, param2)
Return Boolean
As
v_Pcs Number Default 0;
Begin
SubProc(paramA, paramB)
v_MyNestedtable.EXTEND(1);
v_MyNestedtable(v_MyNestedtable.Count).P_A := ParamA;
v_MyNestedtable(v_MyNestedtable.Count).P_B := ParamB;
End SupProcedure;
Select Count(*) Into v_Pcs From myTableA Where...;
If v_Pcs> 0 Then
SubProc(param3, param4);
v_Pcs := 0;
End If;
Select Count(*) Into v_Pcs From myTableB Where...;
If v_Pcs> 0 Then
SubProc(param5, param6);
v_Pcs := 0;
End If;
If v_MyNestedtable.Count > 0 Then
For 1..v_MyNestedtable.Count
Loop
dbms_output.Put_line(v_MyNestedtable(i).P_A||', '||
v_MyNestedtable(i).P_B);
End Loop;
Return False;
Else
Return True;
End Parent;
...
End MyPackage;
Meu código funciona bem quando SupProcedure está fora da função Parent e eles estão no mesmo nível. Eu apenas chamo isso de SupProcedure da função Parent. Então, quero melhorar a aparência do meu código declarando um procedimento sub/aninhado. Como posso fazer isso?