Oracle 如何在页面提交之后和刷新之前运行进程

Oracle 如何在页面提交之后和刷新之前运行进程,oracle,oracle-apex,oracle-apex-5.1,Oracle,Oracle Apex,Oracle Apex 5.1,我在Oracle Apex(v5.1)中面临一个问题 我有一个对话框页面,点击一个图标就会从父页面打开。关闭对话框页面时,我的父页面在“对话框关闭”事件中提交 以及一个在处理父页面提交时运行的进程,该进程似乎不起作用。 在这个过程中,我有一些APEX_项,它们的值是在父页面的submit上设置的。有没有办法让这个过程运行 额外说明:我有一个交互式报告,它是从一个表中提取的,比如“Temp”,该报告在某些列中有链接。 当用户单击链接时,他会被重定向到一个模式页面(同时将应用程序变量“APP_VAR

我在Oracle Apex(v5.1)中面临一个问题

我有一个对话框页面,点击一个图标就会从父页面打开。关闭对话框页面时,我的父页面在“对话框关闭”事件中提交 以及一个在处理父页面提交时运行的进程,该进程似乎不起作用。 在这个过程中,我有一些APEX_项,它们的值是在父页面的submit上设置的。有没有办法让这个过程运行

额外说明:我有一个交互式报告,它是从一个表中提取的,比如“Temp”,该报告在某些列中有链接。 当用户单击链接时,他会被重定向到一个模式页面(同时将应用程序变量“APP_VAR”设置为零),用户可以在那里修改一些数据。 在模式页面中,当用户单击“提交”按钮时,进程运行并更新临时表,并将“APP_VAR”的值设置为“1” 然后页面被刷新。在同一个模式页面上,有一个写在“页面加载”上的动态操作,服务器端条件为“APP_VAR”=“1”, 此动态操作使用“关闭对话框”操作关闭模式页面

现在,当模式页面在父页面上关闭时,在提交父页面的“Dialog closed”事件上会写入一个动态操作。 还有一个进程“更新父级”,条件是“APP_VAR”=“1”,该进程使用父级页面中的所有值(作为用户)更新“temp”表 可以更改报告中的某些值。),并将APP_VAR设置为0

所有这些都是为了用两个页面中的值更新临时表。 但当模式页面关闭时,父页面会在“更新父页面”过程完成之前刷新,导致丢失父页面中所做的任何更改

如何在重新加载页面之前运行“更新父级”?请记住,在“更新父项”运行之前,需要提交报告数据 以获取更新的数据。案例1

为什么不将“更新父级”过程与提交页面的动态操作放在一起?在这个动态动作中,您需要两个真正的动作

  • 第一个将执行其PL/SQL“更新父级”
  • 第二个将提交页面

案例2

或者,如果您希望在流程中保持“更新父级”,只需在页面提交中调用它(如果需要,将其绑定到按钮),将其按正确的执行顺序(通过设置序列号)放置即可。在动态操作提交页面中,定义此提交的按钮名称(如有必要)

示例案例2:

关闭页面后,我需要执行3个进程。因此,我将这3个进程链接到一个按钮上,如果需要,我将输入服务器的条件

提交后:

10 - Process 1 (when I click the x button)
20 - Process 2 (when I click the x button)
30 - Process 3 (when I click the x button)
因此,我需要在提交页面的动态操作中定义与此提交关联的按钮的名称(填写“请求/按钮名称”字段)

*隐藏这个按钮