我在表格上创建了一个报表和表单。表单页面是"表格形式",其中所有列都是可编辑的。在" Form"页面,我有一个查找按钮。点击此按钮,它将导航到新页面,其中有一个带有"行选择器"的视图顶部的报告。
当用户可以选择行列表并单击提交时,所选行应插入到表格表单页面。 能否解释一下我是如何实现这一目标的。
答案 0 :(得分:0)
由于没有人回答你的问题,请根据我目前的知识和我说几句话。经验。请注意,有人可能会有另一个更好的想法和意见。
在表格上创建表格形式,其来源是SELECT
语句。假设您要在某个报告页面上检查行选择器复选框,然后这些值将在另一个页面上转换为表格形式是 make-a-wish 语句。我会说这些值应该INSERTED
到表格中(在其上创建表格形式),然后表格形式应该执行重新查询以获取这些行。
在报告中“检查行选择器复选框”并对这些行执行“某事”:男孩,我不知道该怎么做。是的,我已经用表格形式的自己的复选框项目选择了行(注意区别:不是在报告中,而是以表格形式),这更像是一种痛苦而不是一种快乐。
我建议你阅读以下Patrick Wolf的文章:Which Tabular Form Column is mapped to which Apex_Application.g_fxx array?。为什么?因为它解释了如何处理g_fxx array
。以表格形式操纵值是一种手段。只是为了展示我在4.x Apex版本中使用的一个例子(不,我没有更新的代码),这样你就可以了解它应该如何完成;这是一个在提交时触发的页面进程。
等等;这些是表格形式的项目
/* 01 - ID
02 - CB_NEDOSTATAK
03 - CB_HITNOST
04 - CB_OTKLONJEN
05 - NAPOMENA
*/
begin
for i in 1 .. apex_application.g_f01.count loop
update dg_pregled set
cb_nedostatak = case when apex_application.g_f02(i) = 1 or
apex_application.g_f03(i) = 1 then 1
else 0
end,
cb_hitnost = decode(apex_application.g_f03(i), 1, 1, 0),
cb_otklonjen = case when apex_application.g_f02(i) = 1 and
apex_application.g_f04(i) = 1 then 1
else 0
end,
napomena = apex_application.g_f05(i)
where id = apex_application.g_f01(i);
end loop;
end;
基本上,你会做那样的事情;而不是UPDATE
,您需要INSERT
。
正如我所说:这不一定是你问题的最佳解决方案,但这就是我能说的。祝你好运!