oracle - Oracle apex apex_application.g_f0x 不获取表项
问题描述
我有一份关于 apex_item(s) 的报告。报告很复杂,所以我只显示与简化相关的内容。该报告是通过以下方式创建的:
select ID || apex_item.hidden(11,ID) as "ID",
apex_item.text(p_idx => 12, p_value => VOLUME) as "Volume"
from TEMP;
这给出了:
在提交页面上,我有一个计算报告行的过程(稍后我循环这些行以执行一些操作):
apex_debug.warn('count f11: ' || apex_application.g_f11.count);
结果如预期的那样为2 。
问题 - 当我尝试从报告中保存更改而不提交页面时:
我有一个按钮“更新服务器”,它在点击 PL/SQL 操作时具有动态操作:
PL/SQL 包含与上述循环完全相同的代码,但结果现在为0。
我的目标是根据行进行操作。不提交页面,但我不明白如何在不提交的情况下循环这些行。谢谢
解决方案
当您运行执行 PL/SQL 代码(现在称为“执行服务器端代码”)类型的动态操作时,您可以指定要提交的页面项目,该操作将在 PL/之前设置为会话状态SQL 块运行,但我认为您不能指定那些fxx
称为项目类型的项目。我认为你有两个选择:
创建一个隐藏项并使用在您的 PL/SQL 操作之前运行的 Javascript 操作填充该项,然后将该隐藏项与您的 PL/SQL 操作一起提交。
将您的 PL/SQL 代码更改为 Ajax 回调过程,然后
apex.server.process
在 Javascript DA 中调用它。您可以指定fxx
要使用该调用提交的类型项目。
推荐阅读
- r - Why does dcast not accept x[length(x)]?
- mysql - 如何连接payara和MySQL?
- typescript - Redux with typescript - handle same action in different reducers
- mysql - 需要在 Mac El Capitan 上安装旧版本的 MySQL
- reactjs - How to get Route component to Render properly
- google-apps-script - 使用 Google 表格中随机行中的文本发送短信
- php - 为什么我应该在 laravel 中使用事件和监听器
- image - 如何使用 CKEditor4 使用 CDN 上传图片?
- perl - Perl - How to fix error "Use of uninitialized value in numeric lt (<)" in if statement
- typescript - How to fix type checking when using this.store.findRecod