Difference between revisions of "Invoice/Credit Configuration - Order Processing Document"

From Catalyst
Jump to: navigation, search
(Updated from revision control)
(Updated from revision control)
 
(36 intermediate revisions by 3 users not shown)
Line 1: Line 1:
  
The Platinum System "Order Processing" allows the layout of your Invoices and Credits to be configured to print the details you require. This is done using a system of "tokens" which represent the items you wish to print, and their positions on the document.
+
The Platinum System {{Menu|Order Processing}} allows the layout of your Invoices and Credits to be configured to print the details you require. This is done using a system of "tokens" which represent the items you wish to print, and their positions on the document.
  
 
This article is for the following documents :-
 
This article is for the following documents :-
Line 14: Line 14:
  
 
== Layout Tokens ==
 
== Layout Tokens ==
Tokens are indicated by the character {{DataValue|~}} followed by a number (the token identifier).
+
Tokens are indicated by the character {{DataValue|<nowiki>~</nowiki>}} followed by a number (the token identifier).
  
 
These identifiers may be up to 3 digits in length in the range 1 to 999. Tokens each have specific uses, which are listed below.
 
These identifiers may be up to 3 digits in length in the range 1 to 999. Tokens each have specific uses, which are listed below.
Line 24: Line 24:
 
For the purposes of configuration, the invoice/credit layouts are divided into 3 main areas: {{DataPrompt|Headings}}, {{DataPrompt|Body}} & {{DataPrompt|Footings}}.
 
For the purposes of configuration, the invoice/credit layouts are divided into 3 main areas: {{DataPrompt|Headings}}, {{DataPrompt|Body}} & {{DataPrompt|Footings}}.
  
To speed up access to the information on the layout file, some information is stored away on a separate file for quick reference. This information will need to be gathered when a particular layout is used for the first time. The short delay this entails can be minimised by placing the Configuration, Body, Totals & Tax blocks together at the top of the layout file, as can be seen in the Standard Layouts. This will apply even if no details are present in the block, as they are checked off during compilation.
+
=== Area Tokens ===
 +
{| cellspacing="5" width="95%" valign="baseline"
 +
!width="15%"|
 +
!|
 +
!|
  
 +
|- valign="baseline"
 +
| '''~100'''
 +
| '''Configuration Section Start'''
 +
|- valign="baseline"
 +
| '''~199'''
 +
| '''Configuration Section End'''
 +
|- valign="baseline"
 +
| '''~200'''
 +
| '''Heading Block (First Page) Start'''
 +
|- valign="baseline"
 +
| '''~299'''
 +
| '''Heading Block (First Page) End'''
 +
|- valign="baseline"
 +
| '''~300'''
 +
| '''Heading Block (Continuation) Start'''
 +
|- valign="baseline"
 +
| '''~399'''
 +
| '''Heading Block (Continuation) End'''
 +
|- valign="baseline"
 +
| '''~400'''
 +
| '''Footing Block (Continuation) Start'''
 +
|- valign="baseline"
 +
| '''~499'''
 +
| '''Footing Block (Continuation) End'''
 +
|- valign="baseline"
 +
| '''~500'''
 +
| '''Footing Block (Last Page) Start'''
 +
|- valign="baseline"
 +
| '''~599'''
 +
| '''Footing Block (Last Page) End'''
 +
|- valign="baseline"
 +
| '''~600'''
 +
| '''Body Block Start'''
 +
|- valign="baseline"
 +
| '''~699'''
 +
| '''Body Block End'''
 +
|- valign="baseline"
 +
| '''~700'''
 +
| '''Totals Configuration Block Start'''
 +
|- valign="baseline"
 +
| '''~799'''
 +
| '''Totals Configuration Block End'''
 +
|- valign="baseline"
 +
| '''~800'''
 +
| '''Tax Configuration Block Start'''
 +
|- valign="baseline"
 +
| '''~899'''
 +
| '''Tax Configuration Block End'''
 +
|}
 
== Tokens ==
 
== Tokens ==
 
=== General Tokens ===
 
=== General Tokens ===
Line 36: Line 89:
  
 
|- valign="baseline"
 
|- valign="baseline"
| '''~1''',n
+
| '''~1'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(30 characters)</div>'''Account Name'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(30 characters)</div>'''Account Name'''
;n = 1 -> 5
 
:The line of the address.
 
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~2''',n
 
| '''~2''',n
Line 50: Line 101:
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~4''',n
 
| '''~4''',n
| '''Telephone Number'''
+
| '''Telephone Number/Email Address'''
 
;n = 0
 
;n = 0
 
:<div style="float:right; margin-left:1em; font-style:italic;">(15 characters)</div>Telephone Number.
 
:<div style="float:right; margin-left:1em; font-style:italic;">(15 characters)</div>Telephone Number.
 
;n = 1
 
;n = 1
 
:<div style="float:right; margin-left:1em; font-style:italic;">(20 characters)</div>Mobile Number.
 
:<div style="float:right; margin-left:1em; font-style:italic;">(20 characters)</div>Mobile Number.
 +
;n = 2
 +
:<div style="float:right; margin-left:1em; font-style:italic;">(60 characters)</div>Email Address.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~5'''
 
| '''~5'''
Line 106: Line 159:
 
| <div style="float:right; margin-left:1em; font-style:italic;">(one line)</div>'''Footing Line'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(one line)</div>'''Footing Line'''
 
;n = 1 -> 3
 
;n = 1 -> 3
:Heading text.
+
:Footing text.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~15'''
 
| '''~15'''
Line 143: Line 196:
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Total: Amount Outstanding after Payment'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Total: Amount Outstanding after Payment'''
 
|- valign="baseline"
 
|- valign="baseline"
| '''~27''',n
+
| '''~27'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(5 characters)</div>'''Percentage Charged at Tax Rate'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(5 characters)</div>'''Percentage Charged at Tax Rate'''
;n = 1 -> 4
 
:The Tax Rate.
 
 
|- valign="baseline"
 
|- valign="baseline"
| '''~28''',n
+
| '''~28'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Description for Tax Rate'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Description for Tax Rate'''
;n = 1 -> 4
 
:The Tax Rate.
 
 
|- valign="baseline"
 
|- valign="baseline"
| '''~29''',n
+
| '''~29'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Amount Taxed at Tax Rate'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Amount Taxed at Tax Rate'''
;n = 1 -> 4
 
:The Tax Rate.
 
 
|- valign="baseline"
 
|- valign="baseline"
| '''~30''',n
+
| '''~30'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Amount of Tax Charged at Tax Rate'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Amount of Tax Charged at Tax Rate'''
;n = 1 -> 4
 
:The Tax Rate.
 
 
|- valign="baseline"
 
|- valign="baseline"
| '''~31''',n
+
| '''~31'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Amount after Tax at Tax Rate'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Amount after Tax at Tax Rate'''
;n = 1 -> 4
 
:The Tax Rate.
 
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~32'''
 
| '''~32'''
Line 219: Line 262:
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~44''',n
 
| '''~44''',n
| <div style="float:right; margin-left:1em; font-style:italic;">(30 characters)</div>'''Delivery Addresss'''
+
| <div style="float:right; margin-left:1em; font-style:italic;">(30 characters)</div>'''Delivery Addresses'''
;n = 1 -> 4
+
Print a line of delivery address. It is important to specify which line using the parameter.
 +
 
 +
{{Tip|text=
 +
Generally delivery addresses are up to five lines but when a buying group is specified an extra line of delivery address may be required in order to accommodate the buying group reference which prints at the end of the delivery address.
 +
}}
 +
 
 +
;n = 1 -> 6
 
:The line of the address.
 
:The line of the address.
 
|- valign="baseline"
 
|- valign="baseline"
Line 239: Line 288:
 
;n = 1 -> 5
 
;n = 1 -> 5
 
:Invoice Text
 
:Invoice Text
 +
|- valign="baseline"
 +
| '''~52''',n
 +
| <div style="float:right; margin-left:1em; font-style:italic;">(60 characters)</div>'''Order General Notes'''
 +
;n = 1 -> 999
 +
:Order General Note line index.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~55'''
 
| '''~55'''
Line 262: Line 316:
 
Print Spaces if {{DataPrompt|Delivery Note}} is not required.
 
Print Spaces if {{DataPrompt|Delivery Note}} is not required.
 
