【问题标题】:IG clear filters and set new onesIG 清除过滤器并设置新过滤器
【发布时间】:2019-04-11 12:21:21
【问题描述】:

我正在 APEX 18.2 中设置一个页面,其中包含一个 IG。我可以从菜单正常访问此页面,或者如果按下按钮,我可以将其设置为从其他站点转到此处。如果按下该按钮,第一个站点上的隐藏项也会设置为一个值,我想清除所有当前过滤器并为该值设置一个新过滤器,该值位于两列之一中。

我已经检查了我可以在网上找到的所有内容,但官方 JSDoc 没有关于所需方法的信息,其他来源也没有包含我所需要的内容。

Oracle Apex 18.1 Interactive Grid (IG) Setting filters programmatically? Customizing IG Search 这是迄今为止我设置过滤器的最佳资源,但它只过滤一列,他描述的第一种方法对我不起作用,出错了。

我还找到了一些清除过滤器的代码,但它实际上是重置报告,如果它确实有效,这对我有用,但有一半的时间会触发错误。实际上得到了 ORA-2291,我不知道它是怎么回事。我有时也找不到数据

我用来设置过滤器的代码与第一个链接基本相同:

apex.region("MY_IG").widget().interactiveGrid("addFilter", {
  type: 'column',
  columnType: 'column',
  columnName: 'COLUMN_NAME',
  operator: 'C',
  value: $v2('PAGE_ITEM'),
  isCaseSensitive: false
});

但这会将过滤器应用于单个列。我想将它设置为两列,如果不可能的话,我想将其设置为任何地方。

我用来清除过滤器/重置报告的代码:

 apex.region("MY_IG").call("getActions").invoke('reset-report');

我希望触发这些代码块的动态操作清除所有过滤器并设置一个新的过滤器来评估 PAGE_ITEM 中的值是否包含在两列之一中。

【问题讨论】:

    标签: javascript oracle-apex


    【解决方案1】:

    实际上并没有找到如何做我想做的事,而是做了一些不同的事情来获得相同的结果。

    最后只是用我的 SQL 查询中的 WHERE 子句替换了所有这些。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-19
      • 1970-01-01
      • 2020-03-26
      • 1970-01-01
      • 2019-01-12
      相关资源
      最近更新 更多