Wednesday, October 08, 2008

Jasper Reports

සෑහෙන කට්ටක් කාලා java වලින් Jasper Reports වලට call කරන විදිය හොයා ගත්තා... ඇත්තටම පොඩි scene එකක් නමුත් හොයා ගන්න වෙලා ගියා..

කරපු විදිය මෙහෙමයි..
Reports හදන්න පාචිච්චි කළේ iReport 3.1.1
Jasper Reports හදන විදිය ගැනත් වෙනම ලියල දාන්නම්..
දැනට හදා ගත්ත Report එකක් java වලින් බලා ගන්න විදිය කියන්නම්...

මේ තියෙන්නෙ සම්පූර්ණ java code එක

package jasper;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.logging.Level;
import java.util.logging.Logger;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.view.JasperViewer;


public class JasperTest {
JasperReport jasperReport;
JasperPrint jasperPrint;

public static Connection establishConnection() {
Connection connection = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
String oracleURL = "jdbc:oracle:thin:@host:port:sid";
connection=DriverManager.getConnection(oracleURL,"username",
"password");
connection.setAutoCommit(false);
} catch (ClassNotFoundException ex) {
Logger.getLogger(JasperTest.class.getName()).log(Level.SEVERE, null, ex);
} catch (SQLException exception) {
exception.printStackTrace();
}
return connection;

}
public void testReport(){
try {
Connection connection = establishConnection();
HashMap jasperParameter = new HashMap();
jasperReport = JasperCompileManager.compileReport("C:\\test.jrxml");
jasperPrint = JasperFillManager.fillReport(jasperReport,jasperParameter, connection);
JasperViewer.viewReport(jasperPrint);
} catch (JRException ex) {
Logger.getLogger(JasperTest.class.getName()).log(Level.SEVERE, null, ex);
}

}
public static void main(String args[]){
new JasperTest().testReport();
}
}

මේ විදියට code එක ලියල
NetBeans Project එකේ libraries ටික මේ විදියට set කරන්න

jasperreports-3.1.0.jar
commons-beanutils-1.7.jar
commons-collections-2.1.jar
commons-digester-1.7.jar
commons-logging-1.0.2.jar
iText-2.1.3.jar
jdt-compiler-3.1.1.jar
ojdbc14.jar

මේකෙ වැදගත්ම දේ තමයි iReport libs වල තියෙන jasperreports.jar (jasperreports-3.1.0.jar) version එක අපේ Project libraries වලත් තියෙන්නෙ ඕනෙ. අනිත් එක තමයි jdt-compiler.jar (jdt-compiler-3.1.1.jar) version එකත්
iReport සහ අපේ Project libraries වල සමාන වෙන්න ඕනේ.

Netbeans 6.X වලට එන Jasper Report plugin එක පාවිච්චි කරලත් ලේසියෙන්ම Reports හදන්න පුළුවන්..

යාළුවෙකුගෙ වැඩකට උදව්වක් විදියට විස්තර හොයල තමයි මේ දේවල් ටික හොයා ගත්තේ

වැඩි විස්තර පස්සෙ ලියන්නම්...

මේ link එක ගොඩක් උදව් වුණා වැරදි හොයා ගන්න.


jdt-compiler-3.1.1.jar එක ගත්තෙ මේ
link එකෙන්

මේකෙත් කරන විදිය ගැන විස්තර තියෙනවා..
http://www.cise.ufl.edu/~otopsaka/CIS4301/ReportDemo/ReportFromJava.html


කව්රු හරි වැඩි විස්තර දන්නවනම් ලියන්න...

4 comments:

  1. බොහොම අගෙයි.
    මමත් ඕක කාලයක් තිස්සෙ හොය හොය හිටියෙ.
    ඉතුරු ටිකත් ලියන්න.........

    ReplyDelete
  2. This article was really helpful to me when I was struggling with Jasper Reports.Thank you very much for this post..

    ReplyDelete
  3. thanx brother, your are save my valuble time

    ReplyDelete