|- valign="baseline"
 
|- valign="baseline"
| '''~61'''
+
| '''~61''',n
 
| <div style="float:right; margin-left:1em; font-style:italic;">(8 characters)</div>'''User/Group Name'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(8 characters)</div>'''User/Group Name'''
 +
;n = 0
 +
:Currently logged in user.
 +
;n = 1
 +
:User who created the order.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~62'''
 
| '''~62'''
Line 275: Line 333:
 
| '''~64'''
 
| '''~64'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Carriage Amount'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Carriage Amount'''
 +
|- valign="baseline"
 +
| '''~65''',n
 +
| <div style="float:right; margin-left:1em; font-style:italic;">(3 characters)</div>'''Order Status'''
 +
;n = 0
 +
:Status Code.
 +
;n = 1
 +
:Status Description.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~71'''
 
| '''~71'''
Line 287: Line 352:
 
| '''~213''',n
 
| '''~213''',n
 
| <div style="float:right; margin-left:1em; font-style:italic;">(1 character)</div>'''Account Analysis Code'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(1 character)</div>'''Account Analysis Code'''
;n = 1 -> 3
+
;n = 1 -> 9
 
:Analysis Code index.
 
:Analysis Code index.
 
|- valign="baseline"
 
|- valign="baseline"
| '''~214''',n
+
| '''~214''',n,m
| <div style="float:right; margin-left:1em; font-style:italic;">(15 characters)</div>'''Account Analysis Description'''
+
| '''Account Analysis Description'''
;n = 1 -> 3
+
;n = 1 -> 9
 
:Analysis Description index.
 
:Analysis Description index.
 +
;m = 0
 +
:<div style="float:right; margin-left:1em; font-style:italic;">(15 characters)</div>First 15 characters of description.
 +
;m = >0
 +
:<div style="float:right; margin-left:1em; font-style:italic;">(Up to 30)</div>The full description.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~215''',n
 
| '''~215''',n
Line 340: Line 409:
 
;n = 1
 
;n = 1
 
:<div style="float:right; margin-left:1em; font-style:italic;">(32 characters)</div>Long Format. e.g. {{DataValue|Friday, 31st January 20??}}.
 
:<div style="float:right; margin-left:1em; font-style:italic;">(32 characters)</div>Long Format. e.g. {{DataValue|Friday, 31st January 20??}}.
 +
|- valign="baseline"
 +
| '''~248'''
 +
| <div style="float:right; margin-left:1em; font-style:italic;">(3 characters)</div>'''Incoterm'''
 +
|- valign="baseline"
 +
| '''~249'''
 +
| <div style="float:right; margin-left:1em; font-style:italic;">(17 characters)</div>'''EORI Number'''
 +
|- valign="baseline"
 +
| '''~255''',"x"
 +
| '''Skip block until next ~255'''
 +
Print spaces if the account does not have the given account attribute set.
 +
;"x"
 +
:The code of the account attribute which must be set in order to print content.
 +
|- valign="baseline"
 +
| '''~256''',n,"x",m
 +
| <div style="float:right; margin-left:1em; font-style:italic;">(30 characters)</div>'''Account Attribute'''
 +
Print an account attribute code or description.
 +
;n
 +
:The index of the account attribute category to print. For example, entering {{DataValue|1}} here would print the first attribute from the given category.
 +
;"x"
 +
:The attribute category from which the acccount attribute to print is located.
 +
;m = 0
 +
:Print the attribute code
 +
;m = 1 -> 30
 +
:The number of characters to print from the attribute description.
 
|}
 
|}
 
=== Configuration Tokens ===
 
=== Configuration Tokens ===
Line 441: Line 534:
 
:Carriage Prints in None of the above, and is Discounted.
 
:Carriage Prints in None of the above, and is Discounted.
 
|- valign="baseline"
 
|- valign="baseline"
| '''~117''',n
+
| '''~117''',n,m
 
| '''Backorder Printing'''
 
| '''Backorder Printing'''
 
Prints a section after the invoice/credit Items consisting of Items on backorder for the current account, using the same line layout as for the items.
 
Prints a section after the invoice/credit Items consisting of Items on backorder for the current account, using the same line layout as for the items.
Line 449: Line 542:
 
;n = 1
 
;n = 1
 
:Includes Tax and Totals information.
 
:Includes Tax and Totals information.
 +
;m
 +
:Column position for "Following Items on Backorder :-" text.
 +
|- valign="baseline"
 +
| '''~124'''
 +
| '''Print a Customer Statement'''
 +
Automatically prints a customer statement to follow the invoice.
 +
 +
No statement will be printed if the customer's account balance is zero following this invoice and any payments made along with it.
 +
 +
{{Note|text=
 +
This depends on having the {{Menu|Sales Ledger}} module issued.
 +
}}
 +
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~198'''
 
| '''~198'''
Line 456: Line 562:
 
=== Body Block ===
 
=== Body Block ===
 
==== General Information ====
 
==== General Information ====
{{DataValue|~6nn,1,2,3,"4",5}} where {{DataValue|~6nn}} represents an item, described below, which you wish to be printed in the invoice/credit body.
+
{{DataValue|~6nn,1,2,3,"4",5,6,"7"}} where {{DataValue|~6nn}} represents an item, described below, which you wish to be printed in the invoice/credit body.
  
All have up to five parameters :-
+
All have up to seven parameters :-
  
 
;Parm 1 - 'n'
 
;Parm 1 - 'n'
Line 465: Line 571:
 
:Unused. (Used by other Systems, but should be set to {{DataValue|0}} here if a third parameter is used).
 
:Unused. (Used by other Systems, but should be set to {{DataValue|0}} here if a third parameter is used).
 
;Parm 3 - 'l'
 
;Parm 3 - 'l'
:Varies by Token. If not used, and parms 4 or above are needed, should be skipped by placing the commas next to each other. i.e. ~6nn,1,2,,"4",5.
+
:Varies by Token. If not used, and parm 4 or above are needed, should be skipped by placing the commas next to each other. i.e. ~6nn,1,2,,"4",5.
 
:Generally, for numeric tokens, which print by default to two decimal places.
 
:Generally, for numeric tokens, which print by default to two decimal places.
 
:*'0' - Quantity : Trailing Zeroes are Stripped off. Currency : Zero figures are not printed.
 
:*'0' - Quantity : Trailing Zeroes are Stripped off. Currency : Zero figures are not printed.
Line 475: Line 581:
 
;Parm 5 - 'k'
 
;Parm 5 - 'k'
 
:Column, when {{DataValue|~105}} is used. See above. Up to 10 columns are allowed, limited by the "col" parameter after {{DataValue|~105}}. If the body token is to refer to the line total, or main text item, then this parameter should be {{DataValue|0}} (the default). If it is to refer to the value for a specific column then it should be given the value 1 - 10.
 
:Column, when {{DataValue|~105}} is used. See above. Up to 10 columns are allowed, limited by the "col" parameter after {{DataValue|~105}}. If the body token is to refer to the line total, or main text item, then this parameter should be {{DataValue|0}} (the default). If it is to refer to the value for a specific column then it should be given the value 1 - 10.
 +
;Parm 6 - 'j'
 +
:Varies by Token. If not used, and parms 7 or above are needed, should be skipped by placing the commas next to each other. i.e. ~6nn,1,2,3,"4",5,,"7".
 +
;Parm 7 - 'w'
 +
:Optional. Varies by token. If used should be contained in quotes.
 
{{Information|text=
 
{{Information|text=
 
Body Tokens may be used in the Headers or Footers, and will in this case take their value from the '''first order''', or '''first item on that order''', which appears on the Invoice or Credit. This feature will generally be of use if you tend to print one Order per Invoice. In other cases the results may be misleading, so the feature should be used with care.
 
Body Tokens may be used in the Headers or Footers, and will in this case take their value from the '''first order''', or '''first item on that order''', which appears on the Invoice or Credit. This feature will generally be of use if you tend to print one Order per Invoice. In other cases the results may be misleading, so the feature should be used with care.
Line 494: Line 604:
 
| '''Nett Amount'''
 
| '''Nett Amount'''
 
|- valign="baseline"
 
|- valign="baseline"
| '''~603''',n,m,l,"x"
+
| '''~603''',n,m,l
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Unit Price'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Unit Price'''
;"x" = "F"
 
