# Working with Substitute Training Requirements

Vault can assign an alternate, or substitute, _Training Assignment_ to a Learner in place of a required, or primary, _Training Assignment_ using Training Admin-defined _Substitute Training Rule Sets_. You can accomplish this by marking _Training Requirements_ as substitutes, and then defining sets of rules for when they should be substituted.

Training Admins can use the Substitute Training feature to accommodate a wide variety of training needs. For example, you can define substitute _Training Requirements_ and rules to provide training materials in a [locale-specific language][1]. You could also define rules which give Learners credit for [multiple training documents with a single e-learning course][2], or substitute an [instructor-led classroom training with an externally-offered training course][3]. While these are simple examples, you can define large sets of substitute rules to accommodate the potentially complex training needs of your organization.



<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 must be <a href="/en/gr/622061/">configured</a> by a Vault Admin in Veeva Training and Veeva Study Training Vaults.</p>
    </div>
  </div>
</div>



## How Substitute Training Works {#how-substitute-training-works}

A _Training Requirement_ record used for Substitute Training is first categorized based on its _Is A Substitute Training Requirement_ field value: 
* When _Is A Substitute Training Requirement_ is selected, the requirement is a __Substitute Training Requirement__ that can be assigned to a Learner in lieu of another, via a [__Substitute Rule__][5].
* When _Is A Substitute Training Requirement_ is deselected, the requirement is a __Primary Training Requirement__, to which a Training Admin can apply either [__Substitute Rules__][5] or [__Equivalent Rules__][6], based on whether the requirements appear in a Learner's Training Matrix.

Generally, substitute and equivalent rules define the timeframe and conditions under which a substitute requirement will fulfill one or more primary requirements. These rules are [defined][20] on either requirement's Substitute Training Rule Set section, and Vault stores individual rules as _Substitute Training Rule Set_ and _Substitute Training Rule_ records.

When the _Update Training Assignment_ job runs, it evaluates substitute rules for each primary _Training Requirement_ it processes. If the rule is valid for the Learner, the substitute [_Training Assignment_][7] is assigned and, if not, Vault assigns the primary assignment.



<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>: The job processing described above is supported by a concept called live calculation, which dynamically handles primary and substitute assignments in specific scenarios. This means that these types of assignments may not be visible within the Vault UI until live calculation creates them. See additional details about live calculation. See <a href="/en/gr/622062/">additional details</a> about live calculation.</p>
    </div>
  </div>
</div>



### About Full, Delta & Refresher Substitute Rules {#about-full-delta-and-refresher-substitute-rules}

Training Admins can use a __Substitute Rule__ when only one requirement within a given primary/substitute pairing is assigned to Learners via their Training Matrix. When creating a Substitute Rule, Training Admins can select one of three _Substitution Types_:

* A __Full__ substitution is one in which the substitute requirement's Training Materials are fully "swapped" for the primary requirement. This reflects Substitute Training feature functionality prior to the 25R2 release, primarily to support language- or [locale-specific materials][1].
* __Delta__ and __Refresher__ substitutions are for re-training scenarios, where the substitute requirement includes a specialized set of Training Materials related to the primary requirement's updates. Delta and Refresher Rules are a newer way to manage substitutes as of the 25R2 release.
    * __Delta__ training materials are focused on changes between document versions. Delta materials can be, for example, a PowerPoint presentation covering only the latest updates to an SOP. Learners only receive delta assignments when they are created as the result of a document update (according to its "Document Updates" _Creation Reason_), and when they have previously trained on the primary _Training Requirement_ (according to the assignment's _Completed_ state and _Assigned Date_).
    * __Refresher__ training materials are focused on renewing a Learner's knowledge on the most important aspects of the materials. Learners only receive refresher assignments when they are created as a result of recurrence (according to its "Recurrence" _Creation Reason_), and when they have previously trained on the primary _Training Requirement_ (according to the assignment's _Completed_ state and _Assigned Date_).


### About Equivalent Rules {#about-equivalent-rules}

Training Admins can use an __Equivalent Rule__ to achieve substitution when two primary requirements are assigned to Learners via their Training Matrix. Equivalent Rules are a newer way to manage substitutes as of the 25R2 release.

* A single equivalent rule is used when a Learner must complete a specific primary requirement to satisfy another primary requirement.
* Two equivalent rules are used when a Learner can complete either of two primary requirements and receive credit for both. This is considered to be a bi-drectional equivalency relationship, where one requirement is indicated as a [hub][9].

A single equivalent rule can be useful, for example, for managing global and local training differences: In an organization with both global and local training requirements for Train the Trainer (TtT) contained within the same _Curriculum_, the local requirements cover all the same content as the global training, plus additional location-specific topics. With an equivalent rule, a Training Admin can indicate that the local TtT satisfies the global TtT. Then, local trainees (Learners) are required to complete only the local requirement to receive credit for both.

