Bij het uitvoeren van de app in Invantive cloud verschijnt de volgende error:
itgengpr015:
Onbekende tabel ‘TEST’.
Komt waarschijnlijk overeen met topic: Itgengpr015 melding bij gebruik net aangemaakte tabel vanuit PSQL blok op App Online
Script:
declare
p_run boolean;
--
--
l_filename varchar2;
l_payload blob;
l_query varchar2;
l_workbook excel_workbook;
l_worksheet excel_worksheet;
l_binary blob;
l_cnt number;
l_cnt_missing_item number;
l_cnt_missing_account number;
l_list_missing_items varchar2;
l_list_missing_accounts varchar2;
begin
--
-- Get parameters.
--
p_run := cast(cloud_http. get_request_form_value('p_run') as boolean);
--
if coalesce(p_run, false) = false
then
--
-- Enter parameters.
--
cloud_http.set_use_template(true);
cloud_http.set_template_step_name(translate_resources('{res:itgen_parameters}'));
cloud_http.append_line_to_response_body_text('<form method="post" enctype="multipart/form-data">');
cloud_http.append_line_to_response_body_text('<input type="hidden" id="p_run" name="p_run" value="true"/>');
cloud_http.append_line_to_response_body_text('<ul>');
cloud_http.append_line_to_response_body_text
( '<li><label for="p_file">'
|| translate_resources('{res:itgen_file}')
|| '</label></li><li><input type="file" id="p_file" name="p_file" accept=".xlsx" required/></li>'
);
cloud_http.append_line_to_response_body_text('<li><input type="submit" value="Inlezen in Exact Online"/></li>');
cloud_http.append_line_to_response_body_text('</ul>');
cloud_http.append_line_to_response_body_text('</form>');
else
--
-- Process form.
--
l_filename := cloud_http.get_request_form_file_name('p_file');
--
if l_filename is null
then
raise_application_error('sample001', 'The file name is empty.');
end if;
--
l_payload := cloud_http.get_request_form_file_contents('p_file');
--
if l_payload is null
then
raise_application_error('sample002', 'The file payload is empty.');
end if;
--
--
-- Transform standard excel spreadsheet into
-- a temporary table.
--
create or replace table test@InMemoryStorage
as
select xlsx.*
from exceltable
( worksheet 'Blad1'
passing l_payload
skip empty rows
skip first 1 rows
columns kolom1 varchar2 not null position next
, kolom2 int not null position next
) xlsx;
--
-- Generate output.
--
--
-- Set return to output JSON.
--
cloud_http.set_response_content_type('application/json');
--
-- Loop over result set and append JSON to response body.
--
for r in (execute immediate 'select * from test@InMemoryStorage for json auto')
loop
cloud_http.append_to_response_body_text(r.json);
end loop;
end if;
end;