I am writing a Zen Report to output PDF invoices (Using Apache FOP and 2013.1.0). I need the detail section to always fill up the page even if there are only one or two items on that page of the invoice.
I do not see a good way to make the space beneath line item 26 appear. Do I have to hardcode the height of this section?
I believe the Remit section is always on the last page, and the Logo and full header is only on the first page.
The Full header with customer address will expand or contract based on the customer, so a static height would be difficult.
Thanks,
Derek
Hopefully this will work reasonably well (the spacing was done using the default font on my mail client (Calibri 11pt)):
InterSystems Logo Invoice
Partner Invoice Reference
Address
Here
Total Due ##,###.##
----------------------------------------------------------------
| Item | Description | Amount |
----------------------------------------------------------------
| 25| Coolness Factor | #,###.## |
| | | |
| 26| Coolness Factor X10 | #,###.## |
| | | |
| | | |
| | | |
| | | |
| | | |
----------------------------------------------------------------
Remit To Taxes #,###.##
Remit Total Due ##,###.##
Instructions
Here
Footer Address Telephone Legal Name Footer
Have you tried non-breakable space,   ? It looks like a space but the usual space-stripping rules do not apply to it.
Best Regards,
Jonathan
--
You received this message because you are subscribed to the Google Groups "InterSystems: Zen Community" group.
To post to this group, send email to
InterSys...@googlegroups.com
To unsubscribe from this group, send email to
InterSystems-Z...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/InterSystems-ZEN?hl=en
Zen Community Terms and Conditions:
http://groups.google.com/group/InterSystems-ZEN/web/community-terms-and-conditions
---
You received this message because you are subscribed to the Google Groups "InterSystems: Zen Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
intersystems-z...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
I can add spaces, but I’m not sure how I would extend the table height. Do I need to count lines or something?
In CSS for HTML I would specify top and bottom positions.
Hmm, perhaps I could put the border on the region-start, region-after, region-before, and region-end instead of on the table itself. Then my line items would be 100% width (of the region body, and I would only style the top, bottom and inner borders. Does that make sense? I’d just need to figure out how to put content in region-before and region-end. Does that work? Will content cause each region to expand leaving the remainder of the space for the body?
Thanks!
Derek
An xsl-fo table has a height attribute. You would specify it using xslfostyle on the table attribute for instance:
<table xslfostyle=”height:9.5in;”
In style or xslfostyle you could specify table borders. If height is friendly it will create a table of the appropriate height.
I haven’t tried this though.
If you add spaces you need to count lines.
The border on region-XXX sounds interesting. I haven’t tried it myself. Look at pageheader, pagefooter, pagestartsidebar, and pageendsidebar (the latter two are left and right extent areas.) They won’t expand as you put content in them. Rather you define their geometry and content is flowed into them. You need to use document attributes to control their geometry. Relevant are headerHeight, footerHeight, startSidebarLength, endSidebarLength. Look in the document class for more details on more attributes.
I just tried:
<table xslfostyle="height:9in;border:2pt solid black">
<item value="dummy"/>
</table>
And the border shrunk to fit the data. No joy with height.
It looks like a FOP limitation: http://stackoverflow.com/questions/11014047/xsl-fo-table-fixed-height