Translation during order printout

When printing documents that are to be translated, there are some specific settings needed.

Translation of the document name

Document names are defined by the @DocName() macro in the Form element table. The different names of the document should always be set up in the Text table with Text type 3 for the language used, to avoid that parts of the printout aren't translated as expected.

Texts defined in the Text table

If the document names are set up in the text table, these will be used for translation during printing.

The translation uses the language defined in the Order table. If no language has been defined on the order, then the language from the Company information table is used for translation during printing. This applies regardless of how the printing occurs: manual, asynchronous, or printing via task automation.

Texts missing in the Text table

If the document name isn't present in the Text table for the language used, the translation will occur in another way:

  • Hardcoded names are used
  • For manual printing of the order: If the program language isn't set for the signed in user in the User table, the user's sign-in language is used.
  • For asynchronous printing of the order: If the program language isn't set for the signed in user in the User table, the default English language is used.
  • For scheduled printing of the order: If the program language isn't set for the signed in user in the User table, the default English language is used.
Note:
If invoicing is done from the Order document table, the language for printing is set in the actual invoicing step in the Order table, whether this occurs manually, asynchronously, or printing via task automation. It doesn't matter how the processing is carried out in the Order document table.

Translation of the texts

The texts in the printout are defined by the @FreeText() macro in the Form element table. Texts should always be set up in the Text table with Text type1 for all languages used. If the language in use isn't set up, nothing will appear in the printout.

The translation uses the language defined in the Order table. If no language is defined on the order, then the language from the Company information table is used for translation during printing. This applies regardless of how the printing occurs: manual, asynchronous, or printing via task automation.

Translation of the row headers

Row headers can be defined in the layout selected in the Print layout no. field in the Form table, or directly in the Form element table linked to the form.

Row headers in the layout selected in the Print layout no.

If row headers are created in the layout selected as the Print layout no., the translation uses the language defined in the Order table. If no language is defined on the order, then the language from the Company information table is used for translation during printing. This applies regardless of how the printing occurs: manual, asynchronous, or printing via task automation.

Row headers in the Form element table

If row headers are created in the Form element table, the translation occurs the same way as for text macros.

Note:
If invoices are sent with local language only, the program language number should be set to the local language for all users, including the system user. This is to avoid problems with the row headers during asynchronous printing and printing via task automation.

If invoices are sent with different languages, then you should consider defining row headers directly in the Form element table.