**Source URL:** https://quality.veevavault.help/en/lr/1230982/

# Configuring Known Complaint Profiles (QMS)

Veeva QMS lets you configure your Vault to automate and streamline the high-volume, manual complaint process for known, recurring complaints. Leveraging a set of predefined _Known Complaint_ records, Vault automatically links risks, investigations, codes, CAPAs, and root causes to _Complaint_ records, significantly reducing cycle times for recurring complaints.

## Supported Objects {#supported-objects}

Known Complaint Profiles are supported for the _Medtech Complaint_ and _Pharma Complaint_ object types of the standalone _Complaint_ (`complaint__v`) object, and for the _Complaint_ and _Medtech Complaint_ object types of the _Quality Event_ (`quality_event__qdm`) object. In this article, these objects are collectively referred to as the _Complaint_ object.

If your Vault uses a standalone _Complaint_ object, Vault creates the following object records when copying related records between _Known Complaints_ and _Complaints_:

* _Complaint - Adverse Event Code_ (`complaint_ae_code__v`): Relates _Codes_ to _Complaints_.
* _Complaint - Assessment Risk_ (`complaint_assessment_risk__v`): Relates _Assessment Risks_ to _Complaints_.
* _Complaint - CAPA_ (`complaint_capa__v`): For _Pharma Complaints_ only; relates _CAPA Actions_ to _Complaints_.
* _MedTech Complaint - MedTech CAPA_ (`medtechcomplaint_medtechcapa__v`): For _Medtech Complaints_ only; relates _Medtech CAPAs_ to _Complaints_.
* _Investigation - Complaint_ (`investigation_complaint__v`): Relates _Investigations_ to _Complaints_.
* _Root Cause_ (`root_cause__qdm`): Vault copies related _Root Causes_ directly.

If your Vault uses the _Complaint_ and _Medtech Complaint_ object types of the _Quality Event_ object, Vault instead creates the following object records when copying related records between _Known Complaints_ and _Complaints_:

* _Adverse Event Problem Code_ (`ae_problem_code__v`): Relates _Codes_ to _Complaints_.
* _Quality Event - Assessment Risk_ (`quality_event_assessment_risk__v`): Relates _Assessment Risks_ to _Complaints_.
* _CAPA-Quality Event_ (`capaquality_event__qdm`): For the _Complaint_ object type only; relates _CAPA Actions_ to _Complaints_.
* _MedTech Complaint (QE) - MedTech CAPA_ (`medtechcomplaintqe_medtechcapa__v`): For the _Medtech Complaint_ object type only; relates _Medtech CAPAs_ to _Medtech Complaints_.
* _Investigation - Quality Event_ (`investigation_quality_event__v`): Relates _Investigations_ to _Complaints_.
* _Root Cause_ (`root_cause__qdm`): Vault copies related _Root Causes_ directly.

## Configuration Overview

To configure Known Complaint Profiles:

* [Configure][1] objects
* [Create][2] a _QMS Known Complaint Profile_ configuration
* [Configure][3] the _Complaint Lifecycle_
* [Configure][4] user permissions
* Optional: Update your Quality Teams configuration for the _MedTech Known Complaint_ and _Pharma Known Complaint_ object types
* Recommended: Configure a review and approval workflow for _MedTech_ and _Pharma Known Complaints_

## Configuring Objects {#objects}

Make the following changes to the _Complaint Intake_ (`complaint_intake__v`) object, and the _Complaint_ (`complaint__v`) or _Quality Event_ (`quality_event__qdm`) object.

### Complaint Intake Object

To configure the _Complaint Intake_ object, activate the following fields and add them to the appropriate layouts:

* For Vaults using a standalone _Complaint_ object: _Associated Known Complaint_
* For Vaults using the _Complaint_ and _Medtech Complaint_ object types of the _Quality Event_ object: _Associated Known Complaint (QE)_
* Optional: _Material_

### Complaint Object

To configure the _Complaint_ object:

* Add the following record actions to the _Complaint_ object and ensure the _Available in All Lifecycle States_ checkbox is not selected:
    * _Associate Known Complaint Profile_
    * _Promote to Known Complaint Profile_
    * _Update Known Complaint Profile_
* Activate the _Pharma Known Complaint_ and _MedTech Known Complaint_ object types and assign any fields to these object types to copy between _Known Complaints_ and processing or source _Complaints_.
* Create layouts for the _Pharma Known Complaint_ and _MedTech Known Complaint_ object types.
* Activate and add the appropriate fields to the following layouts:
    * _Medtech Complaint_ and _Pharma Complaint_ object types: Add the _Associated Known Complaint_ field and, optionally, the _Material_ field.
    * _Medtech Known Complaint_ and _Pharma Known Complaint_ object types: Add the _Source Complaint_ field.
