22R1 Template Revisions

Learn about system template changes in Vault Safety 22R1.

Note Beginning with 23R3 content and for all subsequent releases, Vault Release Notes is the official site for Vault Safety release notes.

Vault Safety template revisions include changes to vault configuration for general usability improvements. Template revisions are not automatically rolled out to existing customers.

New vaults created in 22R1 or later will have the following settings by default. Vaults created in an earlier release can optionally be updated to match these changes. The sections on this page provide the instructions to enable these changes.

This page does not cover how to update your template to support new features. The 22R1 New Features page outlines which features require configuration upgrades, and provides links to enablement instructions for each feature.


Update the Criteria VQL for the Inbox Item Study Field

Configuration updates have been made to the 22R1 template for the Inbox Item object regarding the Study field Criteria VQL.

This configuration change is documented in the Inbox Item enablement instructions.

Inactivate Base Object Type

Inactivate the Base Object Type for the following objects:

  • Case (case_version__v)
  • Case Cause of Death (case_cause_of_death__v)
  • Case Contact (case_contact__v)
  • Case Product (case_product__v)
  • Controlled Vocabulary (controlled_vocabulary__v)
  • Dictionary (dictionary__v)
  • MedDRA Criteria (meddra_criteria__v)
  • Organization (organization__v)
  • Product (product__v)
  • Reporting Family (reporting_family__v)
  • Safety Rule Set (safety_rule_set__v)
  • Study Product (study_product__v)
  • Transmission (transmission__v)
  • Transmission Profile (transmission_profile__v)

Note You cannot inactivate the Base object type if it is being used as the default object type. In the respective object, go to the Details tab and update the Default Object Type field.

  1. Go to Configuration > Objects.
  2. Select [Object].
  3. In the Object Types tab, select the “Base [object]” (base__v) heading.
  4. Update the Status field to Inactive.
  5. Save the page.
  6. Repeat steps 2-5 for the objects listed above.

Add the Submit to Gateway Action to the Transmission Distribution Object Type

Perform the following configuration to add the Submit to Gateway action to the Distribution object type for Transmissions:

  1. Go to Configuration > Objects > Transmission.
  2. In the Object Types tab, select Actions.
    alt-text
    Actions Tab in Object Types
  3. Select the Submit to Gateway checkbox for the Distribution object type.
    alt-text
    Submit to Gateway Action for Distribution Object Type
  4. Save the page.

Re-Order Sections on the Inbox Item Page Layout

In the 22R1 Vault Safety template, upon creating a manual Inbox Item, the entire Inbox Item page is displayed, instead of only the Organization and Localization fields. Perform the following configuration to update the Inbox Item page layout:

  1. Go to Configuration > Objects > Inbox Item.
  2. In the Page Layouts tab, select the Inbox Item Detail Page Layout.
  3. Move the Organization and Region section to the top of the page, above the Case Validity and Source section.
  4. Save the page.

Remove the New Fields Section from Page Layouts

Remove the New Fields section from the page layout for the following objects:

  • Study Indication (study_indication__v)
  • Transmission Message (transmission_message__v)
  • Transmission Profile (transmission_profile__v)
  1. Go to Configuration > Objects.
  2. Select [Object].
  3. Select the page layout from the Page Layouts tab.
  4. Delete the New Fields section.
  5. Save the page.

Add Registration Fields to the External Product Page Layout

Perform the following configurations to add Registration controls to the External product Page Layout:

  1. Go to Configuration > Objects > Case Product.
  2. In the Page Layouts tab, select the External Products Page Layout.
  3. In the Registrations section, add the following controls:
    • Registration Holder/Applicant
    • Registration Country
    case-product-registration-controls
    Case Product Registration Controls
  4. Save the page.

Update the Product Page Layouts

Add the Product Alias section to all Product type page layouts and the Substances section to the following Product type page layouts:

  • Biologic Page Layout
  • Vaccine Detail Page Layout
  1. Go to Configuration > Objects > Products.
  2. In the Page Layouts tab, select [page layout].
  3. Add a Related Object Section for Product Aliases with the following information:
    • Related Object: Product Alias
    • Section Label: Product Aliases
    • Section Name: product_aliases__c
  4. Make sure the Product Aliases section contains the following columns:
    • Name
    • Alias
  5. Add a Related Object section for Substances with the following information IF you are editing the Biologic or Vaccine page layout:
    • Related Object: Product Substance
    • Section Label: Substances
    • Section Name: substances__c
  6. Make sure the Substances section contains the following columns:
    • Name
    • Substance
    • Substance > Substance Name
    • Substance > Description
    • Substance > Substance ID