### Substitute Training Objects {#substitute-training-objects}

Training Admins primarily build Substitute Rules by clicking __+ Create Rule__ within a requirement's __Substitute Training Rule Set__ section. As they create rules, Vault automatically manages the underlying records and their relationships. Though we highly recommend working with rules directly within their impacted requirements, Training Admins can also create and update _Substitute Training Rule_ records and [select fields][10] within Business Admin or a custom tab, when configured.

* __Substitute Training Rule Set__ records contain all the rules for a given _Training Requirement_.
    * The record's _Rule Type_ picklist field defines whether a _Substitute Training Rule Set_ includes "Equivalent" or "Substitute" rules.
    * The _Substitute Training Rule Set_ object (`substitute_training_rule_set__v`) is a type of the _Training Rule Set_ object (`training_rule_set__v`).
* __Substitute Training Rule__ records are the individual rules associated with a _Substitute Training Rule Set_.
    * The record's _Training Rule Substitution Type_ picklist field defines whether a requirement is intended for "Full", "Delta", or "Refresher" substitute training.
    * The _Substitute Training Rule_ object (`substitute_training_rule__v`) is an object type of the _Training Rule_ object (`training_rule__v`).

The table below summarizes these differences from a data model perspective:

| Substitution Concept | Field: Rule Type <br>(_Substitute Training Rule Set_ object) | Field: Training Rule Substitution Type <br>(_Substitute Training Rule_ object) |
|----------------------|--------------------------------------------------------|--------------------------------------------------------------------------|
| Equivalency          | Equivalent                                             | N/A                                                                      |
| Full                 | Substitute                                             | Full                                                                     |
| Refresher            | Substitute                                             | Refresher                                                                |
| Delta                | Substitute                                             | Delta                                                                    |

### Substitute Rule Fields {#substitute-rule-fields}

Substitution rules include the following definition fields:

  * **Application Period**: Defines the date range for which the substitution will occur. When the current date is not within the date range according to the Vault's timezone, Vault considers the rule invalid and assigns the primary _Training Requirement_. The date values you select in the **Create Rule** dialog correspond to the _Substitute Training Rule_ record's _Start Date_, _End Date_, and _Training Rule Duration_ field values.
  * **Substitutes**: Indicates the primary _Training Requirement_ or _Training Requirements_ to substitute when the rule triggers. This field appears in substitute _Training Requirement_ substitution rules.
  * **Substituted by**: Indicates the substitute _Training Requirement_ or _Training Requirements_ to substitute in place of the primary _Training Requirement_ when the rule triggers. This field appears in primary _Training Requirement_ substitution rules.
  * **Conditions**: Here you define conditional statements. This definition further sets the requirements for the substitution to trigger. You can use any field value on the associated _Person_, _Learner Role_, or _Curriculum_ record as a condition. Conditions are linked using an AND operator, meaning that all conditions for a given rule must be met for the rule to evaluate as true. You can add up to five conditions on each rule.
  * **Details**: This can be a brief rationale for the rule, for example, "Similar materials in R&U and ILT, plus quizzes." Details appear within the Details summary of all rules for the included requirements.
  
Some field selections control how Vault creates underlying _Substitute Training Rule Set_ and _Substitute Training Rule_ [object records][4].

## Substitute Training Use Cases

Before you begin creating substitute _Training Requirements_ and substitution rules, you should determine your organization's use cases and training needs. These may be as simple as the examples below, or more complex combinations.

First, it is important to understand that _Substitute Training Rules_ are generally divided between two _Rule Types_: Equivalent and Substitute rules. Then, Substitute rules are further divided by their _Substitution Type_: Full, Delta, or Refresher. See additional details about these [objects][4] and [fields][11].

Conceptually, full, delta, and refresher substitute rules facilitate Learners completing an alternate training in lieu of something they'd normally be assigned via the primary requirement in their Training Matrix. Equivalent rules facilitate "excusing" Learners from completing an assignment within their Training Matrix, based on their completion of another primary assignment.

### Equivalent Substitutes

Equivalents are used to achieve substitution when two primary requirements are assigned to Learners via their Training Matrix. Equivalent Rules are a newer way to manage substitutes as of the 25R2 release.

The equivalency use cases outlined below build upon each other for ease of understanding. The final example also highlights Vault's ability to simultaneously support equivalent rules and substitute rules.

#### Simple Equivalent

