I don't like the default document templates that print from iDempiere, and also don't like the built-in "template editor" which to me makes it very complicated and gives me limited possibilities to edit the template I want.
So the third and best option is to create an external template using Jasper Studio, put the file on the system and then configure it to be able to print as you like.
The process was very hard because it was not well documented. Once I got the correct process of how to do it it was pretty simple.
- Login as System User
- Go to Report & Process
- Create a New Report & Process
Complete the fields with similar information:
Note that the Jasper Report field is critical and is the place where the Jasper Studio file will be added. In my case I added the report template to the path: file:/opt/idempiere-server/reports/Cotizacion.jrxml. Its critical to follow the correct nomenclature here because one extra character will make the process fail as the system will not find the file.
4. Now that the File is created we need to Add id to a Print Template. So log out as System Admin an log in as the Client. Then go to the Client Admin.
Now you can go to Print Template and locate the template you want to modify. (I created a new based on the standard). Then once you're on that print template you're should be able to select the Report & Process you created before in the "Jasper Process" field.
Additional Info (not required to update the Print Template)
Troubleshoot why the Sales Order Template is not Printing..
- Go to Document Type
- Filter By ---> Document Base Type == Sales Order
- Select "Print Format" (Select the format you want to use)
Templates have to be uploaded to the configured folder on the Reports & Process (in my case ... /opt/idempiere-server/reports); they have to be uploaded in .jasper format. To have this accomplished, you need to work on .jrxml on Jasper iReport (or the newer Jasper Studio), then compile the report and upload the compiled .jasper file.