Oracle apex: добавление фильтров программным способом с динамическим действием добавляет повторяющиеся фильтры

У меня есть несколько динамических действий, которые запускаются с событием изменения при загрузке страницы. Кажется, что все они уволены одновременно. Когда это происходит, он добавляет фильтр в интерактивную сетку. Теперь проблема в том, что некоторые фильтры дублируются. Как я могу решить эту проблему?

Я имею в виду, что когда страница загружается, она меняет кучу вещей в форме (например, флажки и значения текстового поля), что запускает динамическое действие, которое затем вызывает функцию addFilter, подобную этой

function newFilter(){
    var vals = apex.item('P12_VALUE').getValue();

    if(!(vals.includes('DI'))){
         deleteExistingFilters('emp', 'IS_ON');
    }

    if(vals.includes('DI')){
        if(!filterAlreadyExist('emp', 'IS_ON')){
            addFilter('emp', 'IS_ON','Y','EQ');
        }    
    }
}

person Gorupria    schedule 19.11.2019    source источник
comment
Что означает событие изменения при загрузке страницы? Когда вы хотите добавить фильтры? Вы можете показать нам код?   -  person Dan McGhan    schedule 19.11.2019


Ответы (1)


Создайте только одно динамическое действие, которое запускается при загрузке страницы, но позвольте ему выполнять несколько («истинных»?) Действий, т.е. каждое действие будет одним или ни одним из тех «нескольких» динамических действий, которые у вас есть сейчас. «Нет» означает, что вы бы исключили его, если он уже установлен.

person Littlefoot    schedule 19.11.2019