Jexcel
Jexcel is a collection of jsp's and beans that will allow a developer to
generate the Excel Web Publishing objects in a clients browser. To my
knowledge it is the only project of its kind, due (possibly) to the bizzare
nature of the Microsoft Web Publishing APIs.
Here is an example of what JExcel can do.
No commercial or proprietary software is required to run Jexcel
except a jsp or servlet container, like resin.
| download: |
|
| documentation: |
readme,
changelog
|
| status: |
Production. Jexcel is ready for production (and is currently in production).
|
| maintainer: |
Shawn Deleurme |
| license: |
GPL |
| keywords: |
|
-----[ INTRODUCTION ]------------------------------------------------
Jexcel is a reaction to the bizarre windows IE apis designed to
deliver rich client-side Excel components to the browser.
The programs in this suite have been built using the design
philosophy of "simple programs that do one thing well". You will not
find any monolithic APIs or application frameworks here.
Contact Threebit if you have questions, bugs, bug fixes, etc.
Cheers,
Shawn Deleurme,
shawn -at- deleurme.com
http://www.threebit.net/
-----[ EXAMPLE JSP ]-------------------------------------------------
<html>
<head></head>
<body onLoad="run()" >
<%
// Jexcel now flushes after every method call.
List items = new ArrayList () ;
ExcelSheet sheet = new ExcelSheet("sheet", out, items,"800", "400", "Transactions");
// Right a resultset to a sheet, call i thrans and have it start at A1
int lastrow = sheet.drawTable("trans", db.query ( sql ), "A1");
// Opens up a manual formatting block. The name is really unimportant.
sheet.openManual("formatting");
// Select some rows.
sheet.rawWrite(".Range(\"D1:I"+lastrow+"\").Select");
// Format them as currency.
sheet.rawWrite(".Selection.NumberFormat = \"$0.00\"");
// Autofit is cool.
sheet.autofit();
sheet.closeManual();
%>
<script language=VBScript>
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' This is where any scripts that need be included and run on startup by the report app end up
'
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Sub run ()
<% for(Iterator i=items.iterator();i.hasNext();){out.println(i.next()+"()\n"); } %>
End Sub
</script>
</body>
</html>
-----[ LICENSE ]-----------------------------------------------------
$Id: readme.txt,v 1.2 2003/01/11 08:15:37 kevino Exp $
Copyright 2003 Shawn Deleurme and Kevin O'Donnell
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
See LICENSE.TXT for a full copy of the GNU General Public License.