APEX 5 Браузер файлов apex_application_temp_files таблица пуста - PullRequest
0 голосов
/ 19 февраля 2019

Когда я создал страницу на APEX 5 для загрузки файла, apex_application_temp_files пуст, и он не позволяет мне вставить файл в мою пользовательскую таблицу.

У меня есть это как мой код

INSERT INTO custom_table(
     name,
     filename,
     mime_type,
     content,
     file_type,
     file_description,
     upload_by,
     upload_date)
     SELECT name, 
         filename,
         mime_type, 
         blob_content,
         :P1_FILETYPE,
         null,
         :APP_USER,
         sysdate
FROM apex_application_temp_files
WHERE 1=1
AND name = :P1_FILEBROWSER;

Когда я нажимаю кнопку, таблица не имеет значения.Я выполняю код pl / sql для динамического действия, когда нажата кнопка UPLOAD.

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

См. код, который работал ниже, но он не дает мне имя, имя файла и тип MIME..

Как я могу это исправить?

INSERT INTO custom_table(
     name,
     filename,
     mime_type,
     content,
     file_type,
     file_description,
     upload_by,
     upload_date)
     values ( 'name', 
     'filename',
     'mime',
     :P1_FILEBROWSER,
     :P1_FILETYPE,
         null,
         :APP_USER,
         sysdate
     );

1 Ответ

0 голосов
/ 23 февраля 2019

Пожалуйста, попробуйте код удара

  for i in 1 .. v_arr.count
loop
    :p1_id := st_id.nextval;
    insert into custom_table(
                             id,
                             name,
                             content,
                             filename,
                             mime_type, 
                             file_type,
                             file_description,
                             upload_by,
                             upload_date)
    values (:p1_id, 
            (select name from apex_application_temp_files where name = v_arr(i)),
            (select blob_content from apex_application_temp_files where name = v_arr(i)),
            (select filename from apex_application_temp_files where name = v_arr(i)),
            (select mime_type from apex_application_temp_files where name = v_arr(i)),
            null,
            null,
            null,
            null
            );
end loop; 
...