Remove the Case Classifier Condition from Object Validation Rules

You must remove the Case Classifier condition from certain validation rules in order for the rule to evaluate correctly. Use the table below to update the validation rules for the respective object.

  1. Go to Configuration > Objects.
  2. Select [Object].
  3. Go to the Validation Rules tab and select [validation rule].
  4. Update the Validation Expressions for the respective validation rules using the table below:
    OBJECT VALIDATION RULE VALIDATION EXPRESSION
    Case Date of Birth Not in Future (text(state__v) = "New" || text(state__v) = "Triage" || text(state__v) = "Duplicate" || text(state__v) = "Revision") ||
    If(
    not(isBlank(dob_normalized__v)),
    dob_normalized__v<= (Today()+Days(1)),
    true
    )
    Date of Death Not in Future (text(state__v) = "New" || text(state__v) = "Triage" || text(state__v) = "Duplicate" || text(state__v) = "Revision") ||
    If(
    not(isBlank(dod_normalized__v)),
    dod_normalized__v<= (Today()+Days(1)),
    true
    )
    New Info Date cannot be in the future (text(state__v) = "New" || text(state__v) = "Triage" || text(state__v) = "Duplicate" || text(state__v) = "Revision") ||
    If(
    not(isBlank(new_info_date__v)),
    new_info_date__v<= (Today()+Days(1)),
    true
    )
    Receipt Date <= New Info Date (text(state__v) = "New" || text(state__v) = "Triage" || text(state__v) = "Duplicate" || text(state__v) = "Revision") ||
    If(
    not(isBlank(receiptdate_date__v)) && not(isBlank(new_info_date__v)),
    receiptdate_date__v <= new_info_date__v,
    true
    )
    Receipt Date cannot be in the future (text(state__v) = "New" || text(state__v) = "Triage" || text(state__v) = "Duplicate" || text(state__v) = "Revision") ||
    If(
    not(isBlank(receiptdate_date__v)),
    receiptdate_date__v <= (Today()+Days(1)),
    true
    )
    Case Adverse Event Cessation cannot be in the future (text(case_version__vr.state__v) = "New" ||
    text(case_version__vr.state__v) = "Triage" || text(case_version__vr.state__v) = "Duplicate" ||
    text(case_version__vr.state__v) = "Revision") ||
    If(
    not(isBlank(resolved_normalized__v)),
    resolved_normalized__v<= (Today()+Days(1)),
    true
    )
    Onset <= Cessation (text(case_version__vr.state__v) = "New" ||
    text(case_version__vr.state__v) = "Triage" ||
    text(case_version__vr.state__v) = "Duplicate" ||
    text(case_version__vr.state__v) = "Revision") ||
    if(isBlank(onset_normalized__v) || isBlank(resolved_normalized__v),true, if(Length(resolved_idate__v) = Length (onset_idate__v) ||
    Length(resolved_idate__v) >= 10, onset_normalized__v<= resolved_normalized__v, If(Length(resolved_idate__v) >= 7 && Length (onset_idate__v) >= 7,
    date(Value(Left(resolved_idate__v,4)),value(middle(resolved_idate__v,6,2)),1) >= date(Value(Left(onset_idate__v,4)),value(middle(onset_idate__v,6,2)),1), date(Value(Left(resolved_idate__v,4)),1,1) >= date(Value(Left(onset_idate__v,4)),1,1))))
    Onset cannot be in the future (text(case_version__vr.state__v) = "New" || text(case_version__vr.state__v) = "Triage" || text(case_version__vr.state__v) = "Duplicate" || text(case_version__vr.state__v) = "Revision") ||
    If(
    not(isBlank(onset_normalized__v)),
    onset_normalized__v <= (Today()+Days(1)),
    true
    )
    Case Drug History End Date cannot be in the future (text(case_version__vr.state__v) = "New" || text(case_version__vr.state__v) = "Triage" || text(case_version__vr.state__v) = "Duplicate" || text(case_version__vr.state__v) = "Revision") ||
    If(
    not(isBlank(end_date_normalized__v)),
    end_date_normalized__v <= (Today()+Days(1)),
    true
    )
    Start Date cannot be in the future (text(case_version__vr.state__v) = "New" || text(case_version__vr.state__v) = "Triage" || text(case_version__vr.state__v) = "Duplicate" || text(case_version__vr.state__v) = "Revision") ||
    If(
    not(isBlank(startdate_normalized__v)),
    startdate_normalized__v <= (Today()+Days(1)),
    true
    )
    Start Date <= End Date (text(case_version__vr.state__v) = "New" || text(case_version__vr.state__v) = "Triage" ||
    text(case_version__vr.state__v) = "Duplicate" || text(case_version__vr.state__v) = "Revision") ||
    if(isBlank(startdate_normalized__v) || isBlank(end_date_normalized__v),true, if(Length(end_date_idate__v) = Length (startdate_idate__v) ||
    Length(end_date_idate__v) >= 10, startdate_normalized__v<= end_date_normalized__v, If(Length(end_date_idate__v) >= 7 && Length (startdate_idate__v) >= 7,
    date(Value(Left(end_date_idate__v,4)),value(middle(end_date_idate__v,6,2)),1) >= date(Value(Left(startdate_idate__v,4)),value(middle(startdate_idate__v,6,2)),1),
    date(Value(Left(end_date_idate__v,4)),1,1) >= date(Value(Left(startdate_idate__v,4)),1,1))))
    Case Medical History End Date cannot be in future (text(case_version__vr.state__v) = "New" ||
    text(case_version__vr.state__v) = "Triage" ||
    text(case_version__vr.state__v) = "Duplicate" ||
    text(case_version__vr.state__v) = "Revision") ||
    If(
    not(isBlank(enddate_normalized__v)),
    enddate_normalized__v <= (Today()+Days(1)),
    true
    )
    Start Date cannot be in the future (text(case_version__vr.state__v) = "New" ||
    text(case_version__vr.state__v) = "Triage" ||
    text(case_version__vr.state__v) = "Duplicate" ||
    text(case_version__vr.state__v) = "Revision") ||
    If(
    not(isBlank(startdate_normalized__v)),
    startdate_normalized__v <= (Today()+Days(1)),
    true
    )
    Start Date <= End Date (text(case_version__vr.state__v) = "New" ||
    text(case_version__vr.state__v) = "Triage" ||
    text(case_version__vr.state__v) = "Duplicate" ||
    text(case_version__vr.state__v) = "Revision") ||
    if(isBlank(startdate_normalized__v) ||
    isBlank(enddate_normalized__v),true, if(Length(enddate_idate__v) = Length (startdate_idate__v) ||
    Length(enddate_idate__v) >= 10, startdate_normalized__v<= enddate_normalized__v, If(Length(enddate_idate__v) >= 7 && Length (startdate_idate__v) >= 7, date(Value(Left(enddate_idate__v,4)),value(middle(enddate_idate__v,6,2)),1) >= date(Value(Left(startdate_idate__v,4)),value(middle(startdate_idate__v,6,2)),1), date(Value(Left(enddate_idate__v,4)),1,1) >= date(Value(Left(startdate_idate__v,4)),1,1))))
    Case Product Dosage First Admin <= Last Admin (text(case_version__vr.state__v) = "New" ||
    text(case_version__vr.state__v) = "Triage" ||
    text(case_version__vr.state__v) = "Duplicate" ||
    text(case_version__vr.state__v) = "Revision") ||
    if(isBlank(firstadmin_normalized__v) || isBlank(lastadmin_normalized__v),true, if(Length(lastadmin_idate__v) = Length (firstadmin_idate__v) || Length(lastadmin_idate__v) >= 10, firstadmin_normalized__v<= lastadmin_normalized__v, If(Length(lastadmin_idate__v) >= 7 && Length (firstadmin_idate__v) >= 7, date(Value(Left(lastadmin_idate__v,4)),value(middle(lastadmin_idate__v,6,2)),1) >= date(Value(Left(firstadmin_idate__v,4)),value(middle(firstadmin_idate__v,6,2)),1), date(Value(Left(lastadmin_idate__v,4)),1,1) >= date(Value(Left(firstadmin_idate__v,4)),1,1))))
    First Administration Date not in Future (text(case_version__vr.state__v) = "New" ||
    text(case_version__vr.state__v) = "Triage" ||
    text(case_version__vr.state__v) = "Duplicate" ||
    text(case_version__vr.state__v) = "Revision") ||
    If(
    not(isBlank(firstadmin_normalized__v)),
    firstadmin_normalized__v<= (Today()+Days(1)),
    true
    )
    Last Admin Not in Future (text(case_version__vr.state__v) = "New" ||
    text(case_version__vr.state__v) = "Triage" ||
    text(case_version__vr.state__v) = "Duplicate" ||
    text(case_version__vr.state__v) = "Revision") ||
    If(
    not(isBlank(lastadmin_normalized__v)),
    lastadmin_normalized__v<= (Today()+Days(1)),
    true
    )
    Case Test Result Test Date Not in Future (text(case_version__vr.state__v) = "New" ||
    text(case_version__vr.state__v) = "Triage" ||
    text(case_version__vr.state__v) = "Duplicate" ||
    text(case_version__vr.state__v) = "Revision") ||
    If(
    not(isBlank(date_normalized__v)),
    date_normalized__v<= (Today()+Days(1)),
    true
    )
  5. Delete the Case Classifier field from the Case by navigating to Objects > Case > Fields.

