Skip to content

Commit dc3fac1

Browse files
author
eaolson
committed
Merge remote-tracking branch 'refs/remotes/mortenbra/master'
2 parents 3bffe1e + 8d86031 commit dc3fac1

17 files changed

+2921
-211
lines changed

README.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
# alexandria-plsql-utils
22
Oracle PL/SQL Utility Library
33

4-
<img src="http://plsql-utils.googlecode.com/files/alexandria-logo.jpg">
4+
![](alexandria-logo.jpg)
55

66
This library is a collection of various utility packages for PL/SQL, as well as links to useful libraries hosted and maintained elsewhere.
77

88

99
##Generate PDF files using PL/SQL
1010

1111

12-
* http://technology.amis.nl/2012/04/11/generating-a-pdf-document-with-some-plsql-as_pdf_mini-as_pdf3/
13-
* http://technology.amis.nl/blog/8650/as_pdf-generating-a-pdf-document-with-some-plsql
12+
* https://technology.amis.nl/2012/04/11/generating-a-pdf-document-with-some-plsql-as_pdf_mini-as_pdf3/
13+
* https://technology.amis.nl/2010/10/20/as_pdf-generating-a-pdf-document-with-some-plsql/
1414
* http://www.erasme.org/PL-FPDF,1337?lang=en
1515
* http://ora-00001.blogspot.com/2009/10/free-pdf-package-for-plsql.html
1616
* http://sourceforge.net/projects/pljrxml2pdf/
@@ -21,7 +21,7 @@ This library is a collection of various utility packages for PL/SQL, as well as
2121

2222
##Generate Excel files using PL/SQL
2323

24-
* http://technology.amis.nl/blog/10995/create-an-excel-file-with-plsql
24+
* https://technology.amis.nl/2011/02/19/create-an-excel-file-with-plsql/
2525
* http://www.jasonsdevelopercorner.com/?page_id=8
2626
* https://xml-spreadsheet.samplecode.oracle.com/
2727
* http://sanjeev-oracle-world.blogspot.com/2007/06/create-excel-workbook-by-plsql-code.html
@@ -39,15 +39,15 @@ This library is a collection of various utility packages for PL/SQL, as well as
3939
<img src="http://upload.wikimedia.org/wikipedia/commons/thumb/1/1b/X-office-document.svg/48px-X-office-document.svg.png" align="right" /><img src="http://upload.wikimedia.org/wikipedia/commons/thumb/0/07/X-office-presentation.svg/48px-X-office-presentation.svg.png" align="right" /><img src="http://upload.wikimedia.org/wikipedia/commons/thumb/f/f8/X-office-spreadsheet.svg/48px-X-office-spreadsheet.svg.png" align="right" /><br>
4040

4141
* http://ora-00001.blogspot.com/2011/02/working-with-office-2007-ooxml-files.html
42-
* http://technology.amis.nl/blog/8090/parsing-a-microsoft-word-docx-and-unzip-zipfiles-with-plsql
42+
* https://technology.amis.nl/2010/06/09/parsing-a-microsoft-word-docx-and-unzip-zipfiles-with-plsql/
4343
* http://www.docufy.be/
4444
* OOXML_UTIL_PKG
4545

4646
##Zip and unzip files using PL/SQL
4747

4848
<img src="http://upload.wikimedia.org/wikipedia/commons/thumb/9/9c/The_Unarchiver_zip.png/64px-The_Unarchiver_zip.png" align="right" /><br>
4949

50-
* http://technology.amis.nl/blog/7626/utl_compress-gzip-and-zlib
50+
* https://technology.amis.nl/2010/03/13/utl_compress-gzip-and-zlib/
5151
* ZIP_UTIL_PKG
5252

5353
##Generate and parse CSV files using PL/SQL
@@ -250,8 +250,8 @@ This library is a collection of various utility packages for PL/SQL, as well as
250250

251251
##Miscellaneous utilities and demos
252252

253-
* http://www.toadworld.com/Portals/0/stevenf/demo.zip
254-
* http://www.toadworld.com/ORACLE/StevenFeuersteinsPLSQLObsession/tabid/153/Default.aspx
253+
* http://www.oracle.com/webfolder/technetwork/tutorials/plsql/sfdemo.zip
254+
* http://www.toadworld.com/platforms/oracle/w/wiki/8243.plsql-obsession
255255

256256
##PL/SQL Frameworks
257257

@@ -264,7 +264,7 @@ This library is a collection of various utility packages for PL/SQL, as well as
264264

265265
##Unit Testing Frameworks for PL/SQL
266266

267-
* http://sourceforge.net/projects/utplsql/
267+
* https://utplsql.github.io/ (version 3 beta)
268268
* http://code.google.com/p/pluto-test-framework/
269269

270270
##Documentation Generators (JavaDoc-style)

alexandria-logo.jpg

48.6 KB
Loading

demos/xlsx_builder_pkg_demo.sql

Lines changed: 68 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
-- see http://technology.amis.nl/blog/10995/create-an-excel-file-with-plsql
22