* Ensure the _Product_ and _Product Variant_ fields are present on the layouts you will use for processing complaints and known complaints.
* Add related object sections for any [related objects][5] you wish to copy between _Known Complaints_ and _Complaints_. The sections you add should correspond to the _Related Objects to Copy_ in your [_QMS Known Complaint Profile Configuration_][2]. For instance, if copying _CAPA Actions_, add a section for the _Complaint - CAPA_ object. Ensure that you add each related object section to the processing _Complaint_ object type as well as the corresponding _Known Complaint_ object type. For instance, the related object sections on the _Pharma Complaint_ layout should correspond to those on the _Pharma Known Complaint_ layout.

## Creating QMS Known Complaint Profile Configurations {#kcp-configs}

When Known Complaint Profile actions run, Vault uses _QMS Known Complaint Profile Configurations_ to determine the records to create and the fields to populate on _Known Complaint_ and processing _Complaint_ records, as well as lifecycle state changes for a processing _Complaint_ based on the state of the _Known Complaint_ upon association.

To create a _QMS Known Complaint Profile Configuration_:

1. Navigate to **Admin > Configuration > QMS Known Complaint Profile Configurations**.
2. Click **Create**.
3. Enter a **Label**.
4. Optional: Enter a **Description**.
5. Select an **Object** depending on if your Vault uses a standalone _Complaint_ object or object types on the _Quality Event_ object.
6. Select an **Object Type**. Only _Medtech Complaint_ and _Pharma Complaint_ are valid selections.
7. Optional: Select one or more **Related Objects to Copy**. Vault copies the relationships to these records when copying related record data between _Known Complaints_ and _Complaints_.
8. In the _Fields to Copy: Promote to Profile and Update Profile_ section, select **Fields to Copy** from _Complaints_ to _Known Complaints_ when promoting a complaint to a known complaint or updating a _Known Complaint_ with the latest data from its source _Complaint_. These fields must be active and available on the selected _Object Type_ and its corresponding _Known Complaint_ object type. See [details][6].
9. Optional: In the _Fields to Copy: Associate Profile and Update Associated Records_ section, select **Fields** from _Known Complaints_ to _Complaints_ when associating a _Known Complaint_ with a _Complaint_ or updating a _Complaint_ with the latest data from its associated _Known Complaint_. These fields must be active and available on the selected _Object Type_ and its corresponding _Known Complaint_ object type. See [details][7].
10. Under _Processing Complaint Lifecycle State Changes_, select lifecycle states from **Lifecycle States of Known Complaint**. When users associate a processing _Complaint_ with a _Known Complaint_ in one of the selected states, the processing _Complaint_ moves into a state that corresponds to the _Known Complaint Closed_ [state type][8]. Otherwise, _Complaints_ move into a state that corresponds to the _Known Complaint Open_ state type.
11. Click **Save**.

### Best Practices for Fields to Copy from Source Complaints to Known Complaints {#ftc-source-to-profile}

When determining the fields to copy from source _Complaints_ to _Known Complaints_, we recommend not including any fields specific to the source _Complaint_, such as _Reporter Information_ or _Contact Method_. The fields you select should be fields that can then be copied to processing _Complaints_ from a _Known Complaint_.

### Best Practices for Fields to Copy from Known Complaints to Processing Complaints {#ftc-profile-to-complaint}

Though this is optional, we recommend defining fields to copy from _Known Complaints_ to processing _Complaints_. Consider which fields on _Known Complaints_ would contain valuable, reusable data, such as _Investigation Summary & Conclusion_, _Initial Risk Analysis_, and _CAPA Plan Summary_. If your configuration involves copying CAPAs and investigations from source _Complaints_, we recommend setting the _CAPA Required_ and _Investigation Required_ fields to _No_ on _Known Complaints_ and copying those field values to processing _Complaints_. Since neither _Known Complaints_ nor processing _Complaints_ require the creation of new CAPAs or investigations, this allows the processing _Complaint_ to bypass those steps.

### Limitations

The following limitations apply to _QMS Known Complaint Profile Configurations_:

* You can create only one _QMS Known Complaint Profile Configuration_ per object and object type combination.
* Only standard object types are supported.
* You can configure up to 20 fields per _Fields to Copy_ input.
* You can select up to five lifecycle states in the _Lifecycle States of Known Complaint_ field.
* You cannot select custom objects as _Related Objects to Copy_.

