In one of our APEX 5 applications, we use a drop-down list that allows users to select a targeted interactive report in one application. Then the application goes to the landing page and a report is displayed.
In APEX 4, this works great with both public and private reports; we use this query to list available reports:
select distinct (sr.report_id || '(' || nvl(sr.report_name,
'Primary') || ')') as display_value,
sr.report_id as return_value
from apex_application_page_ir_rpt sr
where sr.application_id = v('APP_ID')
and ((sr.report_type = 'PRIVATE' and sr.created_by = upper(v('APP_USER'))) or
(sr.report_type = 'PRIMARY_DEFAULT'))
and sr.page_id <> v('APP_PAGE_ID')
order by 1
When the user selects a value from the drop-down list, it is saved to P35_REPORT_LIST. Then we use this value to build the destination URL for our branch:
Declare
url_s varchar2(1000) := 'f?p=175:';
called_page number;
begin
select sr.page_id
into called_page
from apex_040200.apex_application_page_ir_rpt sr
where sr.report_id = :P35_REPORT_LIST;
url_s := URL_s || called_page || ':' || v('APP_SESSION') || ':IR_REPORT_' || :P35_REPORT_LIST ||
':NO::::P1_FILTER_BY_DEFAULT_SEARCH:1';
return url_s;
end;
However, in APEX 5 this no longer works; we get the error APEXIR_REPORT_DOES_NOT_EXIST.
APEX 5 Documentation :
9.4.17 Link to general interactive reports
, IR_REPORT_ [report_alias] URL.
, , , . ,
select page_id, interactive_report_id, report_link_example
from apex_application_page_ir_rpt sr
REPORT_LINK_EXAMPLE , , -, , .
APEX 5?