33
begin
4+
xlsx_builder_pkg.clear_workbook;
45
xlsx_builder_pkg.new_sheet;
56
xlsx_builder_pkg.cell( 5, 1, 5 );
67
xlsx_builder_pkg.cell( 3, 1, 3 );
78
xlsx_builder_pkg.cell( 2, 2, 45 );
89
xlsx_builder_pkg.cell( 3, 2, 'Anton Scheffer', p_alignment => xlsx_builder_pkg.get_alignment( p_wraptext => true ) );
9-
xlsx_builder_pkg.cell( 1, 4, sysdate );
10+
xlsx_builder_pkg.cell( 1, 4, sysdate, p_fontId => xlsx_builder_pkg.get_font( 'Calibri', p_rgb => 'FFFF0000' ) );
1011
xlsx_builder_pkg.cell( 2, 4, sysdate, p_numFmtId => xlsx_builder_pkg.get_numFmt( 'dd/mm/yyyy h:mm' ) );
1112
xlsx_builder_pkg.cell( 3, 4, sysdate, p_numFmtId => xlsx_builder_pkg.get_numFmt( xlsx_builder_pkg.orafmt2excel( 'dd/mon/yyyy' ) ) );
1213
xlsx_builder_pkg.cell( 5, 5, 75, p_borderId => xlsx_builder_pkg.get_border( 'double', 'double', 'double', 'double' ) );
@@ -33,5 +34,71 @@ begin
3334
end;
3435
/
3536

37+
-- Create an Excel file with validation
38+
begin
39+
xlsx_builder_pkg.clear_workbook;
40+
xlsx_builder_pkg.new_sheet;
41+
xlsx_builder_pkg.cell( 1, 6, 5 );
42+
xlsx_builder_pkg.cell( 1, 7, 3 );
43+
xlsx_builder_pkg.cell( 1, 8, 7 );
44+
xlsx_builder_pkg.new_sheet;
45+
xlsx_builder_pkg.cell( 2, 6, 15, p_sheet => 2 );
46+
xlsx_builder_pkg.cell( 2, 7, 13, p_sheet => 2 );
47+
xlsx_builder_pkg.cell( 2, 8, 17, p_sheet => 2 );
48+
xlsx_builder_pkg.list_validation( 6, 3, 1, 6, 1, 8, p_show_error => true, p_sheet => 1 );
49+
xlsx_builder_pkg.defined_name( 2, 6, 2, 8, 'Anton', 2 );
50+
xlsx_builder_pkg.list_validation
51+
( 6, 1, 'Anton'
52+
, p_style => 'information'
53+
, p_title => 'valid values are'
54+
, p_prompt => '13, 15 and 17'
55+
, p_show_error => true
56+
, p_error_title => 'Are you sure?'
57+
, p_error_txt => 'Valid values are: 13, 15 and 17'
58+
, p_sheet => 1 );
59+
xlsx_builder_pkg.save( 'MY_DIR', 'my.xlsx' );
60+
end;
61+
/
3662

3763

64+
begin
65+
xlsx_builder_pkg.clear_workbook;
66+
xlsx_builder_pkg.new_sheet;
67+
xlsx_builder_pkg.cell( 1, 6, 5 );
68+
xlsx_builder_pkg.cell( 1, 7, 3 );
69+
xlsx_builder_pkg.cell( 1, 8, 7 );
70+
xlsx_builder_pkg.set_autofilter( 1,1, p_row_start => 5, p_row_end => 8 );
71+
xlsx_builder_pkg.new_sheet;
72+
xlsx_builder_pkg.cell( 2, 6, 5 );
73+
xlsx_builder_pkg.cell( 2, 7, 3 );
74+
xlsx_builder_pkg.cell( 2, 8, 7 );
75+
xlsx_builder_pkg.set_autofilter( 2,2, p_row_start => 5, p_row_end => 8 );
76+
xlsx_builder_pkg.save( 'MY_DIR', 'my.xlsx' );
77+
end;
78+
/
79+
80+
-- Create workbook with frozen cells
81+
begin
82+
xlsx_builder_pkg.clear_workbook;
83+
xlsx_builder_pkg.new_sheet;
84+
for c in 1 .. 10
85+
loop
86+
xlsx_builder_pkg.cell( c, 1, 'COL' || c );
87+
xlsx_builder_pkg.cell( c, 2, 'val' || c );
88+
xlsx_builder_pkg.cell( c, 3, c );
89+
end loop;
90+
xlsx_builder_pkg.freeze_rows( 1 );
91+
xlsx_builder_pkg.new_sheet;
92+
for r in 1 .. 10
93+
loop
94+
xlsx_builder_pkg.cell( 1, r, 'ROW' || r );
95+
xlsx_builder_pkg.cell( 2, r, 'val' || r );
96+
xlsx_builder_pkg.cell( 3, r, r );
97+
end loop;
98+
xlsx_builder_pkg.freeze_cols( 3 );
99+
xlsx_builder_pkg.new_sheet;
100+
xlsx_builder_pkg.cell( 3, 3, 'Start freeze' );
101+
xlsx_builder_pkg.freeze_pane( 3,3 );
102+
xlsx_builder_pkg.save( 'MY_DIR', 'my.xlsx' );
103+
end;
104+
/

doc/changelog.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11

2+
NOTE: This changelog is no longer being maintained. See the Git changelog for an up-to-date list of changes.
3+
24
Version 1.7.1
35
=============
46

0 commit comments

Comments
 (0)