problem with deciding whether to or not to print heading on last page : xsl-fo
Hi i have a problem with pdf generation using xsl-fo. The pdf print invoice lines in each page. So there is a conditional checking at the last page to determine whether to or not to print the heading on last page. If there is one or more lines in the last page then there should be a heading. Otherwise not.
currently it is done using the logic below
if(total number of invoice lines== preceding::number of invoice lines+1)
{
call an empty marker
}
else
{
call a marker which prints the heading
}
when preceding number of invoice lines+1 is equal to total number of invoice lines, heading will not be displayed. The logic holds true when there is no more lines to be displayed in the last page or when the number of lines in last page is greater than one.
Now the problem is,
the above logic fails when there is only one line in the last page.
The condition if(total number of invoice lines==preceeding::number of invoice lines+1) will become true and an empty marker will be called which will not display the heading. I need to display the heading even if there is only one invoice line in the last page.
Is there any way to solve this problem?
Any help is appreciated.
-Arun
screenshots:
The following screen shots show a two page invo开发者_如何学编程ice.
following screen shot shows last page with two invoice lines. When there are only two lines in the last page, the logic holds.
http://img97.imageshack.us/i/85089628.jpg
But when there is only one line in the last page the conditional check if(total number of invoice lines==preceeding::number of invoice lines+1) become true and the heading is not displayed.
http://img222.imageshack.us/i/49057497.jpg
You could extends your if condition with an OR condition. I do not know the exact syntax now, but maybe something like
if(total number of invoice lines != 1 ||
total number of invoice lines== preceding::number of invoice lines+1)
{
call an empty marker
} ...
might work.
精彩评论