2016-12-06 12 views
1

У меня есть IR с сохраненными сообщениями, где фильтры добавлены в столбец Year = 2015. Мне нужно написать процедуру plsql для обновления фильтра Year до года = 2016. Как я могу достичь такого сценария. Я заглянул в API, и это ничего мне не давало. единственный вариант, который я могу придумать, - это изменение данных вручную в БД. Ниже приведен запрос, который я использовал для получения сохраненных частных отчетов.Динамическое изменение фильтра Oracle APEX в сохраненных отчетах

SELECT a.flow_id,a.page_id,a.status,a.application_user,a.name, b.interactive_report_id, c.condition_type,c.column_name,c.operator,c.expr 
FROM apex_040000.wwv_flow_worksheet_rpts a, apex_application_page_ir b, apex_040000.WWV_FLOW_WORKSHEET_CONDITIONS c 
WHERE a.flow_id = :APP_ID 
AND a.page_id = b.page_id 
AND b.application_id = a.flow_id 
AND a.worksheet_id = b.interactive_report_id 
AND a.status = 'PRIVATE' 
AND c.report_id = a.id 
AND c.column_name='YEAR' 
and a.page_id= :APP_PAGE_ID 

Могу ли я преуспеть в этом подходе. Есть ли другое решение для этого. ?

ответ

1

Вы можете попробовать apex_util.ir_clear(p_page_id => 200001), чтобы очистить все фильтры и другие настройки (осталось только сортировка и видимость столбцов) или apex_util.ir_reset(p_page_id => 200001), чтобы сбросить текущий отчет до основного отчета. А затем apex_util.ir_filter установить новый фильтр. Эти действия не в буквальном смысле изменяют ваш сохраненный отчет, но меняют его текущую настройку. В следующий раз сохраненный отчет будет таким же, как перед сбросом или сбросом.

+0

Что делать, если у нас есть несколько фильтров за исключением года. ? мы хотим изменить только фильтр года. есть много IR с разными фильтрами, мне нужно изменить только год em –

+0

Я рекомендовал отредактировать все сохраненные отчеты и удалить фильтр Year. Затем вы можете установить год, вызвав apex_util.ir_filter или IR_column_name URL param. – hinotf

+0

фильтры добавляются пользователями за определенный год. мы не можем удалить их, если они не согласованы. Я хочу иметь процедуру, которая берет требуемый год в качестве входных данных и изменяет весь фильтр IR year на это, и IR имеет фильтр года, добавленный ранее. –

 Смежные вопросы

  • Нет связанных вопросов^_^