alexandria-plsql-utils/demos/owa_util_pkg_demo.sql
2015-02-20 19:43:42 +01:00

44 lines
1.6 KiB
SQL
Executable File

-- grab the contents of a page generated by the PL/SQL Web Toolkit (without invoking it through a web server/gateway)
declare
l_clob clob;
begin
debug_pkg.debug_on;
owa_util_pkg.init_owa;
-- call any procedure that outputs something via htp.p
--apex; -- the standalone "apex" procedure is a shortcut to the apex login page
f(p => '4550:1'); -- note that since we are not logged in, this will simply return a Location header that tells the browser to redirect to a login page
l_clob := owa_util_pkg.get_page;
debug_pkg.print(l_clob);
file_util_pkg.save_clob_to_file ('DEVTEST_TEMP_DIR', 'my_web_page_generated_by_owa.htm', l_clob);
end;
-- use the (undocumented) APEX_UTIL.EXPORT_APPLICATION procedure to generate an export file
-- then grab the output and save it to file
declare
l_workspace_id number;
l_app_id number;
l_clob clob;
begin
debug_pkg.debug_on;
select workspace_id, application_id
into l_workspace_id, l_app_id
from apex_applications
where workspace = 'DEVTEST'
and application_name = 'AlexandriaLibraryTestApp';
owa_util_pkg.init_owa;
apex_util.export_application (p_workspace_id => l_workspace_id, p_application_id => l_app_id);
--apex_util.export_application_page (p_workspace_id => l_workspace_id, p_application_id => l_app_id, p_page_id => 9);
l_clob := owa_util_pkg.get_page (p_include_headers => false);
--debug_pkg.print (l_clob);
file_util_pkg.save_clob_to_file ('DEVTEST_TEMP_DIR', 'my_export_of_f' || l_app_id || '_' || to_char(sysdate, 'yyyymmddhh24miss') || '.sql', l_clob);
end;