2006 IR Open Dicussion Posted September 4, 2006 Share Posted September 4, 2006 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 More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now