You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Interactive Report(IR)页面搜索模态页中的值?

在APEX中基于模态页数据筛选主页面交互式报表的实现方案

可以实现,核心是通过反向关联页面3的查询逻辑,在页面2添加搜索触发逻辑,无需修改主IR的复杂查询,具体步骤如下:

实现步骤

  • 添加搜索输入控件
    在页面2新增一个文本输入项(例如命名为P2_SEARCH_PAGE3_VAL),用于输入页面3中要搜索的特定编号,再搭配一个搜索按钮。

  • 创建动态操作实现筛选
    绑定搜索按钮的Click事件(或输入项的回车事件),执行以下操作:

    1. 执行PL/SQL块,根据输入值反向匹配页面2的唯一编号:
      DECLARE
        l_target_ids VARCHAR2(4000);
      BEGIN
        -- 替换为实际的表关联逻辑:从页面3的查询结果中匹配页面2的唯一ID
        SELECT LISTAGG(p2.unique_id, ',') WITHIN GROUP (ORDER BY p2.unique_id)
          INTO l_target_ids
          FROM page2_dataset p2
          JOIN (
            -- 这里是页面3的原始查询,用输入值过滤目标字段
            SELECT page2_unique_id_ref -- 页面3数据关联页面2唯一编号的字段
              FROM page3_dataset
             WHERE page3_target_column = :P2_SEARCH_PAGE3_VAL
          ) p3 ON p2.unique_id = p3.page2_unique_id_ref;
        
        -- 将匹配到的ID集合赋值给IR过滤参数
        :P2_IR_FILTER_IDS := l_target_ids;
      END;
      
    2. 刷新页面2的Interactive Report,在IR的属性设置中,添加服务器端过滤条件:unique_id IN (:P2_IR_FILTER_IDS)(若ID集合为空,可设置显示全部或提示无匹配)。
  • 保持模态页跳转逻辑
    保留原有的唯一编号点击打开模态页3的逻辑,确保跳转时传递对应参数,让页面3直接展示关联数据即可。

优化建议

  • 给页面3的目标搜索字段和关联页面2的ID字段建立索引,提升反向查询的速度,避免大数据量下的性能问题。
  • 若需要实时搜索体验,可将动态操作的触发条件改为输入项的Change事件,并设置500ms的延迟触发,减少不必要的请求。
  • 可将PL/SQL逻辑封装为存储过程,便于后续维护和复用。

内容的提问来源于stack exchange,提问作者Leo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 22:51:11