:Prints the Unit Price of the first item to be stored on the current line/column.
 
;"x" = "A"
 
:Prints the average Unit Price, calculated as Nett Amount/Quantity.
 
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~604''',n
 
| '''~604''',n
Line 510: Line 616:
 
| <div style="float:right; margin-left:1em; font-style:italic;">(1 character)</div>'''Tax Band'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(1 character)</div>'''Tax Band'''
 
;l = 0
 
;l = 0
:Prints A - D.
+
:Prints A - I.
 
;l = 1
 
;l = 1
:Prints 1 - 4.
+
:Prints 1 - 9.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~607''',n,m,l
 
| '''~607''',n,m,l
Line 586: Line 692:
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~624''',n
 
| '''~624''',n
| <div style="float:right; margin-left:1em; font-style:italic;">(12 characters)</div>'''Location'''
+
| <div style="float:right; margin-left:1em; font-style:italic;">(20 characters)</div>'''Location'''
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~625''',n,m,l,"x"
 
| '''~625''',n,m,l,"x"
Line 615: Line 721:
 
| '''~630''',n,m,l
 
| '''~630''',n,m,l
 
| <div style="float:right; margin-left:1em; font-style:italic;">(15 characters)</div>'''Stock Analysis Description'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(15 characters)</div>'''Stock Analysis Description'''
;l = 1 -> 3
 
:Analysis Description index.
 
|- valign="baseline"
 
| '''~631''',n,m,l
 
| <div style="float:right; margin-left:1em; font-style:italic;">(1 character)</div>'''Order Analysis Code'''
 
;l = 1 -> 3
 
:Analysis Code index.
 
|- valign="baseline"
 
| '''~632''',n,m,l
 
| <div style="float:right; margin-left:1em; font-style:italic;">(1 character)</div>'''Order Analysis Description'''
 
 
;l = 1 -> 3
 
;l = 1 -> 3
 
:Analysis Description index.
 
:Analysis Description index.
Line 703: Line 799:
 
| '''~650''',n
 
| '''~650''',n
 
| <div style="float:right; margin-left:1em; font-style:italic;">(20 characters)</div>'''Batch Location'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(20 characters)</div>'''Batch Location'''
 +
|- valign="baseline"
 +
| '''~655''',n,m,l
 +
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Local Currency Amount'''
 +
|- valign="baseline"
 +
| '''~656''',n,m,l,"x",k,j,"y"
 +
| <div style="float:right; margin-left:1em; font-style:italic;">(30 characters)</div>'''Stock Attribute'''
 +
Print a stock attribute code or description.
 +
;l
 +
:The index of the stock attribute category to print. For example, entering {{DataValue|1}} here would print the first attribute from the given category.
 +
;"x"
 +
:The attribute category from which the stock attribute to print is located.
 +
;j = 0
 +
:Print the attribute code
 +
;j = 1 -> 30
 +
:The number of characters to print from the attribute description.
 +
;"y"
 +
:An optional account attribute code which must be set in order to print anything for this token. It can be left blank if printed output is always required.
 +
|- valign="baseline"
 +
| '''~657''',n,m,l,"x"
 +
| <div style="float:right; margin-left:1em; font-style:italic;">(30 characters)</div>'''Country of Origin'''
 +
Print a country code or a country name.
 +
;l = 0
 +
:Print the country code
 +
;l = 1 -> 30
 +
:The number of characters to print from the country name.
 +
;"x"
 +
:An optional account attribute code which must be set in order to print anything for this token. It can be left blank if printed output is always required.
 +
|- valign="baseline"
 +
| '''~658''',n,m,l,"x"
 +
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Commodity Code'''
 +
Print a commodity code.
 +
;l
 +
:The number of characters to print from the commodity code.
 +
;"x"
 +
:An optional account attribute code which must be set in order to print anything for this token. It can be left blank if printed output is always required.
 
|}
 
|}
 
===== Including Batch Information =====
 
===== Including Batch Information =====
Line 710: Line 841:
  
 
Another thing to bear in mind is that for the second and subsequent lines of Batch Information for an item, only the Batch tokens ({{DataValue|~648}} -> {{DataValue|~650}}) shown above will be printed.
 
Another thing to bear in mind is that for the second and subsequent lines of Batch Information for an item, only the Batch tokens ({{DataValue|~648}} -> {{DataValue|~650}}) shown above will be printed.
 +
 +
===== Batch Information in Item Descriptions =====
 +
When a "Batched" stock item is booked out of stock, and batch information assigned, either manually or automatically if the system can identify the batch without prompting, the assigned "Batch No:" will be inserted into the first blank line of the item's description for this document. This information will then be printed as part of the item's description on printouts produced subsequently such as any advice note or invoice.
 +
 +
This depends on the item having at least one blank line of description, and on the document being printed ''after'' the item is booked out of stock.
  
 
=== Totals Block ===
 
=== Totals Block ===
Line 761: Line 897:
 
| '''~704''',n,m,l
 
| '''~704''',n,m,l
 
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Total Tax Amount'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Total Tax Amount'''
Supressed on Tax Inclusive documents (see above).
+
Superseded on Tax Inclusive documents (see above).
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~705''',n,m,l
 
| '''~705''',n,m,l
Line 777: Line 913:
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~709''',n,m,l,k,j
 
| '''~709''',n,m,l,k,j
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Amount Charged at Tax Rate 1'''
+
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Amount Charged at 1st Tax Rate'''
 
If {{DataValue|99.99}} is included in the description it will be substituted with the percentage Tax applied.
 
If {{DataValue|99.99}} is included in the description it will be substituted with the percentage Tax applied.
  
Supressed on Tax Inclusive documents (see above).
+
Superseded on Tax Inclusive documents (see above).
  
 
;j = 0
 
;j = 0
Line 790: Line 926:
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~710''',n,m,l,k,j
 
| '''~710''',n,m,l,k,j
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Amount Charged at Tax Rate 2'''
+
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Amount Charged at 2nd Tax Rate'''
 
If {{DataValue|99.99}} is included in the description it will be substituted with the percentage Tax applied.
 
If {{DataValue|99.99}} is included in the description it will be substituted with the percentage Tax applied.
  
Supressed on Tax Inclusive documents (see above).
+
Superseded on Tax Inclusive documents (see above).
  
 
;j = 0
 
;j = 0
Line 803: Line 939:
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~711''',n,m,l,k,j
 
| '''~711''',n,m,l,k,j
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Amount Charged at Tax Rate 3'''
+
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Amount Charged at 3rd Tax Rate'''
 
If {{DataValue|99.99}} is included in the description it will be substituted with the percentage Tax applied.
 
If {{DataValue|99.99}} is included in the description it will be substituted with the percentage Tax applied.
  
Supressed on Tax Inclusive documents (see above).
+
Superseded on Tax Inclusive documents (see above).
  
 
;j = 0
 
;j = 0
Line 816: Line 952:
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~712''',n,m,l,k,j
 
| '''~712''',n,m,l,k,j
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Amount Charged at Tax Rate 4'''
+
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Amount Charged at 4th Tax Rate'''
 
If {{DataValue|99.99}} is included in the description it will be substituted with the percentage Tax applied.
 
If {{DataValue|99.99}} is included in the description it will be substituted with the percentage Tax applied.
  
Supressed on Tax Inclusive documents (see above).
+
Superseded on Tax Inclusive documents (see above).
  
 
;j = 0
 
;j = 0
Line 830: Line 966:
 
| '''~713''',n,m,"x",l,k
 
| '''~713''',n,m,"x",l,k
 
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Tendered Amounts Breakdown'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Tendered Amounts Breakdown'''
Prints a line for each cost centre with a payment posted to it.
+
Prints a line for each sales centre with a payment posted to it.
 
;"x"
 
;"x"
:When left blank, and the Centre Description will be printed trimmed to the first 13 Characters.
+
:When left blank, and the centre description will be printed trimmed to the first 13 characters.
;k = 0
+
;k = 1 -> 12
:Do not print when no Tax incurred at this rate.
+
:The payment number.
;k = 1
+
;k = 12
:Print even if no Tax incurred.
+
:Prepaid deposits.
;k = 2
+
;k = 13
:Print blank if no Tax incurred.
+
:Payment from redeemed loyalty points.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~714''',n,m,l,k,j
 
| '''~714''',n,m,l,k,j
Line 857: Line 993:
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~717''',n,m,l
 
