oracle - Oracle Apex 18 穿梭项目在右侧显示最后选择的值
问题描述
我已经使用带有以下代码的动态操作成功实现了 Shuttle List
declare
tab apex_application_global.vc_arr2;
begin
tab := apex_util.string_to_table (:P14_NEW_1);
for i in 1..tab.count loop
insert into xxtest (COL1, COL2)
values (:P14_NEW, tab(i));
end loop;
commit;
end;
问题是每次用户打开表单时,它都不会在右侧显示最后选择的值,我不明白这个逻辑如何在页面加载时将选定的项目显示为保存在表格中的右侧
解决方案
您完成了工作的第一部分 - 将选定的值存储到表中。
下一步是将它们取回。为了做到这一点,
- 导航到航天飞机项目的源属性
- 将其类型设置为“SQL 查询(返回冒号分隔值)
SQL 查询应如下所示:
select listagg(col2, ':') within group (order by null) from xxtest where ... --> include condition, if there is any - I believe it should
将“已使用”属性设置为“始终,替换会话状态中的任何现有值
运行页面;穿梭项目现在应该已填充右侧。
作为where
条款:我不知道你在做什么的目的是什么,但是 - 如果你不区分存储在xxtest
表中的行,所有用户将使用相同的记录集并覆盖彼此的数据。如果xxtest.col1
代表用户名(这样就不会:P14_NEW
而是:APP_USER
),您应该在WHERE
子句中使用它。否则,请考虑这样做。
推荐阅读
- javascript - 定期刷新 Django 模板中的占位符和画布标签
- sql - Oracle 空值有时符合任何规则
- javascript - 如果单击已附加的 div 之一,如何获取值?
- javascript - 从 setState 回调返回
- linux - 将 blkid 中的 UUID 添加到 /etc/fstab
- ruby-on-rails - 参数丢失或值为空:名称 - 需要输入的确切值
- java - 如何使用 Camel FTP 处理“主机尝试数据连接 xxxx 与服务器 yyyy 不同”错误?
- r - 使用 ID 内的条件重新创建增量值
- javascript - 如何从非 React 环境更新组件?
- mysql - NodeJS mysql 模块将 localhost 转换为 127.0.0.1 并且连接失败