We need to generate a transfer form print from the inventory adjustment.
Our Solution
In the NetSuite standard, we are not able to generate the standard printout for the Inventory adjustment record. This can be achieved by creating a script for adding a custom button named print transfer order in the inventory adjustment record for printing transfer form. When the user clicks the custom print button, the script will render the custom pdf template and will generate the corresponding printout. We need to create a custom template (XML file) for generating the corresponding transfer form printout.
The layout of the PDF will be designed as below
- Header will be displayed on every page
- The item body table can be considered as the Dynamic. So the table will be end immediately after the items lines
- Signature will be displayed on every page
- If there are multiple pages, the “Continue with next page” label needs to be added at the end of all the pages, except the last page
Assumptions
- We assume that all the custom fields are in the corresponding NetSuite account for sourcing. The souring will be based on the file shared by the client.
- We can use XML files for rendering and files can be stored in the file cabinet.
- The header and footer section (actions 1-26 and 34-39) will be repeated on every page if the print has multiple pages.
- The date format should be in the format “DD/MM/YYYY”.
- The amount format is comma-separated.
- The Thai words will be provided by the client and we can hard code the Thai words in the printouts.
- The font style should be Angsana and the font size should be the same as the file provided by the client.
- If the lot/serial number has multiple lines, then the item, description and QTY will be one line but all serial and lot will show all.
Risks
- We can get data only from the current record and the next join record such as Subsidiary and Entity. If any data needs to be populated from record with more than one join/from item record, then that needs to be populated to a custom field on the corresponding transaction by sourcing or scripting. This is not included in the current scope