# Configuring Quality Automated Language Translations (QMS)

You can configure your Vault to translate data on supported QMS records when users change the lifecycle state of a record or run a user action. Quality Automated Language Translations expedite complaint intake and processing in order to ensure that complaints are triaged quickly. 


<div class="note-border alert-info">
  <div class="alert alert-info" role="alert">
    <div><i class="far fa-info-circle"></i></div>
    <div class="alert-text">
      <p><strong>Note</strong>: This feature leverages a language translation provider that does not save or use data from your Vault to enhance its translation service, track usage, or resolve issues. For a list of supported languages, see <a class="external-link " href="https://docs.aws.amazon.com/translate/latest/dg/what-is-languages.html" target="_blank" rel="noopener">Supported languages and language codes<i class="fa fa-external-link" aria-hidden="true"></i></a>.</p>
    </div>
  </div>
</div>



Quality Automated Language Translations support the following types of standard and custom fields:

* Long Text
* Rich Text
* Text

## Supported Objects {#supported-objects}

Quality Automated Language Translations support the following objects and object types:

* _Complaint_ (all standard and custom object types)
* _Complaint Intake_  (all standard and custom object types)
* _Quality Event_ (_Complaint_ and _Medtech Complaint_ object types only)

## Configuration Overview

To configure Quality Automated Language Translations:

* [Configure][2] translation fields on a target object.
* [Create][3] a _Quality Language Translation_ configuration.
* [Configure][4] the target object layout.
* [Configure][5] the target object lifecycle.
* [Configure][6] user permissions.
* Optional: [Update][7] your configuration for the Record Checks and Suggestions features to support translation.

## Configuring Target Object Fields {#object-fields}

To configure a [supported object][1] for Quality Automated Language Translations, first <a href="/en/gr/15057/#how_to_add_object_fields">create</a>
 fields to store translated text for custom and standard fields that require translation, then <a href="/en/gr/32857/#assign">assign</a>
 them to the relevant object types. The _Title_ and _Description_ fields include the corresponding standard _Title (Translated)_ and _Description (Translated)_ fields, but you must activate them and assign them to object types.

We recommend configuring the _Translate Record_ field to be <a href="/en/gr/15057/#required">required</a>
. If you configure this field to be required, you can optionally set a default value of _No_. You can [configure][5] the _Translate Record_ user action to display only when this field is set to _Yes_, and the _Translate Record_ entry action to run only when this field is set to _Yes_.

The _Source Language Code_ and _Target Language Code_ fields are used by Vault only and are automatically populated with the applicable language code when users select a language from the _Source Language_ and _Target Language_ object controls that display as drop-downs on the target object's [layout][4]. The language code fields should not be added to the layout for the target object.

You can optionally configure the _Source Language Code_ field to be <a href="/en/gr/15057/#required">required</a>
. However, if you leave it optional, when users save a record without selecting a language from the _Source Language_ drop-down, the action detects the source language during translation. We do not recommend setting a default value for this field.

If you expect your target language to always be a language other than English, you can configure the _Target Language Code_ field to default to that language. If the user does not select a language from the _Target Language_ control before translating a record, this field defaults to English.

## Creating a Quality Language Translation Configuration {#create}

To create a _Quality Language Translation_ configuration:

1. Navigate to **Admin > Configuration > Quality Language Translations** and click **Create**.
2. Enter a **Label**.
3. Enter a **Description**.
4. Select a **Source Object**.
5. Select a **Source Object Type**.
6. Click **Save**.

Next, you must create _Field Mappings_ within the _Quality Language Translation_ configuration for all fields you wish to translate on the target object.

To create _Field Mappings_:

1. On a _Quality Language Translation_ configuration, expand the _Field Mappings_ section and click **Edit**.
2. Select a **Source Field** from the drop-down. This is the field to translate.
3. Select a **Target Field** from the drop-down. The translated text will appear in this field. If you selected a _Rich Text_ type field as the _Source Field_, only _Rich Text_ type fields are available to select as the _Target Field_. If the _Source Field_ is _Text_ or _Long Text_, you can select any type of text field as the _Target Field_.
4. Click the (**+**) icon to add another field.
5. Repeat steps 2-4 until you have created all required _Field Mappings_.
6. Click **Save**.

### Viewing, Editing, or Deleting a Quality Language Translation Configuration

To view, edit, or delete a _Quality Language Translation_ and its _Field Mappings_:

1. Navigate to **Admin > Configuration > Quality Language Translations**.
2. Click the **Actions** menu next to the applicable configuration.
3. Select **View**, **Edit**, or **Delete**.

When you delete a _Quality Language Translation_ configuration, Vault also deletes its _Field Mappings_. To delete a _Field Mapping_ from a _Quality Language Translation_ configuration, navigate to the configuration record, click **Edit** in the _Field Mappings_ section, click the (**-**) icon next to the _Field Mapping_ you wish to delete, then click **Save**. 

## Configuring the Target Object Layout {#layout}

