Jump to content
JasperReports Library 7.0 is now available ×

Application DataSource in place of SQL Query


2006 IR Open Dicussion

Recommended Posts

By: subesingh - subesingh1

Application DataSource in place of SQL Query

2006-01-07 05:02

In jasper report in place of data source SQL query, I would like to use the application class object like DataModel. DataModel class just like a resultset.

 

Is any one have idea how to do it?

 

Thanks in advance.

 

 

 

 

 

 

 

 

By: Angelos Yannopoulos - a_yannopoulos

RE: Application DataSource in place of SQL Qu

2006-01-09 08:47

in jasper reports check jasperreports-1.1.1demosamplesdatasourceCustomDataSource.java

 

in ireports note you need to extend JRAbstractBeanDataSourceProvider as a JRDataSourceProvider to import fields automatically...

 

 

 

 

 

By: Daffodil Software Ltd, India - daffodilsw

RE: Application DataSource in place of SQL Query

2006-01-10 01:38

Hi,

 

Thanks for your reply.

 

I have study the class that you have suggest which is given below:

 

import net.sf.jasperreports.engine.JRDataSource;

import net.sf.jasperreports.engine.JRException;

import net.sf.jasperreports.engine.JRField;

 

 

/**

* @author Teodor Danciu (teodord@users.sourceforge.net)

* @version $Id: CustomDataSource.java,v 1.11 2005/11/28 09:20:45 teodord Exp $

*/

public class CustomDataSource implements JRDataSource

{

 

 

/**

*

*/

private Object[][] data =

{

{"Berne", new Integer(22), "Bill Ott", "250 - 20th Ave."},

{"Berne", new Integer(9), "James Schneider", "277 Seventh Av."},

{"Boston", new Integer(32), "Michael Ott", "339 College Av."},

{"Boston", new Integer(23), "Julia Heiniger", "358 College Av."},

{"Chicago", new Integer(39), "Mary Karsen", "202 College Av."},

{"Chicago", new Integer(35), "George Karsen", "412 College Av."},

{"Chicago", new Integer(11), "Julia White", "412 Upland Pl."},

{"Dallas", new Integer(47), "Janet Fuller", "445 Upland Pl."},

{"Dallas", new Integer(43), "Susanne Smith", "2 Upland Pl."},

{"Dallas", new Integer(40), "Susanne Miller", "440 - 20th Ave."},

{"Dallas", new Integer(36), "John Steel", "276 Upland Pl."},

{"Dallas", new Integer(37), "Michael Clancy", "19 Seventh Av."},

{"Dallas", new Integer(19), "Susanne Heiniger", "86 - 20th Ave."},

{"Dallas", new Integer(10), "Anne Fuller", "135 Upland Pl."},

{"Dallas", new Integer(4), "Sylvia Ringer", "365 College Av."},

{"Dallas", new Integer(0), "Laura Steel", "429 Seventh Av."},

{"Lyon", new Integer(38), "Andrew Heiniger", "347 College Av."},

{"Lyon", new Integer(28), "Susanne White", "74 - 20th Ave."},

{"Lyon", new Integer(17), "Laura Ott", "443 Seventh Av."},

{"Lyon", new Integer(2), "Anne Miller", "20 Upland Pl."},

{"New York", new Integer(46), "Andrew May", "172 Seventh Av."},

{"New York", new Integer(44), "Sylvia Ott", "361 College Av."},

{"New York", new Integer(41), "Bill King", "546 College Av."},

{"Oslo", new Integer(45), "Janet May", "396 Seventh Av."},

{"Oslo", new Integer(42), "Robert Ott", "503 Seventh Av."},

{"Paris", new Integer(25), "Sylvia Steel", "269 College Av."},

{"Paris", new Integer(18), "Sylvia Fuller", "158 - 20th Ave."},

{"Paris", new Integer(5), "Laura Miller", "294 Seventh Av."},

{"San Francisco", new Integer(48), "Robert White", "549 Seventh Av."},

{"San Francisco", new Integer(7), "James Peterson", "231 Upland Pl."}

};

 

private int index = -1;

 

 

/**

*

*/

public CustomDataSource()

{

}

 

 

/**

*

*/

public boolean next() throws JRException

{

index++;

 

return (index < data.length);

}

 

 

/**

*

*/

public Object getFieldValue(JRField field) throws JRException

{

Object value = null;

 

String fieldName = field.getName();

 

if ("the_city".equals(fieldName))

{

value = data[index][0];

}

else if ("id".equals(fieldName))

{

value = data[index][1];

}

else if ("name".equals(fieldName))

{

value = data[index][2];

}

else if ("street".equals(fieldName))

{

value = data[index][3];

}

 

return value;

}

 

 

}

 

 

But as per I understand it does not fulfill my requirement.I would like to use the application class object in place of SQL query that I have used in report datasource.

I have have a class DataModel in project.It is just like a resultset.It is able to provide the all the data of a table.

I do not want to execute the query again and again.It slow down the application, so I would like to use the class object.

I do not found the suitable example for it.I am waiting for your kind reply.

 

With Best Regards,

Sube Singh

Link to comment
Share on other sites

  • Replies 0
  • Created
  • Last Reply

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Popular Days

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...