A Learner's Training Matrix includes two _Training Requirements_ on the topic of gowning, both within a "Gowning" _Curriculum_: One for an instructor-led training (ILT) and another for the Learner to independently read and affirm understanding of a training document (R&U). Though the "Gowning ILT" is more in-depth than the R&U training, the Learner is currently required to complete assignments for both, as they are based on requirements in their Training Matrix.

An equivalent rule on the "Gowning R&U" requirement defines that "Gowning ILT" is considered to be its equivalent. With an equivalent rule, the Learner can attend only the ILT session on gowning (in lieu of reading the training document) and automatically satisfy the "Gowning R&U" assignment while remaining in compliance with their Training Matrix.

<a href="https://platform.veevavault.help/assets/images/substitutes-simple-equivalent-flow-1-2.png" data-lightbox="simple equivalent" data-title="" data-alt="simple equivalent flow">
  <img class="docimage" src="https://platform.veevavault.help/assets/images/substitutes-simple-equivalent-flow-1-2.png" alt="simple equivalent flow" style="max-width: 100%;width: 600px;"  />
</a>

<a href="https://platform.veevavault.help/assets/images/substitutes-simple-equivalent-rule-ui-2-2.png" data-lightbox="simple equivalent" data-title="" data-alt="simple equivalent rule UI">
  <img class="docimage" src="https://platform.veevavault.help/assets/images/substitutes-simple-equivalent-rule-ui-2-2.png" alt="simple equivalent rule UI" style="max-width: 100%;width: 600px;"  />
</a>

#### Bi-Directional Equivalent {#bi-directional-equivalent}

The "Gowning R&U" requirement and related Training Materials are up for biennial review. During the review, a "Gowning ILT" instructor notifies the Training Admin that the "Gowning R&U" requirement's updated materials now match the depth of content covered in the ILT session with the addition of a quiz, and that these requirements are now equivalent to each other.

<a href="https://platform.veevavault.help/assets/images/substitutes-bi-directional-equivalent-flow-1-3.png" data-lightbox="bi-directional equivalent" data-title="" data-alt="bi-directional equivalent flow">
  <img class="docimage" src="https://platform.veevavault.help/assets/images/substitutes-bi-directional-equivalent-flow-1-3.png" alt="bi-directional equivalent flow" style="max-width: 100%;width: 600px;"  />
</a>

To accommodate this within the Training Matrix, the Training Admin configures a second training rule such that the "Gowning R&U" is considered to be the equivalent of "Gowning ILT". This new rule can be configured on either requirement, as Vault ensures any configured training rules are visible within all impacted requirements.

<a href="https://platform.veevavault.help/assets/images/substitutes-bi-directional-equivalent-rule-ui-2-3.png" data-lightbox="bi-directional equivalent" data-title="" data-alt="bi-directional equivalent rule UI">
  <img class="docimage" src="https://platform.veevavault.help/assets/images/substitutes-bi-directional-equivalent-rule-ui-2-3.png" alt="bi-directional equivalent rule UI" style="max-width: 100%;width: 600px;"  />
</a>

Together, these rules make the equivalency relationship bi-directional: Learners can now complete either the "Gowning R&U" or the "Gowning ILT" assignment and satisfy the one they did not complete. To do this, the Training Admin also marks one of these requirements as a [hub][9].

<a href="https://platform.veevavault.help/assets/images/substitutes-bi-directional-equivalent-layout-ui-3-3.png" data-lightbox="bi-directional equivalent" data-title="" data-alt="bi-directional equivalent layout UI">
  <img class="docimage" src="https://platform.veevavault.help/assets/images/substitutes-bi-directional-equivalent-layout-ui-3-3.png" alt="bi-directional equivalent layout UI" style="max-width: 100%;width: 600px;"  />
</a>

#### Bi-Directional Equivalent Rules with a Full Substitute

As part of the "Gowning R&U" requirement's biennial review described above, the requirement's new English-language Training Materials were translated into Spanish, and those materials are now part of a new "Gowning R&U - Spanish" requirement. The Training Admin marks this requirement as a full substitute (where _Is A Substitute Training Requirement_ is selected), and thus does not include it within the "Gowning" _Curriculum_.

<a href="https://platform.veevavault.help/assets/images/substitutes-bi-directional-equivalent-with-sub-1-3.png" data-lightbox="bi-directional equivalent with full substitute" data-title="" data-alt="bi-directional equivalent with substitute flow">
  <img class="docimage" src="https://platform.veevavault.help/assets/images/substitutes-bi-directional-equivalent-with-sub-1-3.png" alt="bi-directional equivalent with substitute flow" style="max-width: 100%;width: 600px;"  />
</a>

