如何在APEX 5中创建新记录并打开页面

时间:2015-11-06 20:01:07

标签: oracle-apex oracle-apex-5

我试图绑定"执行PL / SQL代码"使用动态操作按钮然后使用新ID(execid)打开页面

begin
insert into SMIG_EXECUTION(EXECNAME, CALL, STEPID, DURATIONMIN)
values('bla bla',REPLACE(:P31_CALLTEMPLATE,'#STEPID#',to_char(:P31_STEPID)), :P31_STEPID, 0)

returning execid into :P31_NEWEXECID ;
end;

PL / SQL代码正在运行,但我无法动摇将新页面作为动态操作打开并将该新值传递为P2_EXECID的链接。

enter image description here

1 个答案:

答案 0 :(得分:0)

您可以使用window.open()(javascript函数)

来完成此操作

open()方法打开一个新的浏览器窗口。

  •   

    将TRUE ACTION添加到现有的动态操作

  •   

    为您的行动选择执行JAVASCRIPT代码

  •   

    然后粘贴此代码:

    window.open('f?p='+$v('pFlowId')+':'+$v('pFlowStepId')+':'+$v('pFlowInstance')+'::::<page item here>:<value of the item to be passed>:','_self');
    

注意:
 $ v(&#39; pFlowId&#39;)=&gt;申请ID
 $ v(&#39; pFlowStepId&#39;)=&gt;页码
 $ v(&#39; pFlowInstance&#39;)=&gt;会话ID

  • 如果需要传递多个项目/值,您可以通过使用逗号作为分隔符列出项目/值来实现此目的

    <强>即。 ?&#39;在fp = .....:P2_ITEM1,P2_ITEM2,P2_ITEM3:1,2,3:&#39 ;;

编辑:添加第二个参数