有没有办法通过 Javascript 或 PL/SQL API 在 Oracle Apex 中为 IG 设置过滤器?
在进行研究时我偶然发现APEX IG 5.1.4 食谱或一些博文如何破解 APEX 交互式网格系列用于使用 Javascript 自定义 IG。因此设置过滤器类似于PL/SQL APEX_IR.ADD_FILTER 过程您可以在其中为交互式报告 (IR) 设置过滤器:列名称、运算符和过滤器值
应该是可能的。
我找出了内部表的名称,如果设置了过滤器,则存储过滤器的名称(IR过滤器为APEX_APPLICATION_PAGE_IR_COND,IG过滤器为APEX_APPL_PAGE_IG_RPT_FILTERS),但我真的不知道这是否有帮助。
With
apex.region("StaticRegionID").widget().toolbar("findElement","search_field").val("SearchTextValue");
apex.region("StaticRegionID").widget().interactiveGrid("getActions").invoke("search");
可以设置搜索值并执行搜索操作,但无法设置运营商/过滤器类型(EQ、NEQ、LT、LTE、GT、GTE、LIKE、NLIKE、N、NN、C、NC、在,宁)
到目前为止我还没有找到自定义搜索操作的好方法libaries\apex\widget.interactiveGrid.js
或者在调用搜索操作之前设置正确的参数以添加过滤器。
有谁知道如何做到这一点?
我刚刚解决了我的问题。有一个方法叫做addFilter
在 - 的里面libaries\apex\widget.interactiveGrid.js
可以使用过滤器对象和选项对象作为参数简单地调用它。
当与其他输入字段的值结合使用时,这非常有用。
例子:
apex.region("YourStaticRegionID").widget().interactiveGrid("addFilter", {
type: 'column',
columnType: 'column',
columnName: 'YourColumnName',
operator: 'EQ',
value: $v2('P2_NEW'),
isCaseSensitive: false
});
The $v2 API在上面的示例中用于获取用户在名为 P2_NEW 的文本输入字段中键入的搜索词。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)