With a third training rule for this group of requirements, Learners opting to complete the "Gowning R&U" are automatically assigned "Gowning R&U Spanish" when their _Person_ record's Language is "Spanish". This English-Spanish "swap" is considered to be a full substitution. See [additional details][5] on other substitution types.

<a href="https://platform.veevavault.help/assets/images/substitutes-bi-directional-equivalent-with-sub-2-3.png" data-lightbox="bi-directional equivalent with full substitute" data-title="" data-alt="bi-directional equivalent with substitute rule UI">
  <img class="docimage" src="https://platform.veevavault.help/assets/images/substitutes-bi-directional-equivalent-with-sub-2-3.png" alt="bi-directional equivalent with substitute rule UI" style="max-width: 100%;width: 600px;"  />
</a>

This collection of rules includes full substitute behavior along with the more complex bi-directional equivalency rules:

<a href="https://platform.veevavault.help/assets/images/substitutes-bi-directional-equivalent-with-sub-3-3.png" data-lightbox="bi-directional equivalent with full substitute" data-title="" data-alt="bi-directional equivalent with substitute layout UI">
  <img class="docimage" src="https://platform.veevavault.help/assets/images/substitutes-bi-directional-equivalent-with-sub-3-3.png" alt="bi-directional equivalent with substitute layout UI" style="max-width: 100%;width: 600px;"  />
</a>

### Full Substitutes

A full substitution is one in which the substitute requirement's Training Materials are fully "swapped" for the primary requirement. This reflects Substitute Training feature functionality prior to the 25R2 release.

#### Locale-Specific Training Materials {#example-locale-specific-training-materials}

You can use Substitute Training to provide training with specialized materials for specific locales or facilities. For example, suppose you are a Training Admin for an international organization who has created a _Training Requirement_ for "Code of Conduct" training and the associated training materials are in English. However, this organization has a facility (Kangawa-A) with employees who only read Japanese. 

With Substitute Training feature, you can:
* Create one additional "Code of Conduct" _Training Requirement_, one for the Japanese materials, checking the _Is A Substitute Training Requirement_ checkbox. 
* Create a full _Substitute Training Rule_ to substitute this new requirement based on the rule's conditions.

Once created, Vault summarizes the new rule's details in the Substitute Training Rule Set section of both requirements:

   `Between 01/01/2025 and 31/12/2025, Code of Conduct - Japanese substitutes Code of Conduct - English
    if all of the conditions are true:`
  * `The Learner has not completed the last required training for Code of Conduct - English`
  * `The Training Assignment for Code of Conduct - English is created because of Training Matrix Updates, Retraining or Document Updates`
  * `Learner Role > Facility equals Kanagawa-A, AND;`
  * `Person > Language equals Japanese`

With this configuration, when the nightly _Update Training Assignments_ job runs, a Learner whose _Learner Role_ and _Curricula_ include the primary _Training Requirement_, but whose _Person_ record has a "Kanagawa-A" _Facility_ value, would receive a _Training Assignment_ with the appropriate Japanese version of the training materials. When the Learner completes the substitute _Training Assignment_, the Learner automatically gets completion credit for the primary _Training Requirement_. If none of the substitution rules are triggered, the Learner receives the primary _Training Requirement_.

After Vault issues those _Training Assignments_, you may add additional substitution rules to this configuration, such as a rule to issue specialized "Code of Conduct - Contractor - Japanese" assignments to Learners with a _Learner Role_ value of "Contract Employee". In such a case, Vault re-checks the substitution rules each time the Learner opens a _Training Assignment_, and, if the new substitution rule applies to them, Vault issues a new assignment that complies with the updated substitution rules.

#### Aggregated Requirements {#example-aggregated-requirements}

Using Substitute Training, you can give credit for multiple primary _Training Requirements_ with a single substitute _Training Requirement_. Suppose a training system includes an <a href="/en/gr/61957/">e-learning course</a> which contains all the requisite SOP training material to fill ten _Vault Document Training Requirements_.

You can create one substitute _Training Requirement_ which includes the e-learning course as training material, and define a group substitution rule, pointing to all ten of the existing primary SOP requirements. When the _Update Training Assignments_ job runs, the applicable Learners will receive a single _Training Assignment_ for the e-learning, rather than many separate _Training Assignments_, one for each SOP.

#### External Course Substitution {#example-external-course-substitution}

Substitute Training enables Training Admins to provide alternate methods of receiving required training. Suppose your organization requires CPR certifications for certain types of employees and holds annual CPR courses on-site with an employee instructor managed via a "CPR Certification" <a href="/en/gr/57241/">_Classroom Training Requirement_</a>. This training is held in March, and is attended by all applicable employees hired in January, February, or March of that year.

