Accorto provides standard layouts for invoice layouts, including a summary format.
Without code changes, you can customize
- what fields are printed via the Invoice Settings (see below)
- adding additional header fields via the FieldSet "Pdf Report" of the Invoice object
- adding additional invoice line field via the FieldSet "Pdf Report" of the Invoice Line object.
Invoice Settings
In Setup > Custom Settings > Accorto Invoice Layout Settings, determine how the invoice is laid out:
Setting | Default | Description |
Show Organization Name | yes | Show Organization Name - yes (default) - no |
Organization Email | Email Address of Organization | |
Organization Web Address | Organization Web Address | |
Header Text 1 | Additional Header Text | |
Show Sales Rep | yes | Show Sales Rep (record owner) info - yes (default) - no |
Show Sales Rep Phone | yes | Show the Phone number of the Sales Rep (record owner) - yes (default) - no (if the Sales Rep is displayed) |
Show Sales Rep Email | no | Show the Email of the Sales Rep (record owner) - yes - no (default) (if the Sales Rep is displayed) |
Show Manager | yes | Show Manager (entered or derived from Project Manager) info - yes (default) or no |
Show Manager Phone | yes | Show Phone number of Manager - yes (default) - no (if Manager is displayed) |
Show Manager Email | no | Show Email of Manager - yes - no (default) (if Manager is displayed) |
Currency Prefix | Currency Prefix for amounts - only if the organization is not Multi-Currency - example: $ | |
Show Line Tax | yes | Always show Line Tax with Subtotal - yes (default) - no If the invoice contains tax information, the tax columns are automatically displayed. |
Line Description Show Reason | yes | Show the T+E Reason (if any) in the Line Description (applies when creating the invoice) |
Line Note Show Daily Description | yes | Show the T+E Item Daily Description in the Invoice Line Note - yes (default - with date+hours) - all (yes+description) - plain (only descriptions) - no (applies when creating the invoice) |
Summary Service Level | Summary Invoice Service Grouping (how the invoice lines are summarized): - ResourceProjectLine (default) - ResourceProjectPhase - ResourceProject - Resource - Project - ProjectResource | |
Summary Details | yes | Include details in Summary Layout - yes (default) - no |
Invoice Customization
You can customize the standard layout further by
- adding a logo from static resources
- change/overwrite the CSS
Custom Page - e.g., CustomInvoice.page
<apex:page standardController="accorto__Invoice__c" showHeader="false" standardStylesheets="false" sidebar="false" applyHtmlTag="false" applyBodyTag="false" docType="html-5.0" renderAs="pdf" id="inv"> <html xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <head> <style> .slds .orgLogo { height: 70px; margin-right: 20px; } .docDescription { padding-top: 5px; } .docNote { padding-top: 5px; font-style: italic; } </style> </head> <body> <div class="slds"> <accorto:InvoiceHTML id="c" invoiceId="{!$CurrentPage.parameters.id}" orgLegal=" " logoUrl="{!URLFOR($Resource.MyStaticResource)}" /> </div> </body> </html> </apex:page>
(replace the logoUrl with the reference to your logo in static resources)
In Setup > Custom Settings > Accorto Settings (Manage)
set the field Invoice: Custom Page to "c__CustomInvoice" (assuming the VisualForce Page Name is CustomInvoice)
Or create a button which links to your VisualForce page and add it to the invoice layout.
Multiple Addresses and Logos
Customize your Invoice with Address and Logos via Financial Organizations.
Use the default organization or set up your system to use multiple organizations
to create invoices with different company names, addresses, and logos.
See Financial Organization for details.
Translation
You can create Invoices in other languages. Check Invoice Translation for details.
Custom Layout
If the customization options are not sufficient, you need to create a custom layout.
Here are the steps if you want to create a custom invoice layout:
- upload your logos and optional style sheets as static resources
- create a component with the layout, e.g. InvoiceCustom.component - see attachment
- create a Visualforce page, e.g. InvoiceCustom.page referencing the component
- create a button in the Invoice object referencing the Visualforce page
Custom Invoice Component
The Invoice Component allows to use the layout in pages and also in email templates. As example, check out the attached InvoiceCustom.component. Add your own styles and modify the layout as required.
Custom Invoice Page
Create a VisualForce page:
<apex:page standardController="accorto__Invoice__c" showHeader="false" renderAs="pdf"> <c:InvoiceCustom cinvoiceId="{!$CurrentPage.parameters.id}"/> </apex:page>
For testing, you may want to remove the "renderAs".
Custom Invoice Button
In the Invoice object, create a New Button or Link
- Select either Detail Page Link - or - Detail Page Button
- Behavior: Display in new window
- Content Source: Visualforce Page - select your Invoice Page