On the <a href="/en/gr/26387/#how-to-access-page-layouts">layout</a>
 for the target object and object type, <a href="/en/gr/15057/#how_to_add_object_fields">add</a>
 the following:

* Recommended: _Source Language_ object control. If you configured the _Source Language Code_ field to be required, this step is not optional.
* Optional: _Target Language_ object control. Since this control defaults to English if left blank, we recommend adding it to the layout only if you require records to be translated into a language other than English.
* Recommended: _Translate Record_ field
* All translation fields that will display translated data

After adding all translation fields to the layout, <a href="/en/gr/51632/#creating-layout-rules">create a layout rule</a>
 to hide the translation fields when users are first creating a record. When creating the rule, use the <a href="/en/gr/51632/#about-display-effects">_Hide_ display effect</a>
 and specify the fields to hide. Next to _IF this Layout Rule Expression is TRUE_, enter the following expression: `DisplayMode()='CREATE'`. Do not hide the _Translate Record_ field.

## Configuring the Target Object Lifecycle {#lifecycle}

To make the _Translate Record_ action available to configure on an object lifecycle, you must first <a href="/en/gr/43127/#assign-actions">assign</a>
 the _Translate Record_ action to the target object. Next, add the _Translate Record_ action as an <a href="/en/gr/59885/#entry-actions">entry action</a>
 or <a href="/en/gr/59885/#user-actions">user action</a>
 to any state of the target object lifecycle. 

When configuring the action as an entry action, you can specify _Action Completion Notification Recipients_ who should be notified when the action completes with errors or fails. If your process includes reviewing the translated data on the record, you can optionally create a _Translation Ready_ lifecycle state and add the _Translate Record_ entry action to it. You can optionally configure a <a href="/en/gr/59885/#conditions">condition</a>
 to ensure the record is translated only if the _Translate Record_ field is set to _Yes_.

When configuring the action as a user action, you can optionally configure a condition to make the _Translate Record_ action visible only if the _Translate Record_ field on a record is set to _Yes_. To do this, for the _Condition Type_, select **All conditions are met**, then use the drop-downs below the _Condition Type_ to create the phrase _If Translate Record equals Yes_. If Vault encounters an error when translating records via the user action, an error message displays to the user who ran the user action. 

If Vault encounters errors when the _Translate Record_ user or entry action runs, depending on the nature of the error, Vault may only partially translate the record if specific fields cannot be translated. In other scenarios, the entire transaction may fail, for instance when the user or entry action is configured with an inactive or deleted _Quality Language Translation_ configuration.  

## Configuring User Permissions {#permissions}

You must grant users the following permissions to use Quality Automated Language Translations:

* _Edit_ permission on the target object record, including the _Translate Record_ field and all source and target translation fields
* _View_ permission for the _Source Language_ object control and the _Target Language_ object control on the target object if you added these object controls to the [target object layout][4]

## Configuring Record Checks & Suggestions for Translation {#record-checks-suggestions}

You can configure the <a href="/en/gr/70442/">Recurrence Check</a>
, <a href="/en/gr/52308303/">Duplicate Check</a>
, and <a href="/en/gr/31567/">Quality Event Suggestions</a>
 features to search translated fields. In addition to completing the other configuration steps in this article, you must update the relevant configuration record to add or replace text comparison fields with translation fields, or create new configuration records to use translation fields.

If your target language is English and you expect users to create some records in English, you can create an <a href="/en/gr/811001/">action trigger</a>
 to copy source field values to target translation fields when the record's _Source Language_ and _Target Language_ fields are both English.

## Limitations

The following limitations apply to Quality Automated Language Translations:

* You can create one _Quality Language Translation_ configuration per object type.
* You can create up to five _Field Mappings_ per _Quality Language Translation_ configuration.
* If the data in source or target translation fields exceeds 100,000 bytes, Vault displays a warning message and does not translate these fields. The remaining fields on the record are translated. Some Long Text and Rich Text fields may exceed this limit.
* Rich Text fields are not translated if the target language is a language other than English.
* _Field Mappings_ cannot contain duplicate _Source Fields_ or _Target Fields_.
* The <a href="/en/gr/769480/#capture-field">_Reason for Change Capture_ field</a>
 is not supported for translation.

## Related Permissions

To complete the steps in this article, you must have the following permissions:

<table>
  <tr>
   <th>Permission
   </th>
   <th>Access Details
   </th>
  </tr>
  <tr>
   <td>Pages: All Automated Language Translations: View
   </td>
   <td>Grants view permission for the <em>Quality Language Translations</em> list page
   </td>
  </tr>
  <tr>
   <td>Admin: Configuration: Automated Language Translations: Read, Create, Edit, Delete 
   </td>
   <td>Grants read, create, edit, and delete permissions for <em>Quality Language Translation</em> configuration records and their <em>Field Mappings</em>
   </td>
  </tr>
</table>

[1]: #supported-objects
[2]: #object-fields
[3]: #create
[4]: #layout
[5]: #lifecycle
[6]: #permissions
[7]: #record-checks-suggestions