In the event that an applicable employee is hired outside of the normal cycle, you may want to allow that employee to acquire the CPR certification using a third-party off-site training course, managed via an <a href="/en/gr/60098/">_External Training Requirement_</a> "CPR Certification – Off-Site". In such a case, you can mark the _External Training Requirement_ as a substitute, and define a substitution rule tied to the date of assignment, substituting any "CPR Certification" _Classroom Training Assignment_ assigned outside of January, February, or March, with the _External Training Assignment_ "CPR Certification – Off-Site".

### Delta & Refresher Substitutes

Delta and refresher substitutes are for re-training scenarios, where the substitute requirement includes a specialized set of Training Materials related to the primary requirement's updates. Delta and Refresher Rules are a newer way to manage substitutes as of the 25R2 release.

For example, a gowning process owner creates both delta and refresher Training Materials to cover the "Gowning R&U" requirement's SOP latest updates during biennial review. To support this, the Training Admin creates a new substitute _Training Requirement_ for each set of materials, then creates the corresponding delta and refresher rules.

In this scenario, Vault assigns Learners the appropriate substitute for the re-training situation:
  * When the "Gowning R&U" requirement is updated as a result of document update such as the recent biennial review, Learners who have previously trained on this requirement are assigned "Gowning R&U: Delta". 
  * When the "Gowning R&U" requirement recurs in the future, Learners who have previously trained on this requirement are assigned "Gowning R&U: Refresher".

<a href="https://platform.veevavault.help/assets/images/substitutes-delta-and-refresher.png" data-lightbox="delta and refresher substitutes" data-title="" data-alt="delta and refresher substitutes flow">
  <img class="docimage" src="https://platform.veevavault.help/assets/images/substitutes-delta-and-refresher.png" alt="delta and refresher substitutes flow" style="max-width: 100%;width: 600px;"  />
</a>

## Creating Substitute Training Requirements {#creating-substitute-tr}

You can create substitute _Training Requirements_ using the same process as <a href="/en/gr/50960/#training-requirements">other _Training Requirements_</a> with the addition of having the _Is A Substitute Training Requirement_ checkbox selected.

A substitute _Training Requirement_ is a lightweight _Training Requirement_ used only for substitute purposes. Substitute requirements differ from primary requirements in the following ways:

  * Substitute _Training Requirements_ cannot be part of a _Curriculum_. Only primary requirements can be included in the Training Matrix.
  * Substitute requirements cannot have <a href="/en/gr/60096/#assigning-additional-training">_Assign Additional Training Assignment?_</a> enabled.
  * While recurrence is respected for primary _Training Requirements_ with substitution rules, substitute _Training Requirements_ cannot have values in recurrence-related fields.
  * The <a href="/en/gr/52724/">Direct Assignment</a> feature bypasses substitution rules. You can use Direct Assignment for either primary or substitute _Training Requirements_.
  * Substitute _Training Assignments_ do not have related <a href="/en/gr/50960/#about-the-assignment-detail-object">_Assignment Details_ records</a>.

### Due Dates for Substitute Training Requirements {#substitute-due-dates}

  If you want to have fine control over the due dates of substitute training requirements, you can select from the following options, and your choices can differ for each substitute:
  * **Substitute Due Date based on**: This field determines how Vault calculates the _Due Date_ value for the substitute training assignment. Select from the following:
    * **Primary Training Assignment Due Date (Earliest if multiple)**: Vault uses the primary training assignment's _Due Date_ value as the due date for the substitute training assignment.
    * **Substitute Training Requirement Duration**: Vault calculates a due date for the substitute training assignment based on the substitute training requirement's duration. This is the default behavior, even if the _Substitute Due Date based on_ field is blank.
  * **Substitute Due Date Override**: This field determines which _Due Date_ value Vault applies when a Learner receives a substitute training assignment which fulfills multiple primary training requirements. Select from the following:
    * **Keep Existing Due Date**: Vault uses the existing training assignment's _Due Date_ value. This is the default behavior, even if the _Substitute Due Date Override_ field is blank.
    * **Use Earliest Due Date**: Vault compares the new assignment's _Due Date_ value, based on your _Substitute Due Date based on_ value, against the existing training assignment and uses the earliest _Due Date_ value.
    * **Use Last Due Date**: Vault compares the new assignment's _Due Date_ value, based on your _Substitute Due Date based on_ value, against existing training assignment and uses the latest _Due Date_ value.

  

  <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>: In some cases, it is possible for a substitute assignment’s <em>Due Date</em> to be in the future, and not the primary assignment’s <em>Due Date</em>. When the <em>Substitute Due Date based on</em> value is <em>Primary Training Assignment Due Date (Earliest if multiple)</em>, Vault may set the substitute assignment’s due date according to the related requirement’s duration values (<em>Duration</em>, <em>Duration Unit</em>). This can occur when either a Learner chooses a substitute or a substitute rule is created on the same day as the primary assignment’s <em>Due Date</em>: Training automation logic requires that an assignment’s <em>Due Date</em> must be a date in the future, as opposed to the current date or a past date.</p>
    </div>
  </div>
