Skip to Main Content
Feature Request FR-2526
Product Area Page Components
Status CLOSED

15 Voters

Provide a way to execute Interactive Grid validations only if certain columns are modified

toufiqmohmd Public
· May 17 2022

Idea Summary
Provide a way to execute validations on Interactive grid columns only when specific columns are modified instead of triggering them for every DML. 

Use Case

Today, in Interactive grids, validations defined on all columns are triggered irrespective of whether the value in a column is changed or not. 

Sometimes it may be needed to trigger a validation only when if the column value has beed modified. 

Unneccessary triggering of validations may lead to less performant IGs.

Preferred Solution (Optional)
In Validations for IG columns provide a declarative way to configure the settings to execute a validation only if a column or set of columns are modified.

We reviewed this idea carefully, and while it was interesting, we concluded that it is unlikely to make its way into APEX in the foreseeable future.

Comments

Comments

  • jeffrey kemp APEX Team OP 3.3 years ago

    To make this more generalised, it might help to have access to the “Before” as well as the “After” values for each column, so that the PL/SQL function body can work out what needs to be done, e.g.:

    if :SAL$ORIGINAL != :SAL then
        return validate_sal;
    else
        return null;
    end if;
    
  • stew stryker OP 2.8 years ago

    I like Jeffrey's suggestion of providing access to “before” and “after” values. I think it'd be a little easier if they used the same identifiers as are used in triggers. It's unfortunate that they'd have to go AFTER the IG column name, so they couldn't be exactly the same syntax as a database trigger.

    if :SAL:NEW != :SAL:OLD then
        return validate_sal;
    else
        return null;
    end if;