## Configuring the Complaint Lifecycle {#complaint-lifecycle}

To configure the _Complaint Lifecycle_ for Known Complaint Profiles:

* [Configure][8] lifecycle state types
* [Configure][9] the _Promote to Known Complaint Profile_ action
* [Configure][10] the _Update Known Complaint Profile_ action
* [Configure][11] the _Associate Known Complaint Profile_ action
* [Configure][12] the _Update Associated Records from Profile_ action

The Known Complaint Profile actions are not supported as event actions.

### Configure Lifecycle State Types {#state-types}

Associate the following state types with relevant states in the _Complaint Lifecycle_:

* _Known Complaint Open_
* _Known Complaint Closed_

When a processing _Complaint_ is associated with a _Known Complaint_, Vault moves the _Complaint_ to the associated state depending on if the _Known Complaint_ is open or in a terminal state. This happens only if the processing _Complaint_ is in a state specified in the _Lifecycle States of Known Complaint_ field of the governing [_QMS Known Complaint Profile Configuration_][2].

### Configure the Promote to Known Complaint Profile Action {#promote-action}

The _Promote to Known Complaint Profile_ user action promotes a source _Complaint_ to a Known Complaint Profile that users can then associate with additional similar processing _Complaints_.

When the _Promote to Known Complaint_ action runs, Vault:

* Creates a _Complaint_ record of the _Medtech_ or _Pharma Known Complaint_ object type and populates it with field data from the source _Complaint_, determined by the _Fields to Copy: Promote to Profile and Update Profile_ in the relevant [_QMS Known Complaint Profile Configuration_][2]. The new record serves as a Known Complaint Profile.
* Associates records related to the source _Complaint_ with the created _Known Complaint_. These records depend on the _Related Objects to Copy_ specified in the relevant _QMS Known Complaint Profile Configuration_ and may include:
    * _Assessment Risks_
    * _CAPA Actions_ or _Medtech CAPAs_
    * _Codes_
    * _Investigations_
    * _Root Causes_
* Populates the _Source Complaint_ field on the newly created _Known Complaint_ with the source _Complaint_.

You can configure this action as a user action on any _Complaint_ lifecycle state. This action would typically be used after investigations are complete or when a _Complaint_ is in a terminal state, but this may vary depending on your processes.

We recommend configuring a condition to display this action only on the _Pharma Complaint_ and _Medtech Complaint_ object types on the _Complaint_ object, or the _Complaint_ and _Medtech Complaint_ object types on the _Quality Event_ object.

### Configure the Update Known Complaint Profile Action {#update-profile-action}

The _Update Known Complaint Profile_ action allows users to populate a _Known Complaint_ with the latest information from the source _Complaint_. 

When this action runs, Vault:

* Deletes and recreates all related records created by the [_Promote to Known Complaint Profile_ action][9] from the source _Complaint_ to the _Known Complaint_.
* Populates any updated data in fields to copy from the source _Complaint_.

Configure this action as a user action or an entry action on a lifecycle state corresponding to a terminal or closed state in the _Complaint Lifecycle_. 

We recommend configuring a condition to display or run this action only on the _Pharma Complaint_ and _Medtech Complaint_ object types on the _Complaint_ object, or the _Complaint_ and _Medtech Complaint_ object types on the _Quality Event_ object.

### Configure the Associate Known Complaint Profile Action {#associate-profile-action}

The _Associate Known Complaint Profile_ action:

* Associates a processing _Complaint_ with a _Known Complaint_ and populates the _Associated Known Complaint_ field on the processing _Complaint_.
* Populates the processing _Complaint_ with field data from the _Known Complaint_, determined by the _Fields to Copy: Associate Profile and Update Associated Records_ in the relevant [_QMS Known Complaint Profile Configuration_][2].
* Copies any related records and field values from the _Known Complaint_ to the processing _Complaint_, per your _QMS Known Complaint Profile Configuration_.
* Moves the processing _Complaint_ to a lifecycle state depending on the state of the associated _Known Complaint_, per your _QMS Known Complaint Profile Configuration_.

We recommend configuring this action on the earlier states of the _Complaint Lifecycle_ in the following ways:

* As a user action for a state in which the _Associated Known Complaint_ field would be blank.
* As an entry action if the _Complaint's_ associated _Complaint Intake_ will have an _Associated Known Complaint_ value populated. This ensures that when the _Complaint Intake_ is promoted to a _Complaint_, Vault can associate key fields and related records from the _Known Complaint_. When configured as an entry action, the action does not change the lifecycle state of processing _Complaints_.

