> For the complete documentation index, see [llms.txt](https://docs.keyfax.biz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.keyfax.biz/product-suite/keynamics/advanced/mode-translation-rules.md).

# Mode Translation Rules

In order to segregate Keyfax Scripts between business, functional or operational areas, they are grouped together beneath '**Script Types**' . Your organisation may have one or more Script Types, - these could include (but are not limited to):

* Repair Diagnostics
* General Enquiries
* Repairs Online
* Enquiries Online&#x20;

Script Types are represented internally by '**Mode**' codes, e.g. Repair Diagnostics might be '**RD',** Repairs Online could be '**ROL**' (your Mappings must always send a **Mode** value to Keyfax).

In the situation where it is necessary to launch *different* Keyfax Script Types from **a single Dynamics form**, it will be necessary to provide a Form Field that provides a choice of script types in a form familiar to the call handler.

### Example

Let's look at an example where the Form Field below is named '**casetypecode**' and contains the following options:

<figure><img src="https://2882349412-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MARm6St_qFGM52R3pBa%2Fuploads%2FDL064gFrfSmbF4q2KvYv%2Fimage.png?alt=media&amp;token=dea44c73-9be1-438a-ae94-a4186c4fc5d5" alt=""><figcaption></figcaption></figure>

Using the possible values above, create a configuration **Setting** as in the example below.\
\
In this case, the **Value** defines the translation of the chosen case type to the relevant Keyfax **Mode**. It is a comma separated list of the possible values and the Mode they translate to.

<figure><img src="https://2882349412-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MARm6St_qFGM52R3pBa%2Fuploads%2FmrvZSAXjo9p1rq21KOcW%2Fimage.png?alt=media&amp;token=2060e0dc-8f4b-4b9b-a451-ba89979b7e1e" alt=""><figcaption></figcaption></figure>

In other words, if '**Repair/Maintenance**' is chosen by the user, the **Mode** value will be set to '**RD**' and for other choices, it will be set to '**FL**'. If no choice has been made, the Default value of '**RD**' will be used. Note: *'**FL**' is a legacy acronym implying '**FrontlLine**' - this is slowly being replaced with '**ENQ**'.*

The final step is to set up a **Mapping** entry for the **Mode** itself (at the *Global* or *Entity* level as required) and this uses a **Source** of the current Form Field, e.g. **casetypecode**:

<figure><img src="https://2882349412-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MARm6St_qFGM52R3pBa%2Fuploads%2FihmQhOFYSIfnyOa9cxen%2Fimage.png?alt=media&amp;token=c296a8a8-5be2-4386-84ec-a1b0065339f3" alt=""><figcaption></figcaption></figure>
