You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ofbiz.apache.org by Nicolas Malin <ni...@nereide.fr> on 2018/02/03 22:26:03 UTC
Re: select your pdf document template from organizational party
Hello,
I update the patch on the issue [1] with only the engine to associate
the custom screen to an organizational party.
Don't hesitate to review and comment it ;)
Nicolas
[1] https://issues.apache.org/jira/browse/OFBIZ-10186,
On 23/01/2018 21:10, Nicolas Malin wrote:
> Hi all,
>
> Currently, I work on a pdf invoice creation for a personal project and
> I wish go for this time to improve the printable document
> configuration (like order pdf, invoice pdf, shipment pdf, and soon)
> related to the organizational party that at its origin.
>
> To realize it I started a POC where a add a new entity
> PartyAcctgPrefTplDoc (maybe you have a better name) that associate an
> organizational party (PartyAcctgPreference), a documentType
> (invoiceType, orderType...) and a content.
> The content return the screen to use (as blog concept) and the
> standard document screen return the given screen or call the default
> screen is empty.
>
> With this improvement, you can create your own pdf template document
> in your custom plugin with associate data and use it without any
> framework modification.
>
> More, if you have a specific case to rendering different document
> following functional case, you can implement it on your screen.
>
> Also, we can have a standard choice to rendering your document from a
> content, manageable from PartyContent association.
>
> The life isn't pretty ? (french expression, if you not understant,
> just ignore it :)
>
> Feel free if you have some remarks, I will create an issue for each
> document type manageable by this concept to detail more this idea.
>
> For example :
> Content data
> ---------------------
>
> <DataResource dataResourceId="MY_TPL_SALES_INV"
> dataResourceTypeId="URL_RESOURCE" dataResourceName="My templage sales
> invoice" mimeTypeId="application/pdf"
> objectInfo="component://myplugin/widget/AccountingPrintScreens.xml#MyBeautyfullInvoicePDF"/>
>
> <Content contentId="MY_TPL_SALES_INV" contentTypeId="DOCUMENT"
> dataResourceId="MY_TPL_SALES_INV" contentName="My Beautyfull template
> sales invoice with flowers"/>
>
> <ContentPurposeType contentPusposeTypeId="INVOICE_TEMPLATE"
> description="Content dedicate to rendering invoices"/>
>
> <PartyAcctgPrefTplDoc partyId="Company"
> invoiceTypeId="SALES_INVOICE" contentId="MY_TPL_SALES_INV"
> fromDate="2000-01-01 00:00:00" />
>
> ----------------------
>
> Standard screen
> (application/accounting/widget/AccountinPrintScreens.xml)
> -------------------------
> <screen name="InvoicePDF">...
> <actions><script
> location="component://accounting/groovyScripts/invoice/GetInvoiceTemplateScreen.groovy"/></actions>
> <widgets>
> <include-screen name="${screenName}"
> location="${screenLocation}"/>
> </widgets>
> </screen>
>
> <screen name="DefaultInvoicePDF">
> <section>.....
> ------------------------
>
> GetInvoiceTemplateScreen.groovy return DefaultInvoicePDF screen if
> didn't found any configuration for the invoice.partyIdFrom (for sales)
> or invoice.partyId (for purchase)
>
> Cheers,
>
> Nicolas
>