</div>



### Allowing Learner Choice {#allow-learner-choice}

  Selecting the _Allow Learner Choice?_ field on the primary _Training Requirement_ allows Learners to choose between a primary _Training Assignment_ and any of its currently valid substitutes. This option may appear in either the main _Training Requirement_ details section or while [defining][20] _Substitute Training Rules_, depending on your _Training Requirement_ object page layout.

  When this option is enabled, Vault does not create the substitute training assignment when the nightly training job creates assignments. Instead, the substitute training assignment is created when a Learner chooses it. When the Learner clicks into a choice-enabled assignment, Vault displays the available choices in either a pop-up dialog or a task page, depending on whether they have accessed the assignment from their My Tasks view or the Learner Homepage.

## Defining Substitution Rules for Training Requirements {#substitution-rules}

To define substitution rules for a _Training Requirement_:

  1. Locate the relevant primary or substitute _Training Requirement_ record.
  2. In the _Substitute Training Rule Set_ section, click **Create Rule**.
  3. Populate a rule **Name**.
  4. Select [**Equivalent**][6] or [**Substitute**][5] for the **Rule Type**. When you select **Substitute**, you must additionally select a [**Substitution Type**][5].
  5. Define [rule definition field values][11], including the **Application Period** and **Rule Action** values.
  6. Optional: Add [_Conditions_][13] for the rule. You cannot add conditions to equivalent rules.
  7. Optional: Add **Details** for the rule. This can be a brief rationale for the rule, for example, "Similar materials in R&U and ILT, plus quizzes."
  8. Optional: Click **Save + Create** to define additional rules for the _Training Requirement_.
  9. Click **Save**.
  10. If necessary, reorder the rule priority by clicking **Reorder**. Then, select the appropriate **Full**, **Delta**, or **Refresher** tab and drag the rules to the desired positions. You can only reorder rules in primary _Training Requirements_.

Once the _Training Requirement_ is in a <a href="/en/gr/50960/#eligible-states">training-eligible lifecycle state</a>, the defined substitution rules will trigger when their [conditions are met][15].

### Editing & Deleting Substitution Rules

To edit or delete a substitution rule, hover over the rule and click **Edit** or **Delete**. Vault updates rule priority values when you delete a rule on a primary _Training Requirement_, while deleting a substitute rule on a substitute _Training Requirement_ does not update priority values.

#### Editing Substitute Rules in Training-Eligible Records

The _Substitute Training Rule Set_ section of the _Training Requirement_ record displays an informational alert when you **Save** the record. Vault displays the alert only if the _Training Requirement_ has at least one open _Training Assignment_, and it displays the maximum number of open _Training Assignments_ that could be impacted by a change. Clicking the number takes you to a record list view filtered to the impacted _Training Assignment_ records.

Once you make a change to substitutes, the next time a Learner clicks on this _Training Assignment_, they will see any updated substitute rules reflected on the affected assignment.

### Viewing Substitution Rules

Vault does not check whether the user has access to objects and fields defined in substitution rules. As long as the user has _Read_ access to the _Substitute Training Rule Set_ and _Substitute Training Rule_ objects, Vault displays all rule data.

### Substitution Rule Conditions {#substitution-rule-conditions}

This definition further sets the requirements for the substitution to trigger. You can use any field value on the associated _Person_, _Learner Role_, or _Curriculum_ record as a condition. Conditions are linked using an AND operator, meaning that all conditions for a given rule must be met for the rule to evaluate as true. You can add up to five conditions on each rule. Conditions function like filters applied to the substitute rule, similar to <a href="/en/gr/8591/">report or record filters</a>.

When a condition references a _Learner Role_ or _Curriculum_, Vault checks whether the Learner has the _Learner Role_ or _Curriculum_ in their training matrix. Vault does not, however, check the lifecycle state of the _Learner Role_ or _Curriculum,_ or whether they are tied to a _Training Requirement_.

The **equals** and **is blank** operators return true if any of the records returned match the condition, while the **does not equal** operator returns true if none of the records returned match the condition.

For example, assume a Learner has _Learner Roles_ with _Facility_ values of "Kanagawa-A", "Osaka", and "Kawasaki". If the condition is "Learner Role > Facility **equals** Kanagawa-A", the condition returns true since "Kanagawa-A" is included in the set of results. If the condition is "Learner Role > Facility **does not equal** Kanagawa-A", the condition returns false since the Learner has a _Learner Role_ with a _Facility_ value of "Kanagawa-A".