We recommend configuring a condition to display or run this action only on the _Pharma Complaint_ and _Medtech Complaint_ object types on the _Complaint_ object, or the _Complaint_ and _Medtech Complaint_ object types on the _Quality Event_ object.

### Update Associated Records from Profile Action {#update-associated-action}

The _Update Associated Records from Profile_ entry action updates field data and related records on all _Complaints_ associated with a _Known Complaint_ and moves the _Complaints_ to a [configured destination state][8]. When the action completes, Vault sends a notification with links to _Known Complaint Profile Log_ and _Known Complaint Profile Log Details_ records to view successes and details of any failures.

Configure this action as an entry action on a terminal or approved state for _MedTech_ and _Pharma Known Complaints_. When configuring the action, you can select lifecycle states in which processing _Complaints_ must be for Vault to update them with data from their associated known complaint.

We recommend configuring a condition to run this action only on the _Pharma Known Complaint_ and _MedTech Known Complaint_ object types on the _Complaint_ object, or the _Pharma Known Complaint_ and _MedTech Known Complaint_ object types on the _Quality Event_ object.

## Configuring User Permissions {#user-permissions}

To use Known Complaint Profiles, users must have a permission set and Atomic Security settings that grant the following permissions:

* To run the _Promote to Known Complaint Profile_ user action:
    * _Execute_ permission for the _Promote to Known Complaint_ action on the _Complaint_ object
    * _Create_ permission for the _Complaint_ object, including the _MedTech Known Complaint_ and _Pharma Known Complaint_ object types
    * _Edit_ permission for all fields to copy on the _Complaint_ object
    * _Create_ permission for [related objects][5] as needed
    * _Edit_ permission for any fields that will be populated on related objects
    * Atomic Security permissions granting _Edit_ permission for the relevant relationships and fields on the lifecycle state associated with the _Initial_ state type of the _Complaint Lifecycle_ 
* To run the _Update Known Complaint Profile_ user action:
    * _Execute_ permission for the _Update Known Complaint Profile_ action on the _Complaint_ object
    * _Edit_ permission for the _Complaint_ object, including the _MedTech Known Complaint_ and _Pharma Known Complaint_ object types
    * _Edit_ permission for all fields to copy on the _Complaint_ object
    * _Create_ permission for the same [related objects][5] as specified for the _Promote to Known Complaint Profile_ action, as needed
    * _Edit_ permission for any fields that will be populated on related objects
    * Atomic Security permissions granting _Edit_ permission for the relevant relationships and fields on the relevant states of the _Complaint Lifecycle_ 
* To run the _Associate Known Complaint Profile_ user action:
    * _Execute_ permission for the _Associate Known Complaint Profile_ action on the _Complaint_ object
    * _Edit_ permission for the _Complaint_ object, including the _Medtech Complaint_ and _Pharma Complaint_ object types
    * _Read_ permission for the _MedTech Known Complaint_ and _Pharma Known Complaint_ object types of the _Complaint_ object
    * _Edit_ permission for all fields to copy on the _Complaint_ object
    * _Edit_ permission for the _Associated Known Complaint_ field on the _Complaint_ object
    * _Create_ permission for the same [related objects][5] as specified for the _Promote to Known Complaint Profile_ action, as needed
    * _Edit_ permission for any fields that will be populated on related objects
    * Atomic Security permissions granting _Edit_ permission for the relevant relationships and fields on the relevant states of the _Complaint Lifecycle_ 
* To view _Known Complaint Profile Log_ and _Known Complaint Profile Log Detail_ records created from the _Update Associated Records from Profile_ action, users require _Read_ permission for the _Known Complaint Profile Log_ and _Known Complaint Profile Log Detail_ objects.

## Related Permissions

To create _QMS Known Complaint Profile Configurations_, you must have a security profile with a permission set that grants the following permission:

| Type | Permission | Controls |
| ---- | ---------- | -------- |
| Security Profile | Admin: QMS Known Complaint Profile Configuration: Create, Edit, Delete | Ability to manage _QMS Known Complaint Profile Configurations_. |

[1]: #objects
[2]: #kcp-configs
[3]: #complaint-lifecycle
[4]: #user-permissions
[5]: #supported-objects
[6]: #ftc-source-to-profile
[7]: #ftc-profile-to-complaint
[8]: #state-types
[9]: #promote-action
[10]: #update-profile-action
[11]: #associate-profile-action
[12]: #update-associated-action