Пытаюсь скачать файл из коллекции. Я просмотрел множество форумов, в том числе здесь: APEX: Загрузить BLOB из временной таблицы
Но он не работает, я не могу понять, почему. ошибки не возникает. Мой код PL / SQL при нажатии кнопки:
DECLARE
v_mime VARCHAR2(255);
v_length NUMBER;
v_file_name VARCHAR2(255);
Lob_loc BLOB;
BEGIN
SELECT c001, c004, blob001
INTO v_file_name, v_mime, Lob_loc
FROM apex_collections
WHERE collection_name = 'COLLECTION_DOCS' AND seq_id = :P113_SEQ;
select sys.dbms_lob.getlength(Lob_loc) into v_length from dual;
/* This raise shows me the correct values taken form the collection table
raise_application_error (-20001,'
name:' || v_file_name || '
mime: ' || v_mime || '
length: ' || v_length || '
');
*/
sys.htp.init;
sys.owa_util.mime_header(v_mime, FALSE);
sys.htp.p('Content-length: ' || v_length);
sys.htp.p('Content-Disposition: attachment; filename="' || v_file_name || '"' );
sys.owa_util.http_header_close;
sys.wpg_docload.download_file( Lob_loc );
apex_application.stop_apex_engine;
END;
Обратите внимание, что значения внутри закомментированного раздела (когда он включен) показывают правильное имя файла, тип mime и размер, когда я нажимаю кнопку. Это означает, что получение из коллекции работает нормально.
раздел рендеринга Спасибо за вашу помощь.