Merge branch 'master' of github.com:mortenbra/alexandria-plsql-utils
This commit is contained in:
commit
c121c58480
@ -260,6 +260,7 @@ is
|
|||||||
l_hdr_value varchar2(1024);
|
l_hdr_value varchar2(1024);
|
||||||
l_hdr header;
|
l_hdr header;
|
||||||
l_hdrs header_table;
|
l_hdrs header_table;
|
||||||
|
l_returnvalue xmltype;
|
||||||
begin
|
begin
|
||||||
|
|
||||||
-- determine database characterset, if not AL32UTF8, conversion will be necessary
|
-- determine database characterset, if not AL32UTF8, conversion will be necessary
|
||||||
@ -389,13 +390,17 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
utl_http.end_response(l_http_resp);
|
utl_http.end_response(l_http_resp);
|
||||||
|
|
||||||
|
begin
|
||||||
|
l_returnvalue := xmltype.createxml( l_clob );
|
||||||
|
exception when others then
|
||||||
|
if sqlcode = -31011 then -- invalid xml
|
||||||
|
raise_application_error( -20001, 'HTTP response could not be converted to XML. Response was (first 1000 characters): ' || dbms_lob.substr( l_clob, 1000 ));
|
||||||
|
end if;
|
||||||
|
end;
|
||||||
|
dbms_lob.freetemporary( l_clob );
|
||||||
|
|
||||||
return xmltype.createxml(l_clob);
|
return l_returnvalue;
|
||||||
|
|
||||||
exception when others then
|
|
||||||
if sqlcode = -31011 then -- its not xml
|
|
||||||
return null;
|
|
||||||
end if;
|
|
||||||
end make_request;
|
end make_request;
|
||||||
|
|
||||||
function make_rest_request(
|
function make_rest_request(
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
CREATE OR REPLACE package body xlsx_builder_pkg
|
CREATE OR REPLACE package body xlsx_builder_pkg
|
||||||
as
|
as
|
||||||
--
|
--
|
||||||
c_LOCAL_FILE_HEADER constant raw(4) := hextoraw( '504B0304' ); -- Local file header signature
|
c_LOCAL_FILE_HEADER constant raw(4) := hextoraw( '504B0304' ); -- Local file header signature
|
||||||
c_END_OF_CENTRAL_DIRECTORY constant raw(4) := hextoraw( '504B0506' ); -- End of central directory signature
|
c_END_OF_CENTRAL_DIRECTORY constant raw(4) := hextoraw( '504B0506' ); -- End of central directory signature
|
||||||
@ -1624,9 +1624,9 @@ ts timestamp := systimestamp;
|
|||||||
loop
|
loop
|
||||||
t_xxx := t_xxx || '<autoFilter ref="' ||
|
t_xxx := t_xxx || '<autoFilter ref="' ||
|
||||||
alfan_col( nvl( workbook.sheets( s ).autofilters( a ).column_start, t_col_min ) ) ||
|
alfan_col( nvl( workbook.sheets( s ).autofilters( a ).column_start, t_col_min ) ) ||
|
||||||
nvl( workbook.sheets( s ).autofilters( a ).row_start, workbook.sheets( s ).rows.first() ) || ':' ||
|
to_char( nvl( workbook.sheets( s ).autofilters( a ).row_start, workbook.sheets( s ).rows.first() )) || ':' ||
|
||||||
alfan_col( coalesce( workbook.sheets( s ).autofilters( a ).column_end, workbook.sheets( s ).autofilters( a ).column_start, t_col_max ) ) ||
|
alfan_col( coalesce( workbook.sheets( s ).autofilters( a ).column_end, workbook.sheets( s ).autofilters( a ).column_start, t_col_max ) ) ||
|
||||||
nvl( workbook.sheets( s ).autofilters( a ).row_end, workbook.sheets( s ).rows.last() ) || '"/>';
|
to_char( nvl( workbook.sheets( s ).autofilters( a ).row_end, workbook.sheets( s ).rows.last() )) || '"/>';
|
||||||
end loop;
|
end loop;
|
||||||
if workbook.sheets( s ).mergecells.count() > 0
|
if workbook.sheets( s ).mergecells.count() > 0
|
||||||
then
|
then
|
||||||
@ -1694,7 +1694,7 @@ ts timestamp := systimestamp;
|
|||||||
t_xxx := t_xxx || '<pageMargins left="0.7" right="0.7" top="0.75" bottom="0.75" header="0.3" footer="0.3"/>';
|
t_xxx := t_xxx || '<pageMargins left="0.7" right="0.7" top="0.75" bottom="0.75" header="0.3" footer="0.3"/>';
|
||||||
if workbook.sheets( s ).comments.count() > 0
|
if workbook.sheets( s ).comments.count() > 0
|
||||||
then
|
then
|
||||||
t_xxx := t_xxx || '<legacyDrawing r:id="rId' || ( workbook.sheets( s ).hyperlinks.count() + 1 ) || '"/>';
|
t_xxx := t_xxx || '<legacyDrawing r:id="rId' || to_char( workbook.sheets( s ).hyperlinks.count() + 1 ) || '"/>';
|
||||||
end if;
|
end if;
|
||||||
--
|
--
|
||||||
t_xxx := t_xxx || '</worksheet>';
|
t_xxx := t_xxx || '</worksheet>';
|
||||||
@ -1949,6 +1949,7 @@ style="position:absolute;margin-left:35.25pt;margin-top:3pt;z-index:' || to_char
|
|||||||
then
|
then
|
||||||
dbms_sql.close_cursor( t_c );
|
dbms_sql.close_cursor( t_c );
|
||||||
end if;
|
end if;
|
||||||
|
raise;
|
||||||
end;
|
end;
|
||||||
end xlsx_builder_pkg;
|
end xlsx_builder_pkg;
|
||||||
/
|
/
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
create or replace package xlsx_builder_pkg
|
create or replace package xlsx_builder_pkg
|
||||||
as
|
authid current_user as
|
||||||
/**********************************************
|
/**********************************************
|
||||||
**
|
**
|
||||||
** Author: Anton Scheffer
|
** Author: Anton Scheffer
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user