Plsql 如何在Oracle Apex中循环G_FXX,其中XX=(01,02..n)?

Plsql 如何在Oracle Apex中循环G_FXX,其中XX=(01,02..n)?,plsql,oracle-apex,oracle-apex-5.1,plsql-package,Plsql,Oracle Apex,Oracle Apex 5.1,Plsql Package,基本上,我想要实现的是通过G_F0X数组循环,以使我的代码更加紧凑,而无需使用例如: APEX_APPLICATION.G_F01(1); APEX_APPLICATION.G_F02(1); APEX_APPLICATION.G_F03(1); 当然,它不起作用,但我在任何地方都找不到任何信息,我也不知道怎么做 例: 我不知道是否有更好的方法,但您可以创建一个数组并将g_fXX变量存储在其中。比如: declare type t_vc_arr2 is table of apex_appl

基本上,我想要实现的是通过G_F0X数组循环,以使我的代码更加紧凑,而无需使用例如:

APEX_APPLICATION.G_F01(1);
APEX_APPLICATION.G_F02(1);
APEX_APPLICATION.G_F03(1);
当然,它不起作用,但我在任何地方都找不到任何信息,我也不知道怎么做

例:


我不知道是否有更好的方法,但您可以创建一个数组并将g_fXX变量存储在其中。比如:

declare
  type t_vc_arr2 is table of apex_application_global.vc_arr2;
  g_fXX t_vc_arr2 := t_vc_arr2 (
                       apex_application.g_f01
                      ,apex_application.g_f02
                      ,apex_application.g_f03
                      --,apex_application.g_fXX
                     );
begin
  for i in 1 .. g_fXX.count loop -- loop through each apex_application.g_fXX array
    for j in 1 .. g_fXX(i).count loop -- loop through each value of current apex_application.g_fXX array
      dbms_output.put_line(g_fxx(i)(j));
    end loop;
  end loop;
end;
/

我不知道还有别的办法。非常感谢,这对我很有用。
declare
  type t_vc_arr2 is table of apex_application_global.vc_arr2;
  g_fXX t_vc_arr2 := t_vc_arr2 (
                       apex_application.g_f01
                      ,apex_application.g_f02
                      ,apex_application.g_f03
                      --,apex_application.g_fXX
                     );
begin
  for i in 1 .. g_fXX.count loop -- loop through each apex_application.g_fXX array
    for j in 1 .. g_fXX(i).count loop -- loop through each value of current apex_application.g_fXX array
      dbms_output.put_line(g_fxx(i)(j));
    end loop;
  end loop;
end;
/