Add Tabs to the Case Distribution Actions

Perform the following configuration to add the Cases and Localized Cases tabs to the Case Distribution Actions permission set:

  1. Go to Users & Groups > Permission Sets > Case Distribution Actions.
  2. In the Tabs tab, select the View checkbox for Cases and Localized Cases.
  3. Save the page.

Create a Security Profile for Non-Admin Permission Sets

Create a new security profile with permission sets for non-administrators:

  1. Go to Users & Groups > Security Profiles.
  2. Create a new security profile with the Name “All Case Activity”.
  3. Add the following Permission Sets:
    • Case Distribution Actions
    • Case Intake Actions
    • Case Entry Actions
    • Case Review Actions
    • Case Translation Actions
    • Safety Operations Actions
    • Safety Writer
    • Submission Actions

Update Entry Actions Permission Set for Localized Case

Grant Create permissions for the Case Entry Actions on all Localized Case Child objects:

  1. Go to Users & Groups > Permission Sets > Case Entry Actions.
  2. Select the Objects tab.
  3. Select the Create object permission for all Localized Case Child objects.
    localized-case-child-permissions
    Localized Case Child Object Permissions
  4. Save the page.

Create a New Inbox Item Case Validity Field and User Action

The 22R1 Vault Safety template contains a new Identifiable Company Product field on the Inbox Item and updated user actions for the Inbox Item lifecycle. The reason being the Promote to Case action is displayed twice for some cases that include a Study Case with a non-study Company Product or a Study with Unspecified Products.

