Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » BIRT » How to dynamically generate column heading and avoid outof memeory issue(How to dynamically generate column heading and avoid outof memeory issue)
How to dynamically generate column heading and avoid outof memeory issue [message #794636] Thu, 09 February 2012 14:28 Go to next message
balachandar sivalingam is currently offline balachandar sivalingamFriend
Messages: 9
Registered: January 2012
Junior Member
Hi

For our project we are planning to replace the existing report engine with Birts. For that I am doing POC(s). I was told like we should not use db query in report instead we should use POJO that will be returned from Java Application.

I followed some articles..I used scripted data source with data set. I was able to generate the report


1) Now I was told like another restiction is, Field name should be dynamically generated that means Columns need to be dynamically generated on the runtime.
Is it possible in birt to do this?

2) The code i am using is, generateing the report in PDF for all the rows at a time and put in the file. What will happen if the row size in million.

The Question is:

Can this file be incrementally build in the file system rather than in memory. Suppose fetched 300000 rows in db for report. If I extract all 300k rows in heap and then build a pdf file again in heap, we would get OutOfMemory Exception. Is there any efficient way of doing this in Birt. Extracting 1000 rows at a time, open stream , add data and close stream and do again.


Please clarify on the above.


Thanks,
balachandar
Re: How to dynamically generate column heading and avoid outof memeory issue [message #794809 is a reply to message #794636] Thu, 09 February 2012 18:19 Go to previous message
Jason Weathersby is currently offline Jason WeathersbyFriend
Messages: 9167
Registered: July 2009
Senior Member

On issue 1. I do not understand why you would not want to use a direct
query of the db. If this is a restriction that you have to do then that
is fine, but it should not be an issue with BIRT. You can dynamically
generate an entire report using the de api. There are a lot of examples
on birt-exchange.org for this.

On issue 2. Are you using a runandrender task or a run task followed by
a render task. If you use a run task it will write out to an
intermediate file (rptdocument) which can be used by a render task.

Jason

On 2/9/2012 9:28 AM, balachandar sivalingam wrote:
> Hi
>
> For our project we are planning to replace the existing report engine
> with Birts. For that I am doing POC(s). I was told like we should not
> use db query in report instead we should use POJO that will be returned
> from Java Application.
>
> I followed some articles..I used scripted data source with data set. I
> was able to generate the report
>
>
> 1) Now I was told like another restiction is, Field name should be
> dynamically generated that means Columns need to be dynamically
> generated on the runtime.
> Is it possible in birt to do this?
>
> 2) The code i am using is, generateing the report in PDF for all the
> rows at a time and put in the file. What will happen if the row size in
> million.
>
> The Question is:
>
> Can this file be incrementally build in the file system rather than in
> memory. Suppose fetched 300000 rows in db for report. If I extract all
> 300k rows in heap and then build a pdf file again in heap, we would get
> OutOfMemory Exception. Is there any efficient way of doing this in Birt.
> Extracting 1000 rows at a time, open stream , add data and close stream
> and do again.
>
>
> Please clarify on the above.
>
>
> Thanks,
> balachandar
>
Previous Topic:Access dataSet ColumnValue
Next Topic:"A data view is not available"
Goto Forum:
  


Current Time: Sat Apr 27 01:10:07 GMT 2024

Powered by FUDForum. Page generated in 7.13087 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top