Which rows are printed on a specific page
Which rows are printed on a specific page
I'm using RichViewXML and TRVReportHelper generate and print RV documents.
Now let's say that we have a XML with a big table (printed on multiple pages). I want to know which rows are printed on a specific page.
I tried with TRVReportHelper.GetFirstItemOnPage, but with this I just get the item number of the table -> I want to know specific row.
Any way to do this?
Thanks
Now let's say that we have a XML with a big table (printed on multiple pages). I want to know which rows are printed on a specific page.
I tried with TRVReportHelper.GetFirstItemOnPage, but with this I just get the item number of the table -> I want to know specific row.
Any way to do this?
Thanks
-
- Site Admin
- Posts: 17559
- Joined: Sat Aug 27, 2005 10:28 am
- Contact:
Well the problem is that we want to print a very big RV (xml generated) file into PDF. Usually it is just one very big table. We are talking 10000 PDF pages and more ...
For 'small' dataset it is working OK (up to 100000 rows), but after that it goes out of memory.
So I was thinking to generate and format pages one by one ....
For 'small' dataset it is working OK (up to 100000 rows), but after that it goes out of memory.
So I was thinking to generate and format pages one by one ....
-
- Site Admin
- Posts: 17559
- Joined: Sat Aug 27, 2005 10:28 am
- Contact:
What would you recommend?
What is the best/right way to generate large reports, using RV?
Generating PDF (the component for this) is not a problem. I tired to create 1GB dummy file and it was OK.
In any case, if we're building report in parts, the problems are page numbers. You don't know the total page count, until you finish.
Thanks
What is the best/right way to generate large reports, using RV?
Generating PDF (the component for this) is not a problem. I tired to create 1GB dummy file and it was OK.
In any case, if we're building report in parts, the problems are page numbers. You don't know the total page count, until you finish.
Thanks
-
- Site Admin
- Posts: 17559
- Joined: Sat Aug 27, 2005 10:28 am
- Contact:
Usually yes, but maybe in this case we could leave it out.
I think the only solution for this is to go over the whole PDF file again and print header/footer with page count (if the header/footer height is the same). Any other way?
OK in parts then. And back to my first question. Usually in this bit reports we have just one big table. Now you should somehow know when did you stop printing one part to start with the next one. I was thinking, if you know which row was printed on the last-1 page, you could generate & print the next part starting on a new page like it was one print (one iteration).
Thanks
I think the only solution for this is to go over the whole PDF file again and print header/footer with page count (if the header/footer height is the same). Any other way?
OK in parts then. And back to my first question. Usually in this bit reports we have just one big table. Now you should somehow know when did you stop printing one part to start with the next one. I was thinking, if you know which row was printed on the last-1 page, you could generate & print the next part starting on a new page like it was one print (one iteration).
Thanks
-
- Site Admin
- Posts: 17559
- Joined: Sat Aug 27, 2005 10:28 am
- Contact:
If you generate a report in parts, I think the real questions is how to start printing the next part at the same place where the previous part is ended?
If you separate a large document in parts, you already knows which parts consists of which rows.
When you finish printing a part N, you can get its height as HeightN = RVReportHelper.GetLastPageHeight, so you can start printing a part N+1 at YN+HeightN.
If you separate a large document in parts, you already knows which parts consists of which rows.
When you finish printing a part N, you can get its height as HeightN = RVReportHelper.GetLastPageHeight, so you can start printing a part N+1 at YN+HeightN.
True, but I want to do this with tables.
So the requirements are:
- have the table header row at every page (can be more than 1 row)
- user shouldn't notice when one part ended and the other started (could be a problem if a table/cell has a border)
- have the table footer row only at the last page (this shouldn't be a problem)
Procedure:
- printing 1 part (without footer row)
- at the end of 1 part (page N), I know where it ended (Height1: height as you showed)
- now I must generate a new xml with a table
- it should start the next part (at page N) at Height1, but without header row
- page N+1 starts normally with header row
- ...
Is there an option not to print header rows at the first page?
Thanks
So the requirements are:
- have the table header row at every page (can be more than 1 row)
- user shouldn't notice when one part ended and the other started (could be a problem if a table/cell has a border)
- have the table footer row only at the last page (this shouldn't be a problem)
Procedure:
- printing 1 part (without footer row)
- at the end of 1 part (page N), I know where it ended (Height1: height as you showed)
- now I must generate a new xml with a table
- it should start the next part (at page N) at Height1, but without header row
- page N+1 starts normally with header row
- ...
Is there an option not to print header rows at the first page?
Thanks
-
- Site Admin
- Posts: 17559
- Joined: Sat Aug 27, 2005 10:28 am
- Contact:
-
- Site Admin
- Posts: 17559
- Joined: Sat Aug 27, 2005 10:28 am
- Contact:
-
- Site Admin
- Posts: 17559
- Joined: Sat Aug 27, 2005 10:28 am
- Contact: