我已使用下面的代码通过动态操作成功实现了班车列表
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;
问题在于,每次用户打开表单时,它不会向右手边显示最后选择的值,我不明白这种逻辑,当页面加载时,我如何才能将选中的项保存在表中显示给右手边
答案 0 :(得分:0)
您完成了工作的第一部分-将选定的值存储到表中。
下一步是将它们取回。为此,
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
子句中使用它。否则,请考虑这样做。