|
Your PR should be:
* // writeWB(java.io.OutputStream)
D writeWB PR EXTPROC(*JAVA
D :'org.apache.poi.hssf.usermodel-
D .HSSFWorkbook'
D :'write')
D parm O CLASS(*JAVA
D :'java.io.OutputStream')
Call it this way:
writeWB(wb:outFile);
You do not need to prototype the first parm(wb) in the 'call'. It is the object
that the writewb will operate on.
Create a CL wrapper and call your RPG module from there:
MONMSG MSGID(CPFA980)
ADDENVVAR ENVVAR(CLASSPATH) +
VALUE('/javalib/jakarta-poi-1.5.1.jar')
CALLPRC PRC(POIMSAMP)
Getting the classpath to work is very important. If you call your RPG program
interactively, your classpath/JVM is set until you sign off. So it is best to
create the cl wrapper to set the classpath and submit it to batch. Took me
quite a while before I got that worked out. Once I did everything fell into
place.
Here is a different example to check out:
http://www.mcpressonline.com/mc/1@xxxxxxxxxxxxxxxx@.6ae8269f!more=1#more
One thing I found in both examples is that they do not close the file when they
are done. This can leave a lock on the excel file. Add the following to your
source:
* // closeFile(java.io.OutputStream)
D closeFile PR EXTPROC(*JAVA
D :'java.io.FileOutputStream'
D :'close')
After the writeWB add:
// Close file
closeFile(outFile);
Other References:
http://www.midrangeserver.com/mpo/mpo022802-story06.html
http://www.midrangeserver.com/mpo/mpo013102-story02.html
http://www.midrangeserver.com/mpo/mpo041003-story01.html
http://www.midrangeserver.com/mpo/mpo042403-story04.html
-- Scott J.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.