### About Equivalent Rule Hubs {#about-equivalent-rule-hubs}

A training rule hub is a primary requirement which satisfies more than one equivalent rule.

Vault identifies a hub via the selected _Training Requirement_ records' _Is a Training Rule Hub_ (`is_a_training_rule_hub__v`) checkbox field. By default, this field is not selected (false), and Vault notifies Training Admins when they must update the field in one or more records, based on the rules they are attempting to create. 

Vault prevents Training Admins from creating incorrect equivalent rule and requirement combinations. This includes when:

* The current and selected requirements are both indicated as hubs. Training Admins cannot create equivalent rules between two hub requirements.
* A requirement is not a hub, and:
    * It already satisfies another requirement with an equivalent rule, or
    * It is already satisfied by another requirement, and the new rule intends for it to satisfy another requirement.

For example, when creating equivalent rules where two primary requirements satisfy each other (a [bi-directional equivalent][8]), one requirement must be marked as a hub. When it is not, the resulting error indicates to the Training Admin that one of these requirements must be updated accordingly:

<a href="https://platform.veevavault.help/assets/images/substitutes-about-equivalent-rule-hubs.png" data-lightbox="equivalent rule hub" data-title="" data-alt="equivalent rule hub error">
  <img class="docimage" src="https://platform.veevavault.help/assets/images/substitutes-about-equivalent-rule-hubs.png" alt="equivalent rule hub error" style="max-width: 100%;width: 600px;"  />
</a>

## About Training Requirement Impact Assessment (TRIA)

A primary or substitute _Training Requirement_ with substitution rules is subject to the <a href="/en/gr/57229/">Training Requirement Impact Assessment</a> (TRIA) process. In Vaults using Substitute Training, a Vault Admin should add the _In Use Training Rule Sets_ section to the _Training Requirement Impact Assessment_ object page layout.

When Vault creates a TRIA record, impact assessors can view the substitute rules defined on the affected _Training Requirements_. When the affected _Training Requirement_ is a substitute, the _Issue Training Assignments?_ and _Require Updated Quiz?_ fields cannot be updated within the TRIA, as these fields are not applicable to substitutes.

## About Training Assignments {#about-training-assignments}

When Vault creates a substitute _Training Assignment_, it also creates a primary assignment in the _Pending Substitute Completion_ lifecycle state, as well as a _Related Training Assignment_ record to link the two records. Vault does not create _Assignment Detail_ records for substitute assignments.

Vault uses the _Update Training Assignments_ job to evaluate substitution rules for each primary _Training Requirement_ it processes. A rule's _Priority_ allows Vault to assess requirements with multiple rules: When multiple rules are valid, Vault uses the rule with the lowest _Priority_ number to create assignments.

### Completed Substitute Training Assignments

When a Learner completes a substitute _Training Assignment_, Vault moves the related primary _Training Assignment_ to the _Completed_ state and sets the _Completion Source_ field to _Substitute_. Any open <a href="/en/gr/54490/">quizzes</a> or <a href="/en/gr/61957/">_Training Content Status_</a> records for the primary assignment are moved to the _Cancelled_ state.

### About Classroom Training Assignments

When a primary assignment is a _Classroom Training Assignment_ with a substitute, Vault prevents the associated _Class Roster_ record from referencing that primary _Classroom Training Assignment,_ since it will be completed by the substitute _Training Assignment_.

In cases where a primary _Classroom Training Assignment_ has a _Part of Class_ value of _Yes_, but a substitute rule changes and causes the primary _Training Assignment_ to no longer be applicable, Vault evaluates the substitution rules and changes the primary _Training Assignment_ to the _Assigned_ lifecycle state or creates and assigns a new substitute _Training Assignment_. In such a case, the Learner may have two classroom _Training Assignments_ assigned as the initial _Training Assignment_ is not automatically modified. See the Classroom Training <a href="/en/gr/57241/#best-practices">best practices documentation</a> for more information on this type of scenario.

### Substitute Rule Rechecking

Once an assignment is issued, Vault rechecks substitute rules each time the Learner opens the _Training Assignment_, ensuring that all substitute rules are still applicable.

When a rule is no longer applicable, Vault creates a new _Training Assignment_, following the currently-applicable substitution rules. Depending on the applicable rules, Vault either issues a new substitute _Training Assignment_ or defaults to the primary _Training Assignment_.

## Best Practices for Substitute Training

Follow the guidelines in this section to ensure that Substitute Training functions as expected.

### Training Requirement Availability