| '''~717''',n,m,l
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Total Amount Paid'''
+
| <div style="float:right; margin-left:1em; font-style:italic;">(25 characters)</div>'''Total Amount Tendered'''
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~718''',n,m,l
 
| '''~718''',n,m,l
Line 877: Line 1,013:
 
:Column from Block Left.
 
:Column from Block Left.
 
|- valign="baseline"
 
|- valign="baseline"
| '''~801''',n,m
+
| '''~802''',n,m
 
| '''Details for 2nd Tax Band'''
 
| '''Details for 2nd Tax Band'''
 
;n
 
;n
Line 884: Line 1,020:
 
:Column from Block Left.
 
:Column from Block Left.
 
|- valign="baseline"
 
|- valign="baseline"
| '''~801''',n,m
+
| '''~803''',n,m
 
| '''Details for 3rd Tax Band'''
 
| '''Details for 3rd Tax Band'''
 
;n
 
;n
Line 891: Line 1,027:
 
:Column from Block Left.
 
:Column from Block Left.
 
|- valign="baseline"
 
|- valign="baseline"
| '''~801''',n,m
+
| '''~804''',n,m
 
| '''Details for 4th Tax Band'''
 
| '''Details for 4th Tax Band'''
 
;n
 
;n
Line 901: Line 1,037:
 
| <div style="float:right; margin-left:1em; font-style:italic;">(up to 160 characters)</div>'''Layout String'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(up to 160 characters)</div>'''Layout String'''
 
;"x"
 
;"x"
:Up to 160 characters in length, defines how the text for each of the Four Tax bands will appear. Into this will be inserted variables appropriate to each Tax Band, withtheir positions in the string given by the parameter.
+
:Up to 160 characters in length, defines how the text for each of the Four Tax bands will appear. Into this will be inserted variables appropriate to each Tax Band, with their positions in the string given by each token's first parameter as detailed below.
 
|}
 
|}
 
==== Tax Tokens ====
 
==== Tax Tokens ====
Line 912: Line 1,048:
 
| '''~806''',n,m
 
| '''~806''',n,m
 
| <div style="float:right; margin-left:1em; font-style:italic;">(1 character)</div>'''Tax Band Indicator'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(1 character)</div>'''Tax Band Indicator'''
;n = 1 -> 4
+
;n = 1 -> 160
:Tax Index
+
:Position across from left of layout string ~805 at which to insert.
 
;m = 0
 
;m = 0
:{{DataValue|A}} to {{DataValue|D}}.
+
:Prints A - I.
 
;m = 1
 
;m = 1
:{{DataValue|1}} to {{DataValue|4}}.
+
:Prints 1 - 9.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~807''',n
 
| '''~807''',n
 
| <div style="float:right; margin-left:1em; font-style:italic;">(5 characters)</div>'''Tax Percentage'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(5 characters)</div>'''Tax Percentage'''
;n = 1 -> 4
+
;n = 1 -> 160
:Tax Index
+
:Position across from left of layout string ~805 at which to insert.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~808''',n
 
| '''~808''',n
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Tax Band description'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Tax Band description'''
;n = 1 -> 4
+
;n = 1 -> 160
:Tax Index
+
:Position across from left of layout string ~805 at which to insert.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~809''',n
 
| '''~809''',n
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Amount Rated in this Tax Band'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Amount Rated in this Tax Band'''
;n = 1 -> 4
+
;n = 1 -> 160
:Tax Index
+
:Position across from left of layout string ~805 at which to insert.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~810''',n
 
| '''~810''',n
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Amount of Tax Charged on the Amount Rated'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Amount of Tax Charged on the Amount Rated'''
;n = 1 -> 4
+
;n = 1 -> 160
:Tax Index
+
:Position across from left of layout string ~805 at which to insert.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~811''',n
 
| '''~811''',n
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Total Amount After Tax in this Band'''
 
| <div style="float:right; margin-left:1em; font-style:italic;">(10 characters)</div>'''Total Amount After Tax in this Band'''
;n = 1 -> 4
+
;n = 1 -> 160
:Tax Index
+
:Position across from left of layout string ~805 at which to insert.
 
|}
 
|}
 
=== Print Style Tokens ===
 
=== Print Style Tokens ===
Line 981: Line 1,117:
 
;n = 1 -> 999
 
;n = 1 -> 999
 
:Corresponds to the print code ID in the "Print Code Amendments".
 
:Corresponds to the print code ID in the "Print Code Amendments".
|}
 
=== Area Tokens ===
 
{| cellspacing="5" width="95%" valign="baseline"
 
!width="15%"|
 
!|
 
!|
 
 
|- valign="baseline"
 
| '''~100'''
 
| '''Configuration Section Start'''
 
|- valign="baseline"
 
| '''~199'''
 
| '''Configuration Section End'''
 
|- valign="baseline"
 
| '''~200'''
 
| '''Heading Block (First Page) Start'''
 
|- valign="baseline"
 
| '''~299'''
 
| '''Heading Block (First Page) End'''
 
|- valign="baseline"
 
| '''~300'''
 
| '''Heading Block (Continuation) Start'''
 
|- valign="baseline"
 
| '''~399'''
 
| '''Heading Block (Continuation) End'''
 
|- valign="baseline"
 
| '''~400'''
 
| '''Footing Block (Continuation) Start'''
 
|- valign="baseline"
 
| '''~499'''
 
| '''Footing Block (Continuation) End'''
 
|- valign="baseline"
 
| '''~500'''
 
| '''Footing Block (Last Page) Start'''
 
|- valign="baseline"
 
| '''~599'''
 
| '''Footing Block (Last Page) End'''
 
|- valign="baseline"
 
| '''~600'''
 
| '''Body Block Start'''
 
|- valign="baseline"
 
| '''~699'''
 
| '''Body Block End'''
 
|- valign="baseline"
 
| '''~700'''
 
| '''Totals Configuration Block Start'''
 
|- valign="baseline"
 
| '''~799'''
 
| '''Totals Configuration Block End'''
 
|- valign="baseline"
 
| '''~800'''
 
| '''Tax Configuration Block Start'''
 
|- valign="baseline"
 
| '''~899'''
 
| '''Tax Configuration Block End'''
 
 
|}
 
|}
 
=== Currency Conversions ===
 
=== Currency Conversions ===
 