This configuration is documented in the Enable Inbox Items enablement instructions article.

Add the Evaluate Regulatory Conformance User Action to the Case Lifecycle

Perform the following configuration to add the Evaluate Regulatory Conformance user action to the Data Entry state in the Case Lifecycle:

  1. Go to Configurations > Object Lifecycles > Case Lifecycle.
  2. Select the Data Entry state.
  3. Add a new User Action using the following image:
    evaluate-regulatory-conformance-case-user-action
    Evaluate Regulatory Conformance User Action for Data Entry State

Update Case Lifecycle and Localized Case Lifecycle Entry Actions

You must configure the Entry Actions for the following lifecycle states to asynchronously change the state of related records:

  • Case Lifecycle
    • Approved
    • Closed
    • Nullified
    • Revision
    • Voided
  • Localized Case Lifecycle
    • Approved
    • Closed
    • Revision
  1. Go to Configuration > Object Lifecycles > Case Lifecycle.
  2. In the States section, select [lifecycle state].
  3. In the Entry Actions, update all “Change related object lifecycle state” values to “Change related object lifecycle state asynchronously (no limit)”.
  4. Save the page.
    case-approved-entry-actions
    Case Lifecycle Approved State Entry Actions
  5. Repeat steps 2-4 for the remaining Case lifecycle states listed above.
  6. When you are done configuring the Case Lifecycle, go to Object Lifecycles > Localized Case Lifecycle.
  7. Repeat steps 2-4 for the Localized Case Lifecycle states listed above.

