25.1 ADD_FILTER Procedure Signature 1

This procedure creates a filter on an interactive grid using a report ID.

Note:

The use of this procedure in a page rendering process causes report download issues (CSV, HTML, Email, and so on). When a user downloads the report, the interactive grid reloads the page with download format in the REQUEST value. Any interactive grid settings changes (such as add filter or reset report) are done in an Ajax request. Thus, the download data may not match the report data user is seeing. For this reason, Oracle recommends only using this procedure in a page submit process.

Syntax

APEX_IG.ADD_FILTER (
    p_page_id           IN NUMBER,
    p_region_id         IN NUMBER,
    p_filter_value      IN VARCHAR2,
    p_column_name       IN VARCHAR2 DEFAULT NULL,
    p_operator_abbr     IN VARCHAR2 DEFAULT NULL, 
    p_is_case_sensitive IN BOOLEAN  DEFAULT FALSE,
    p_report_id         IN NUMBER   DEFAULT NULL );

Parameters

Table 25-1 ADD_FILTER Parameters

Parameter Description
p_page_id Page of the current Oracle APEX application that contains an interactive grid.
p_region_id The interactive grid region (ID).
p_filter_value The filter value. This value is not used for operator N and NN.
p_column_name Name of the report SQL column, or column alias, to be filtered.
p_operator_abbr

Filter type. Valid values are as follows:

EQ = Equals

NEQ = Not Equals

LT = Less than

LTE = Less than or equal to

GT = Greater Than

GTE = Greater than or equal to

N = Null

NN = Not Null

C = Contains

NC = Not Contains

IN = SQL In Operator

NIN = SQL Not In Operator

p_is_case_sensitive

Case sensitivity of the row search filter. This value is not used for a column filter, where p_report_column is set. Valid values are as follows:

  • TRUE
  • FALSE (This is the default value.)
p_report_id The saved report ID within the current application page. If p_report_id is NULL, it adds the filter to the last viewed report settings.

Example 1

The following example shows how to use the ADD_FILTER procedure to filter the interactive grid with report ID of 901029800374639010 in page 1, region 3335704029884222 of the current application with DEPTNO equals 30

BEGIN
    APEX_IG.ADD_FILTER(
        p_page_id           => 1,
        p_region_id         => 3335704029884222,
        p_filter_value      => '30',
        p_column_name       => 'DEPTNO',
        p_operator_abbr     => 'EQ', 
        p_report_id         => 901029800374639010);
END;

Example 2

The following example shows how to use the ADD_FILTER procedure to filter the interactive grid with report ID of 901029800374639010 in page 1, region 3335704029884222 of the current application with rows containing the case-sensitive word Salary.

BEGIN
    APEX_IG.ADD_FILTER(
        p_page_id           => 1,
        p_region_id         => 3335704029884222,
        p_filter_value      => 'Salary', 
        p_is_case_sensitive => true, 
        p_report_id         => 901029800374639010);
END;