【问题标题】:Insert records based on "Row Selector" in Oracle APEX在 Oracle APEX 中基于“行选择器”插入记录
【发布时间】:2018-03-02 08:20:12
【问题描述】:

我在表格顶部创建了一个报告和表单。表单页面是“表格形式”,其中所有列都是可编辑的。在“表单”页面中,我有一个查找按钮。单击此按钮后,它将导航到新页面,该页面在视图顶部有一个带有“行选择器”的报告。

当用户可以选择行列表并单击提交时,选定的行应该插入到表格表单页面中。 你能解释一下我是如何做到这一点的吗?

【问题讨论】:

    标签: oracle-apex-5.1


    【解决方案1】:

    由于没有人回答您的问题(尚未),让我根据我目前的知识和经验说几句话。请注意,有人可能有其他更好的想法和意见。

    在表格上创建表格形式,其来源是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”代表“apex_application.g_f01”
    • “02 - CB_NEDOSTATAK”代表“apex_application.g_f02”

    等等;这些是表格形式的项目

    /* 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

    正如我所说:这不一定是您问题的最佳解决方案,但这就是我可以说的。祝你好运!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多