Update the Case Unblinding Workflow for E2B Import

Perform the following configuration steps to include non-E2B import rule conditions so that E2B-imported Study Cases do not require a Study Arm for unblinding:

  1. Go to Configuration > Workflows > Case Unblinding.
  2. Select the Study Arms? decision.
  3. Edit the page:
    1. Use the following information to update the Details:
      • Label: Non-E2B Study Arms?
      • Name: study_arms__c
    2. Use the following image to update the Rules:
      case-unblinding-non-e2b-rules
      Case Unblinding Workflow Non-E2B Study Arms Rules
  4. Save the page.

Update the Close Submission Task in the Closure Workflow

Make the Close Submission task available to all users in the Close Submission Workflow. The following steps outline how to configure this change in your vault:

  1. Go to Configuration > Workflows > Submission: Closure Workflow.
  2. Select the Close Submission task.
  3. In the General Settings > Assign Task To field, select Make available to users in participant group.
  4. Save the page.

Update the Submission: Error Workflow

Add a Manual Submission task to the Submission: Error Workflow to allow Distribution Managers to resolve submission issues by manually submitting the transmission(s).

  1. Go to Configurations > Workflows > Submission: Error Workflow.
  2. Select the Decision: Address or Withdraw step.
  3. Create a rule with the following information:
    • If: Task > Task: Review Error > at least one label equals > Address Error
    • Then > Create Step: Manual Submission
  4. Save the workflow decision.
  5. Select the Manual Submission placeholder.
  6. Edit the page with the following information:
    Details
    • Type: Task
    • Next Steps: Create Step > Change State: Complete

    Task Options: General Settings
    • Task Label: Submit Manually
    • Assign Task To: Distribution Manager
      • Select “Make available to users in participant group”.
    • Instructions: Manually submit ${Object.case_version__v} to ${Object.destination__v} by ${Object.due_date__v} and upload proof.
    • Task Requirement: Required
    • Display information about previous tasks: Task: Review Error
  7. Save the workflow task.
  8. Select the Change State: Completed placeholder.
  9. Edit the page with the following information:
    Details
    • Type: Action
    • Next Steps: End

    Rules
    • Always > Change State > Completed
  10. Save the workflow action.
  11. Make sure your workflow matches the following image and then select Make configuration active:
    submission-error-workflow
    Submission: Error Workflow

Update the QC Task in the Case Entry and Case Revision Workflows

In 22R1, the Requires QC (Peer Review) verdict is no longer required for the QC Task in the Case Entry and Case Revision workflows, since users can now send tasks back to the designated group of users.

Perform the following configuration to make this change in your vault:

  1. Go to Configuration > Workflows > Case Entry.
  2. Select the QC task.
  3. In the Verdicts section, remove the Requires QC (Peer Review) verdict.
  4. Save the page.
  5. Go to the Case Revision workflow.
  6. Select the Decision: QC Complete? step and remove the following rule:
    remove-qc-decision-rule
    Remove Decision: QC Complete? Rule
  7. Repeat steps 2-4 for the Case Revision workflow.

Update the Medical Review (Not Blinded) Task in the Case Review Workflow

In the 22R1 Vault Safety Template, the Seriousness field on a non-SUSAR Case no longer needs to be populated in order to trigger the Case Review workflow.

Perform the following configuration to remove the Seriousness requirement from the Medical Review (Not Blinded) task:

  1. Go to Configuration > Workflows > Case Review.
  2. Select the Medical Review (Not Blinded) task.
  3. Go to the Not SUSAR verdict in the Verdicts section.
  4. Unselect the Required checkbox next to Seriousness.
    not-susar-seriousness-requirement
    Not SUSAR Verdict Seriousness Requirement in Medical Review (Not Blinded) Task
  5. Save the page.