Substitute _Training Requirements_ must be in an available lifecycle state (`available_state__v`) before Vault can apply them. When a rule applies to a Learner, but the substitute _Training Requirement_ is not in the available state, Vault does not evaluate and apply rules for that Learner.

If, after assignment, the substitute _Training Requirement_ state later changes to a _Retired_ state or _Inactive_ state, Vault cancels the substitute _Training Assignment_ when the Learner accesses it. While Vault updates the primary assignment's state to _Assigned_ and assigns the training task, Learners see a task-canceled page.

### Training Document Availability

If a substitute requirement is a _Vault Document Training Requirement_, the associated documents must be training-eligible, in either the <a href="/en/gr/50960/#eligible-states">_Issued_ or _Effective_</a> lifecycle state. When documents are not in an eligible state, Vault does not evaluate and apply rules.

When the substitute requirement's document goes from _Issued_ or _Effective_ to _Superseded_ or _Obsolete_, Vault cancels the substitute Training Assignment when the Learner opens it, and changes the state of the primary _Training Assignment_ to _Assigned,_ with the appropriate training workflow task available.

### Training Requirement Impact Assessment (TRIA)

When Vault initiates the <a href="/en/gr/57229/">Training Requirement Impact Assessment</a> process for a substitute requirement, Training Admins should select "Yes" for both the _Re-Issue Training?_ and _Cancel Open Training Assignments_ TRIA verdict options. This allows Vault to cancel any related substitute Training Assignments, then assign a new substitute assignment and link it to the original primary assignment.

## Limitations {#limitations}

The below limitations apply to Training Admins working with substitute and equivalent rules. See <a href="/en/gr/622061/#limitations">Configuring Substitute Training</a> for configuration and other Vault Admin-specific limitations.

  * Training Admins can add up to five conditions per rule.
  * Vault does not enforce delta training rules when:
    * The requirement has a related _Training Requirement Impact Assessment_ record that does not have an _Execution Date_ value, and its _Re-Issue Training?_ field (`reissue_training_on_update__v`) is "Yes".
    * A related assignment's _Completion Date_ is before the TRIA record's _Execution Date_.
  * We highly recommend working with rules directly within their impacted requirements. The streamlined rule UI ensures Training Admins clearly understand the impacts of the rules they're creating, while Vault maintains the related object fields. As a result, Vault manages _Substitute Training Rule_ object fields as follows when Training Admins attempt to update them directly:
      * Editable fields include those most likely to be updated, such as `label__v`, `start_date__v`, `end_date__v`, `priority__v`, and `reason_details__v`. Updates appear within the rule UI.
      * The `rule_conditions__v` and `training_rule_duration__v `fields are editable, however Vault does not display any edits within the rule UI, and edits do not impact the rule itself. 
      * Vault prevents the following fields from being edited:
          * `related_training_requirement__v`
          * `rule_conditions_internal__v`
          * `training_rule_substitution_type__v`
  * Some requirement fields must remain blank or otherwise have certain characteristics when _Is A Substitute Training Requirement_ is checked. These fields include:
    * <a href="/en/gr/60096/#assigning-additional-training">_Assign Additional Training Assignment?_</a> checkbox cannot be selected.
    * _Do Not Re-Train_ must be blank or "No".
  * Navigating away from a page while editing an unsaved substitution rule does not result in a warning. Ensure that you have saved your rule before navigating away from the page.
  * _Training Requirements_ with existing _Training Assignments_ cannot be converted to a substitute or primary requirement.
  * For Training Requirement Impact Assessments, rules cannot be edited directly within a _Training Requirement Impact Assessment_ record, only on the _Training Requirement_ records.
  * It is possible for expected substitute assignments to be generated later than expected. This is due to a concept called live calculation, which dynamically handles primary and substitute assignments in specific scenarios. This means that these types of assignments may not be visible within the Vault UI until live calculation creates them. See <a href="/en/gr/622062/">additional details</a> about live calculation.

## Related Permissions

See <a href="/en/gr/622061/#related-permissions">Configuring Substitute Training</a> for the permissions required to use this feature.

 [1]: #example-locale-specific-training-materials
 [2]: #example-aggregated-requirements
 [3]: #example-external-course-substitution
 [4]: #substitute-training-objects
 [5]: #about-full-delta-and-refresher-substitute-rules
 [6]: #about-equivalent-rules
 [7]: #about-training-assignments
 [8]: #bi-directional-equivalent
 [9]: #about-equivalent-rule-hubs
 [10]: #limitations
 [11]: #substitute-rule-fields
 [12]: #about-substitution-rules
 [13]: #substitution-rule-conditions
 [15]: #how-substitute-training-works
 [20]: #substitution-rules
