Hi Ingo,

When I have this case on a projet, I use the content system to load the template.

Example :
Store a default template for each organization or a template specific by some customer.
 * Create PartyContentType : INVOICE_TEMPLATE
 * Load your templates en Content
 * Associate your content to each organization in ofbiz
 * if a customer have a specific template associate it

On your InvoicePDF screen resolve the template by a groovy script :
[code]
   //resolve if customer template is present
partyContents = delegator.findByAndCache("PartyContent", [partyId : invoice.partyId]) if (partyContents) partyContents = EntityUtil.filterByDate(partyContents, invoice.invoiceDate)
   if (partyContents) partyContent = partyContents[0]

   if (!partyContent) { //resolve if organization hasa template
partyContents = delegator.findByAndCache("PartyContent", [partyId : invoice.partyIdFrom]) if (partyContents) partyContents = EntityUtil.filterByDate(partyContents, invoice.invoiceDate)
       if (partyContents) partyContent = partyContents[0]
   }
[/code]
Warn, I wrote the code on the fly, maybe it doesn't contains the absolute true ;)

Now you have a content, you can resolve your flow has you want (ftl injection, content service to renderer string), etc ....


Le 05/09/2014 23:25, iwolf a écrit :
Hi All,

I am looking for a way to add additional invoice templates without changing
to much of the original ofbiz code if possible.

The case:
- multiple unrelated companies
- multi tenant environment
- multiple invoice layouts

Any hint/idea would be appreciated.

Kind regards,
Ingo



--
View this message in context: 
http://ofbiz.135035.n4.nabble.com/Multiple-invoice-templates-tp4654897.html
Sent from the OFBiz - User mailing list archive at Nabble.com.

Reply via email to