{{Information|text=
 
{{Information|text=
''Platinum'' "Elite" systems only. "Solo" systems will need to be upgraded to "Elite", contact the [http://www.catalyst-uk.com ''Catalyst''] sales team (0116) 230 1500 or your ''Platinum'' dealer for your upgrade path.
+
''Platinum'' "Elite" systems only. "Solo" systems will need to be upgraded to "Elite", contact your ''Platinum'' dealer or our sales team on (0116) 230 1500 or by using our [https://www.catalyst-uk.com/sales website] sales contact page for your upgrade path.
 
}}
 
}}
  
 
All tokens that return a currency amount may now be modified to convert that amount into a different currency before printing. This is done by using a currency modifier after the token number but before any parameters. This modifier begins with a special symbol and may optionally be followed by a number and/or a three character currency code.
 
All tokens that return a currency amount may now be modified to convert that amount into a different currency before printing. This is done by using a currency modifier after the token number but before any parameters. This modifier begins with a special symbol and may optionally be followed by a number and/or a three character currency code.
  
The special symbols are currently {{DataValue|$}} and {{DataValue|#}} (hash symbol, but may have been misprinted as a pound sign). Both of these will cause a conversion to take place; the difference being {{DataValue|#}} will suppress the printing of a currency symbol. This can be useful when printers don't have relevant symbols for some currencies.
+
To get the relevant currency symbol to print on a document, the symbols '$' and '#' (hash symbol, but may have been misprinted as a pound sign) are used immediately after the token that you wish the currency conversion to take place. Using the '#' will suppress the printing of the currency symbol. This can be useful when printers don't have relevant symbols for some currencies.
 +
 
 +
{{Note|text=
 +
Unless the relevant currency required is set up against the base rate in Currency Maintenance, no conversion will take place. Also, the customer needs to be correctly flagged for the appropriate Country.
 +
}}
  
 
The number part of the modifier may be used to specify the maximum number of characters to print. Some currencies may involve quite large amounts and this number can be used to make sure there is enough room to print them. The three character currency code specifies which currency to convert the amount to. This may be omitted, in which case the currency specified for the account associated with the invoice/credit being printed will be used, if there is one.
 
The number part of the modifier may be used to specify the maximum number of characters to print. Some currencies may involve quite large amounts and this number can be used to make sure there is enough room to print them. The three character currency code specifies which currency to convert the amount to. This may be omitted, in which case the currency specified for the account associated with the invoice/credit being printed will be used, if there is one.
  
 
{{Example|text=
 
{{Example|text=
Some examples using {{DataValue|~29,1}} amount taxed at tax rate 1.
+
Some examples using {{DataValue|~29,1}} amount taxed at first tax rate. Note that {{DataValue|~29}} may not represent an amount in all document formats. This is just an example.
  
 
;~29,1
 
;~29,1
Line 1,062: Line 1,147:
 
;~29$USD,1
 
;~29$USD,1
 
:convert to currency USD (US Dollar)
 
:convert to currency USD (US Dollar)
:{{DataValue|$234.56}}
+
:{{DataValue|$234.02}}
 +
;~29$USD(02),1
 +
:convert to currency USD (US Dollar) and target to whole dollar units if within 2 cents. This feature is useful if you want to display values with the cents/pennies rounded away. For example if displaying in dollars then the number in brackets represents the maximum number of cents over or under a dollar within which the conversion will target to a whole dollar. For 02 within the brackets then $1.98, $1.99, $2.00, $2.01, $2.02 will all display as $2.00.
 +
:{{DataValue|$234.00}}
 
;~29#12USD,1
 
;~29#12USD,1
 
:same, but suppress the symbol and print to a width of 12
 
:same, but suppress the symbol and print to a width of 12
Line 1,080: Line 1,168:
 
| '''x = Default currency modifier (optional)'''
 
| '''x = Default currency modifier (optional)'''
 
|}
 
|}
==== Currency Tokens ====
+
==== Country/Currency Tokens ====
There is a group of tokens that may be used in headers and footers to print details about the currency set up for the account associated with the document.
+
There is a group of tokens that may be used in headers and footers to print details about the country and currency set up for the account associated with the document.
  
 
{| cellspacing="5" width="95%" valign="baseline"
 
{| cellspacing="5" width="95%" valign="baseline"
Line 1,088: Line 1,176:
 
!|
 
!|
  
 +
|- valign="baseline"
 +
| '''~292''',n
 +
| <div style="float:right; margin-left:1em; font-style:italic;">(3 characters)</div>'''Country code/description for the document.'''
 +
If the account in use has a specific country associated with it this will be used, otherwise the system default country will be output.
 +
;n = 0
 +
:Output the country code.
 +
;n = 1
 +
:<div style="float:right; margin-left:1em; font-style:italic;">(30 characters)</div>Output the country description.
 
|- valign="baseline"
 
|- valign="baseline"
 
| '''~293'''
 
| '''~293'''
Line 1,107: Line 1,203:
 
| '''Skip block until next ~298'''
 
| '''Skip block until next ~298'''
 
Should be used in pairs on a line. Everything between them is blanked out if there is no currency set for this account
 
Should be used in pairs on a line. Everything between them is blanked out if there is no currency set for this account
|}[[Category:Order Processing Documents]]
+
|}
 +
{{KB_Tags|Layout, Token, Format, Document, Setup, Config, Configuration, Invoice, Credit, Currency}}[[Category:Documents]][[Category:Order Processing Documents]]

Latest revision as of 14:00, 8 July 2024

The Platinum System " Order Processing" allows the layout of your Invoices and Credits to be configured to print the details you require. This is done using a system of "tokens" which represent the items you wish to print, and their positions on the document.

This article is for the following documents :-

  • "Invoice"
  • "Credit Note"

Layout Data Formats

Formats are stored in a special file, which must be accessed through the format amendments programs. It cannot be edited from outside the Platinum System.

A library of "Standard Formats" is available. These are automatically copied to the "User Format" the first time a document is printed, and may be copied manually if, for instance, you wish to start using pre-printed stationary where before you were using plain paper.

If required, you may assign special formats to certain Accounts, and/or assign these formats to different print records from the default. A format name may be up to 11 characters in length, and contain any combination of typeable characters.

Layout Tokens

Tokens are indicated by the character '~' followed by a number (the token identifier).

These identifiers may be up to 3 digits in length in the range 1 to 999. Tokens each have specific uses, which are listed below.

Parameters

Some tokens may also be given parameters. The number of parameters vary for each token. To specify a token with parameters the token must be followed by a comma then parameter. Each parameter is similarly divided from the next by a comma (no terminating comma is required).

Document Areas

For the purposes of configuration, the invoice/credit layouts are divided into 3 main areas: "Headings", "Body" & "Footings".

Area Tokens

~100 Configuration Section Start
~199 Configuration Section End
~200 Heading Block (First Page) Start
~299 Heading Block (First Page) End
~300 Heading Block (Continuation) Start
~399 Heading Block (Continuation) End
~400 Footing Block (Continuation) Start
~499 Footing Block (Continuation) End
~500 Footing Block (Last Page) Start
~599 Footing Block (Last Page) End
~600 Body Block Start
~699 Body Block End
~700 Totals Configuration Block Start
~799 Totals Configuration Block End
~800 Tax Configuration Block Start
~899 Tax Configuration Block End

Tokens

General Tokens

These can appear in either Headers or Footers.

~1
(30 characters)
Account Name
~2,n
(30 characters)
Account Address Line
n = 1 -> 5
The line of the address.
~3
(6 characters)
Account Code
~4,n Telephone Number/Email Address
n = 0
(15 characters)
Telephone Number.
n = 1
(20 characters)
Mobile Number.
n = 2
(60 characters)
Email Address.
~5
(15 characters)
Fax Number
~6,n,m Account Notes Line
n = 1 -> 5
The line of the notes.
m = 0
(40 characters)
Print Notes information.
m = 1
(10 characters)
Print Notes prompt.
~7
(3 characters)
Page Number
~8
(3 characters)
Total Pages on Invoice/Credit
~9,n
(8 characters)
Document Number
n = 0
Print in all cases.
n = 1
Blank if not in Heading.
~10,n Document Date
n = 0
(10 characters)
Short format. e.g. 'DD/MM/CCYY'.
n = 1
(32 characters)
Long Format. e.g. 'Friday, 31st January 20??'.
~11,n
(40 characters)
Company Name
n = 1 -> 2
The line of the name.
~12,n
(50 characters)
Company Address
n = 1 -> 5
The line of the address.
~13,n
(one line)
Heading Line
n = 1 -> 2
Heading text.
~14,n
(one line)
Footing Line
n = 1 -> 3
Footing text.
~15
(11 characters)
Heading Document Type
~17 Top Left hand corner of Totals Block

Use if totals are to be printed in self configuring block. See below.

~18 Top Left hand corner of Tax Details Block

Use if tax is to be printed in self configuring block. See below.

~19
(10 characters)
Total: Amount Before Tax or Blanket Discount
~20
(10 characters)
Total: Blanket Discount Amount
~21
(10 characters)
Total: Pre Tax After Applied Blanket Discount
~22
(10 characters)
Total: Tax Amount
~23
(10 characters)
Total: Amount after Tax and Blanket Discounts
~24
(6 characters)
Blanket Discount Percentage
~25
(10 characters)
Total: Amount Paid
~26
(10 characters)
Total: Amount Outstanding after Payment
~27
(5 characters)
Percentage Charged at Tax Rate
~28
(10 characters)
Description for Tax Rate
~29
(10 characters)
Amount Taxed at Tax Rate
~30
(10 characters)
Amount of Tax Charged at Tax Rate
~31
(10 characters)
Amount after Tax at Tax Rate
~32
(3 characters)
Total Number of Pages
~33
(6 characters)
Account Group
~35,n,"x" Settlement Discount Layout
n
The column number about which the text will be centered.
"x"
A line of descriptive text which may contain the following tokens (without padding spaces):
~36
(6 characters)
Settlement Discount Percentage
~37
(10 characters)
Settlement Discount Amount
~38
(3 characters)
Settlement Discount Period in Days
~39,n,"x" Payments Tendered Layout
n
The column number about which the text will be centered.
"x"
A line of descriptive text which may contain the following tokens (without padding spaces):
~40
(10 characters)
Amount Paid
~41
(6 characters)
Payment Code
~42
(30 characters)
Payment Description
~44,n
(30 characters)
Delivery Addresses

Print a line of delivery address. It is important to specify which line using the parameter.

Generally delivery addresses are up to five lines but when a buying group is specified an extra line of delivery address may be required in order to accommodate the buying group reference which prints at the end of the delivery address.
n = 1 -> 6
The line of the address.
~45,n
(5 characters)
Current Time
n = 0
(5 characters)
24 Hour format. e.g. 'HH:MM'.
n = 1
(7 characters)
am/pm format. e.g. 'HH:MMpm'.
~46,n
(15 characters)
Additional Invoice Prompt
n = 1 -> 5
Invoice Prompt
~47,n
(30 characters)
Additional Invoice Text
n = 1 -> 5
Invoice Text
~52,n
(60 characters)
Order General Notes
n = 1 -> 999
Order General Note line index.
~55
(6 characters)
Prints the (Country Determined) word for Tax
~56
(3 characters)
Do not print this line if blank
As this token is used to control 'style' and doesn't actually output anything other than 3 spaces to cover the size of token (i.e. '~##') it should be placed at the end of the format line, to avoid interfering with the flow of the text.
~57 Skip block until next ~57

Print Spaces if all Items have a date equal to the User Date (e.g. headings.).

~58 Skip block until next ~58

Print Spaces if no Items have an individual discount applied (e.g. headings.).

~60 Skip block until next ~60

Print Spaces if "Delivery Note" is not required.

~61,n
(8 characters)
User/Group Name
n = 0
Currently logged in user.
n = 1
User who created the order.
~62
(10 characters)
Total Weight

Excludes Backorder Items.

~63
(10 characters)
Total Volume

Excludes Backorder Items.

~64
(10 characters)
Carriage Amount
~65,n
(3 characters)
Order Status
n = 0
Status Code.
n = 1
Status Description.
~71
(10 characters)
Total Amount Paid (including change)
~72
(10 characters)
Change Given
~211
(10 characters)
Account Reference
~213,n
(1 character)
Account Analysis Code
n = 1 -> 9
Analysis Code index.
~214,n,m Account Analysis Description
n = 1 -> 9
Analysis Description index.
m = 0
(15 characters)
First 15 characters of description.
m = >0
(Up to 30)
The full description.
~215,n
(60 characters)
Account Extra Notes
n = 1 -> 999
Account Extra Note line index.
~216 Skip block until next ~216

Print Spaces if a Credit Card Transaction is not involved.

~217
(30 characters)
Credit Card Holder Name
~218
(20 characters)
Credit Card Number
~219
(5 characters)
Credit Card Expiry Date, as MM/YY
~220
(10 characters)
Credit Card Authorisation Code
~221
(2 characters)
Credit Card Issue Number
~222
(5 characters)
Credit Card Valid From Date, as MM/YY
~223
(15 characters)
System Merchant Number
~224
(15 characters)
Transaction Comment
~234
(30 characters)
Account V.A.T. Registration Number
~239
(3 characters)
Payment Period
~240,n Payment Due Date
n = 0
(10 characters)
Short format. e.g. 'DD/MM/CCYY'.
n = 1
(32 characters)
Long Format. e.g. 'Friday, 31st January 20??'.
~248
(3 characters)
Incoterm
~249
(17 characters)
EORI Number
~255,"x" Skip block until next ~255

Print spaces if the account does not have the given account attribute set.

"x"
The code of the account attribute which must be set in order to print content.
~256,n,"x",m
(30 characters)
Account Attribute

Print an account attribute code or description.

n
The index of the account attribute category to print. For example, entering '1' here would print the first attribute from the given category.
"x"
The attribute category from which the acccount attribute to print is located.
m = 0
Print the attribute code
m = 1 -> 30
The number of characters to print from the attribute description.

Configuration Tokens

These affect the overall layout of the invoice/credit , and should be grouped together at the head of the layout file.

Document Blocks

The block information can either be supplied by you, in which case you should leave the parameters blank to begin with, and fill the values in when you are happy with the rest of the file; or the compiler can track the values down itself, which will marginally slow down the compilation process.

~101,n,m 1st Page Heading Block
n
Start Line (i.e. Line for '~200').
m
End Line (i.e. Line for '~299').
~102,n,m Continuation Page Heading Block
n
Start Line (i.e. Line for '~300').
m
End Line (i.e. Line for '~399').
~103,n,m Continued Page Footing Block
n
Start Line (i.e. Line for '~400').
m
End Line (i.e. Line for '~499').
~104,n,m Final Page Footing Block
n
Start Line (i.e. Line for '~500').
m
End Line (i.e. Line for '~599').

Document Configuration

~105,n,m,l Enables grouping of multiple Stock Codes

Enables grouping of multiple Stock Codes into single lines on the invoice/credit . The parameter 'n' is the number of characters at the start of the code which must be identical for the codes to be grouped. parameter 'm' is the number of characters following these parameter 'n' characters which must be identical in order for the items to occupy one "column". parameter 'l' is the number of "columns" allowed per line..

~109,n Normal and Slip Body Style
n = 0
Standard.
n = 1
Condensed.
~111,n Line Skip
n = 0
No Line Skip.
n = 1
Line Skip between Items.
~112,n Heading Block
n => 1
The line to start printing.
~113,n,m Body Block
n
The line to start printing.
m
Depth (Number of lines to print).
~114,n Footing Block
n
The line to start printing.
~115,n Form Length
n
Number of Lines per Page.
~116,n Carriage Amount
n = 0
Carriage Prints in Totals Block after Discount has applied.
n = 1
Carriage Prints in Totals Block before Discount is applied.
n = 2
Carriage Prints on the Final Line of the Document Body and is Discounted.
n = 3
Carriage Prints in None of the above, and is not Discounted.
n = 4
Carriage Prints in None of the above, and is Discounted.
~117,n,m Backorder Printing

Prints a section after the invoice/credit Items consisting of Items on backorder for the current account, using the same line layout as for the items.

n = 0
Suppresses Tax and Totals information.
n = 1
Includes Tax and Totals information.
m
Column position for "Following Items on Backorder :-" text.
~124 Print a Customer Statement

Automatically prints a customer statement to follow the invoice.

No statement will be printed if the customer's account balance is zero following this invoice and any payments made along with it.

This depends on having the " Sales Ledger" module issued.
~198 Currency conversion configuration
  • See Currency Conversions at the end of this article for more details.

Body Block

General Information

'~6nn,1,2,3,"4",5,6,"7"' where '~6nn' represents an item, described below, which you wish to be printed in the invoice/credit body.

All have up to seven parameters :-

Parm 1 - 'n'
Column Position across from the left of the page.
Parm 2 - 'm'
Unused. (Used by other Systems, but should be set to '0' here if a third parameter is used).
Parm 3 - 'l'
Varies by Token. If not used, and parm 4 or above are needed, should be skipped by placing the commas next to each other. i.e. ~6nn,1,2,,"4",5.
Generally, for numeric tokens, which print by default to two decimal places.
  • '0' - Quantity : Trailing Zeroes are Stripped off. Currency : Zero figures are not printed.
  • '1' - Quantity : Trailing Zeroes are NOT Stripped. Currency : Zero figures are printed.
  • '2' - As '0', but allow 3 decimal places.
  • '3' - As '1', but allow 3 decimal places.
Parm 4 - 'x'
Optional. Varies by token. If used should be contained in quotes. If not used and parm 5 or above required, should be skipped in the same way as parm 3. i.e. ~6nn,1,2,3,,5
Parm 5 - 'k'
Column, when '~105' is used. See above. Up to 10 columns are allowed, limited by the "col" parameter after '~105'. If the body token is to refer to the line total, or main text item, then this parameter should be '0' (the default). If it is to refer to the value for a specific column then it should be given the value 1 - 10.
Parm 6 - 'j'
Varies by Token. If not used, and parms 7 or above are needed, should be skipped by placing the commas next to each other. i.e. ~6nn,1,2,3,"4",5,,"7".
Parm 7 - 'w'
Optional. Varies by token. If used should be contained in quotes.
Body Tokens may be used in the Headers or Footers, and will in this case take their value from the first order, or first item on that order, which appears on the Invoice or Credit. This feature will generally be of use if you tend to print one Order per Invoice. In other cases the results may be misleading, so the feature should be used with care.
  • The exceptions are the "Stock Description" and "General Notes Tokens". Parameters 'n' & 'm' are not used at all, so if a Body Token were used in the Header its first Parameter would act as Parameter 'l' would if it were used in the Body.

Body Tokens

~601,n
(10 characters)
Item Quantity
~602,n,m,l Nett Amount
~603,n,m,l
(10 characters)
Unit Price
~604,n
(10 characters)
Tax Amount
~605,n
(10 characters)
Amount after Tax
~606,n,m,l
(1 character)
Tax Band
l = 0
Prints A - I.
l = 1
Prints 1 - 9.
~607,n,m,l Item Date
l = 0
(10 characters)
Short format. e.g. 'DD/MM/CCYY'.
l = 1
(32 characters)
Long Format. e.g. 'Friday, 31st January 20??'.
~608
(15 characters)
Stock Code
~609,n,m,l
(30 characters)
Stock Description
l = 0
Prints all required lines.
l = 1 -> 3
The line of the description.
~610,n,m,l Your Order Number
l = 0
(15 characters)
Prints all 15 Characters.
l = 1
Prints just the latter 8 Characters.
~611,n
(10 characters)
Units
~612,n
(6 characters)
Percentage Discount
~613,n
(10 characters)
Total Nett Order Value
~614,n
(3 characters)
Stock Group
~615,n
(10 characters)
Weight
~616,n
(10 characters)
Volume
~617,n,m,l
(1 character)
Stock Analysis Code
l = 1 -> 3
Analysis code position.
~618,n
(10 characters)
Price List Over-ride
~619,n,m,l
(15 characters)
Short Description
l = 0
Always print the description.
l = 1
If this is blank, Print the "Stock Code", and if that is blank (freetype stock) print the first line of the stock description.
~620,n
(6 characters)
Depot Code
~621,n
(10 characters)
Quantity in Stock
~622,n
(30 characters)
Order Delivery Name
~623,n,m,l
(30 characters)
Order Delivery Address
l = 1 -> 5
Address line.
~624,n
(20 characters)
Location
~625,n,m,l,"x"
(10 characters)
Sales Price
"x" = blank
Sales Price Code. If left blank will give Standard Sales Price.
~626,n,m,l
(5 characters)
Percentage Tax Charged
l = 0
Prints in all cases.
l = 1
Does not print if set to not print on Slip Printouts.
~627,n,m,l
(8 characters)
Delivery Note Number
l = 0
Always print.
l = 1
Do not print when System Parms dictate Delivery Note number is not required.
~628,n
(15 characters)
Customer Order Number
~629,n
(30 characters)
Item Reference
~630,n,m,l
(15 characters)
Stock Analysis Description
l = 1 -> 3
Analysis Description index.
~633,n Delivery by Date
n = 0
(10 characters)
Short format. e.g. 'DD/MM/CCYY'.
n = 1
(32 characters)
Long Format. e.g. 'Friday, 31st January 20??'.
~634,n Delivery Date
n = 0
(10 characters)
Short format. e.g. 'DD/MM/CCYY'.
n = 1
(32 characters)
Long Format. e.g. 'Friday, 31st January 20??'.
~635,n
(3 characters)
Item Price Group
~636,n
(30 characters)
Item Price Group Description
~637,n
(10 characters)
Picked By
~638,n
(10 characters)
Delivery Method
~639,n,m,l
(60 characters)
Description/Detailed Notes

Prints usual Stock Description for up to three lines, then all Detailed Notes.

l = 0
Stock Code Notes.
l = 1
Order Item Notes.
~640,n
(8 characters)
User/Group Name

Person who created the order.

~641,n,m,l
(30 characters)
Order Reference
l = 0
Use Item Reference if Order Reference is not set.
l = 1
Prints spaces if no Order Reference is set.
~642,n
(30 characters)
Stock Group Description
~643,n,m,l
(10 characters)
Stock Barcode Number
l = 0
Stock Code Notes only.
l = 1 -> 10
Number of digits to print.
~644,n
(10 characters)
Account Fixed Stock Price
~645,n
(30 characters)
Account Fixed Stock Price Notes
~646,n
(10 characters)
Consignment Number
~647,n
(4 characters)
Number of Boxes in the Consignment
~648,n
(20 characters)
Batch Code
~649,n
(10 characters)
Batch Quantity
~650,n
(20 characters)
Batch Location
~655,n,m,l
(10 characters)
Local Currency Amount
~656,n,m,l,"x",k,j,"y"
(30 characters)
Stock Attribute

Print a stock attribute code or description.

l
The index of the stock attribute category to print. For example, entering '1' here would print the first attribute from the given category.
"x"
The attribute category from which the stock attribute to print is located.
j = 0
Print the attribute code
j = 1 -> 30
The number of characters to print from the attribute description.
"y"
An optional account attribute code which must be set in order to print anything for this token. It can be left blank if printed output is always required.
~657,n,m,l,"x"
(30 characters)
Country of Origin

Print a country code or a country name.

l = 0
Print the country code
l = 1 -> 30
The number of characters to print from the country name.
"x"
An optional account attribute code which must be set in order to print anything for this token. It can be left blank if printed output is always required.
~658,n,m,l,"x"
(10 characters)
Commodity Code

Print a commodity code.

l
The number of characters to print from the commodity code.
"x"
An optional account attribute code which must be set in order to print anything for this token. It can be left blank if printed output is always required.
Including Batch Information

Meaningful "Batch Information" may be retrieved only for Stock Lines marked as "Batched", which prompt for batch information whenever they are booked into or out of stock. The information extracted depends on the Order Item's status. If the item has been booked into stock, for example on a Goods Received Note, then you will see information relating to the batch transactions involved in booking the item in question in. This would enable you to go straight to the locations where the items are to be placed.

If the item has not yet impacted Stock History, on a Picking List for instance, you will get information on the batches you currently have in stock, enabling you to see which batches are suitable to be picked from.

Another thing to bear in mind is that for the second and subsequent lines of Batch Information for an item, only the Batch tokens ('~648' -> '~650') shown above will be printed.

Batch Information in Item Descriptions

When a "Batched" stock item is booked out of stock, and batch information assigned, either manually or automatically if the system can identify the batch without prompting, the assigned "Batch No:" will be inserted into the first blank line of the item's description for this document. This information will then be printed as part of the item's description on printouts produced subsequently such as any advice note or invoice.

This depends on the item having at least one blank line of description, and on the document being printed after the item is booked out of stock.

Totals Block

General Information

'~7nn,1,2,"x",4,5' where '~7nn' = token number.

All have up to five parameters :-

Parm 1 - 'o'
Line from Top of Block to print on.
Parm 2 - 'n'
Column from Left of Block to print.
Parm 3 - 'x'
Up to 15 Character Description.
Parm 4 - 'm'
  • '0' - Description precedes Figures (default).
  • '1' - Description follows on from totals.
Parm 5 - 'l'
'0, 1 or 2' - Printing conditions.
In general, if items are configured to print one line after another, and "blanket discount" does not apply, then if Parm 5 for blanket discount amount is set to '0' then Blanket discount details will not be printed at all and the next line will shuffle up. If Parm 5 is set to '1' and no blanket discount applies then zeroes will be printed, and if it is set to 2 then a blank line will be printed.

Totals Tokens

Some tokens below are suppressed on Tax Inclusive documents if '~119' is included in the Configuration section.

~701,n,m,l
(25 characters)
Total Amount Before Tax or Blanket Discounts
~702,n,m,l,k,j
(25 characters)
Blanket Discount Amount

If the 'S99.99' is included in parameter 'l' it will be substituted with the percentage discount applied.

j = 0
Do not print when no Discount applies.
j = 1
Print even if no Discount applies.
j = 2
Print blank if no Discount applies.
~703,n,m,l,k,j
(25 characters)
Pre Tax Amount after Blanket Discount
j = 0
Do not print when no Discount applies.
j = 1
Print even if no Discount applies.
j = 2
Print blank if no Discount applies.
~704,n,m,l
(25 characters)
Total Tax Amount

Superseded on Tax Inclusive documents (see above).

~705,n,m,l
(25 characters)
Total Amount after Tax and Blanket Discount
~706,n,m,l
(25 characters)
Total Amount Paid
~707,n,m,l
(25 characters)
Total Amount Outstanding after Payment
~708,n,m
(25 characters)
"Equals" Lines

A line of '=' signs where the figures would go in the other cases.

~709,n,m,l,k,j
(25 characters)
Amount Charged at 1st Tax Rate

If '99.99' is included in the description it will be substituted with the percentage Tax applied.

Superseded on Tax Inclusive documents (see above).

j = 0
Do not print when no Tax incurred at this rate.
j = 1
Print even if no Tax incurred.
j = 2
Print blank if no Tax incurred.
~710,n,m,l,k,j
(25 characters)
Amount Charged at 2nd Tax Rate

If '99.99' is included in the description it will be substituted with the percentage Tax applied.

Superseded on Tax Inclusive documents (see above).

j = 0
Do not print when no Tax incurred at this rate.
j = 1
Print even if no Tax incurred.
j = 2
Print blank if no Tax incurred.
~711,n,m,l,k,j
(25 characters)
Amount Charged at 3rd Tax Rate

If '99.99' is included in the description it will be substituted with the percentage Tax applied.

Superseded on Tax Inclusive documents (see above).

j = 0
Do not print when no Tax incurred at this rate.
j = 1
Print even if no Tax incurred.
j = 2
Print Blank if no Tax incurred.
~712,n,m,l,k,j
(25 characters)
Amount Charged at 4th Tax Rate

If '99.99' is included in the description it will be substituted with the percentage Tax applied.

Superseded on Tax Inclusive documents (see above).

j = 0
Do not print when no Tax incurred at this rate.
j = 1
Print even if no Tax incurred.
j = 2
Print blank if no Tax incurred.
~713,n,m,"x",l,k
(25 characters)
Tendered Amounts Breakdown

Prints a line for each sales centre with a payment posted to it.

"x"
When left blank, and the centre description will be printed trimmed to the first 13 characters.
k = 1 -> 12
The payment number.
k = 12
Prepaid deposits.
k = 13
Payment from redeemed loyalty points.
~714,n,m,l,k,j
(25 characters)
Carriage Amount
j = 0
Do not print when no Carriage applies.
j = 1
Print even if no Carriage applies.
j = 2
Print blank if no Carriage applies.
~716,n,m,l
(25 characters)
Blanket Discount Amount

An alternative for '~702' for Negative Discounts. (i.e. Surcharges.).

If the Discount is '0%' or greater '~702' will be used; if the Discount is less than '0%' then '~716' is used. If '~716' is not supplied, '~702' will be used.

~717,n,m,l
(25 characters)
Total Amount Tendered
~718,n,m,l
(25 characters)
Change Given

Tax Block

General Information

~801,n,m Details for 1st Tax Band
n
Line from Block Top.
m
Column from Block Left.
~802,n,m Details for 2nd Tax Band
n
Line from Block Top.
m
Column from Block Left.
~803,n,m Details for 3rd Tax Band
n
Line from Block Top.
m
Column from Block Left.
~804,n,m Details for 4th Tax Band
n
Line from Block Top.
m
Column from Block Left.
~805,"x"
(up to 160 characters)
Layout String
"x"
Up to 160 characters in length, defines how the text for each of the Four Tax bands will appear. Into this will be inserted variables appropriate to each Tax Band, with their positions in the string given by each token's first parameter as detailed below.

Tax Tokens

~806,n,m
(1 character)
Tax Band Indicator
n = 1 -> 160
Position across from left of layout string ~805 at which to insert.
m = 0
Prints A - I.
m = 1
Prints 1 - 9.
~807,n
(5 characters)
Tax Percentage
n = 1 -> 160
Position across from left of layout string ~805 at which to insert.
~808,n
(10 characters)
Tax Band description
n = 1 -> 160
Position across from left of layout string ~805 at which to insert.
~809,n
(10 characters)
Amount Rated in this Tax Band
n = 1 -> 160
Position across from left of layout string ~805 at which to insert.
~810,n
(10 characters)
Amount of Tax Charged on the Amount Rated
n = 1 -> 160
Position across from left of layout string ~805 at which to insert.
~811,n
(10 characters)
Total Amount After Tax in this Band
n = 1 -> 160
Position across from left of layout string ~805 at which to insert.

Print Style Tokens

The following print style codes must have 3 spaces after them as these codes always 6 characters wide.

~79
(6 characters)
Expand
~80
(6 characters)
Unexpand
~81
(6 characters)
Compact
~82
(6 characters)
Uncompact
~83
(6 characters)
Double Strike On
~84
(6 characters)
Double Strike Off
~86
(6 characters)
Paper Forward
~87
(6 characters)
Paper Backward
~88,n
(up to 32 characters)
Insert print style

This print style code doesn't need any spaces after it as it will the width of the print code to insert.

n = 1 -> 999
Corresponds to the print code ID in the "Print Code Amendments".

Currency Conversions

Platinum "Elite" systems only. "Solo" systems will need to be upgraded to "Elite", contact your Platinum dealer or our sales team on (0116) 230 1500 or by using our website sales contact page for your upgrade path.

All tokens that return a currency amount may now be modified to convert that amount into a different currency before printing. This is done by using a currency modifier after the token number but before any parameters. This modifier begins with a special symbol and may optionally be followed by a number and/or a three character currency code.

To get the relevant currency symbol to print on a document, the symbols '$' and '#' (hash symbol, but may have been misprinted as a pound sign) are used immediately after the token that you wish the currency conversion to take place. Using the '#' will suppress the printing of the currency symbol. This can be useful when printers don't have relevant symbols for some currencies.

Unless the relevant currency required is set up against the base rate in Currency Maintenance, no conversion will take place. Also, the customer needs to be correctly flagged for the appropriate Country.

The number part of the modifier may be used to specify the maximum number of characters to print. Some currencies may involve quite large amounts and this number can be used to make sure there is enough room to print them. The three character currency code specifies which currency to convert the amount to. This may be omitted, in which case the currency specified for the account associated with the invoice/credit being printed will be used, if there is one.

Some examples using '~29,1' amount taxed at first tax rate. Note that '~29' may not represent an amount in all document formats. This is just an example.
~29,1
no conversion
'*100.00' - (where * is your usual currency symbol).
~29$,1
convert to the account currency (if there is one)
'1005.18F' - (e.g. French Francs.)
~29$12,1
convert to account currency and print to a width of 12
'1005.18F'
~29$USD,1
convert to currency USD (US Dollar)
'$234.02'
~29$USD(02),1
convert to currency USD (US Dollar) and target to whole dollar units if within 2 cents. This feature is useful if you want to display values with the cents/pennies rounded away. For example if displaying in dollars then the number in brackets represents the maximum number of cents over or under a dollar within which the conversion will target to a whole dollar. For 02 within the brackets then $1.98, $1.99, $2.00, $2.01, $2.02 will all display as $2.00.
'$234.00'
~29#12USD,1
same, but suppress the symbol and print to a width of 12
'234.56'

Currency Configuration

There is an optional Currency Conversion configuration token which when used should be placed in the Configuration block. This token may have a currency modifier applied to it which will then be used by default throughout the document, although it can be overridden by modifiers applied to individual tokens.

~198x x = Default currency modifier (optional)

Country/Currency Tokens

There is a group of tokens that may be used in headers and footers to print details about the country and currency set up for the account associated with the document.

~292,n
(3 characters)
Country code/description for the document.

If the account in use has a specific country associated with it this will be used, otherwise the system default country will be output.

n = 0
Output the country code.
n = 1
(30 characters)
Output the country description.
~293
(12 characters)
Exchange rate from base currency to account currency
~294
(15 characters)
Sub-units of the currency set for this account
~295
(15 characters)
Units of the currency set for this account
~296
(30 characters)
Name of the currency set for this account
~297
(3 characters)
Code of the currency set for this account
~298 Skip block until next ~298

Should be used in pairs on a line. Everything between them is blanked out if there is no currency set for this account


Feedback
Thank you for using our Knowledge Base, we value your feedback. Did you find this article useful? 'Yes' or 'No'
Keywords AND Misspellings
Layout, Token, Format, Document, Setup, Config, Configuration, Invoice, Credit, Currency