Submissions (Form Builder): Customization Options


This page covers:

Related pages:


Set Up Submissions

The Submissions feature consists of six Lightning Components. To use Submissions in Amp Impact:

  • Your Salesforce instance will need to be in Lightning Experience;

  • MyDomain will need to be set up.


Submission Configuration: Lookup Fields & Custom Setting Records

Create a Custom Relationship between Submission and Another Object 

Out-of-the-box, the Submission object is not associated with any specific Salesforce object (besides “Section” and “Question”). Since the feature can be used to assess or qualitatively report on any Salesforce object, the System Administrator will need to configure the relevant relationship depending on the organization’s use case. 

To do this, add a lookup field on the Submission object to create Submission records for another object record. You can choose to add a lookup to Standard Salesforce objects, Amp Impact objects, or any custom object in your Salesforce system. For example, if your organization conducts a due diligence process on an Organization you are working with, the Submission object will look up to the Account object to relate the Due Diligence Form to the relevant Organization. Similarly, if you collected details about a Program or Project, you will create a lookup field from Submission to the Amp Impact Project object.

Once the lookup field is created, be sure to add it to the Page Layout (only the Submission Layout and Response Layout) that will be displayed to Users creating Submission records to be filled out by other Users.

Create a Submission Relationship Custom Setting Record

Once Submission is related to another object, a custom setting record will need to be created to correctly display either the Submission Response Form or Radar Charts on the parent object record pages. The purpose of the custom setting is for the component to store this metadata for the component to query (i.e. a custom setting record would need to be created for every relationship field that is added on Submission if the Submission Response Form Radar Charts are being used on each parent object).

  1. Go to Custom Settings in Setup.

  2. Click “Manage” next to Submission Relationship.

  3. Click the “New” button.

  4. Fill out the Name field with the API name of the parent object.

    1. e.g. If Submission is child to the Project object from Amp, Name would be populated with “ampi__Project__c”.

  5. Fill out the Child Relationship Field Name field with the API name of the relationship field created earlier.

    1. e.g. If Submission is child to the Project object, Child Relationship Field Name would be populated with “Project__c”, the API name of the custom field added to the Submission object.

In the example below, Submission looks up to Projects (Object API Name: ampi__Project__c) through a custom lookup field on Submission (Field API Name: Project__c).

If the organization’s use case will involve creating Submissions for multiple objects, then Steps 2 and 3 will need to be repeated for each object that will require the Submissions feature. 

For example, an organization may conduct assessments on Organizations/Accounts and request narrative reporting for Projects. The System Administrator will need to add one lookup field and one custom setting record for Account, and repeat the process for the Project object.


Submission User Interface Configuration

Customize Submission Objects, Lightning Pages, & Components

The Submission feature involves three objects, three Lightning pages (on the ampi__Submission__c object), and seven Lightning Components, all of which can be configured to meet your specific use case. Review the following table to understand each Lightning Component, its functionality, and example users that might be interacting with the component.

Component Name

Function

Implementation

Example User

Component Name

Function

Implementation

Example User

CreateTemplateData

Create and edit submission templates with sections and questions

Added to Lightning Page for Submission Templates

Program Officer

SubmissionTemplatePreview

Preview template to see how it will look to responding users

Added as Action to Submission Template page layout

Program Officer

SubmissionResponseForm

Respond to questions on a template assigned to a user

Added to Lightning Page for Submission Responses

Grantee

SubmissionResponseReview

Review and edit a user’s submission

 

Note: If a user has read-only access on any fields on the ampi__Question__c object, then those fields will be displayed as read-only in the component.

Added to Lightning Page for Submission Review

Assessment Reviewer

SubmissionResponseScoring

Assign scores and add comments to a user’s submission

Added to Lightning Page for Submission Review

Assessment Reviewer

SubmissionRadar

Charts

View scores for all submissions on a single parent record (e.g. the scores from all Financial Reports submitted by an Organization/Account)

Not added anywhere by default - needs to be added to a custom Lightning page

Program Officer

SubmissionClone

Clone a submission (including responses if Record Type is Submission) so that the user can simply edit pre-existing responses for their next submission

Added as Action button to Submission Template Layout and Submission Layout

Grantee, Program Officer

System Admin Note
The SubmissionClone_AI trigger is only meant to clone one Submission record at a time. In order to clone multiple submissions created in the same transaction please configure a flow.

The SubmissionResponseForm and SubmissionResponseScoring components can be further customized for different profiles and their requirements by using the following design attributes:

Design Attributes

Function

Design Attributes

Function

viewOnly

Lock the input fields for assigned profiles so that only intended users (of a certain profile) are able to fill out a submission

canHideDownload Button

Hide the Download button for assigned profiles so that only intended users (of a certain profile) are able to download a submission

 

canHideSubmit Button

Hide the Submit button for assigned profiles so that only intended users (of a certain profile) are able to submit

Filter Related Submission by*

Filter Submissions for assigned profiles using field(s) on Submission record so that only intended Submissions can be viewed. Read more in the exapandible.

Order Related Submission by

 

Submission Record Id

 

The filter can be applied to multiple fields at once using the following format:
Multiple-filter format:
AND((Field;Operator;Value),(Field;Operator;Value))
OR((Field;Operator;Value),(Field;Operator;Value))
Single filter format:
Field;Operator;Value

Multiple-Filter Format Precautions: Within a multiple-filter format, leaving a response value blank could lead to unexpected behaviour or errors. It's strongly advised to input valid response values to maintain proper filtering functionality. Remember, these response values are case sensitive and must precisely match the values recorded in the submission for effective filtering.

The following Data Types are supported by the filter:
MSPL, Phone, Text, Picklist, Date, Number, Currency, Percent

Data Type

Operator Label

MSPL

Includes

Excludes

Phone

Equals

Not equal to

Contains

Does not contain

Text, Picklist

Equals

Not equal to

Starts with

Contains

Does not contain

Date, Number, Currency, Percent

Equals

Not equal to

Less than

Greater than

Less or equal

Greater or equal

Add Submissions to Other Pages

To make the Submissions feature easier to use, now the SubmissionResponseForm can be used on the record page of the parent object to which the Submission object looks up. In the example below, the organization placed the SubmissionResponseForm component directly on the Reporting Period record pages to enable grantees to complete a narrative report on the Reporting Period record itself.

Customize Submissions Field Sets

Section (ampi__Section__c) and Question (ampi__Question__c) are two Amp Impact objects that are used to customize Submission templates, populate Submission responses, and score responses. : To customize pop-ups for the “Create/Edit Sections” and “Questions”, System Administrators can customize the relevant Field Sets.

Add/Edit Section pop-ups: Fields Displayed on “Add New Section” pop-up & “Edit Section” pop-up

  • Object: Section

  • Field set name: Add_Edit_Section_Popup

  • Unsupported field types: Encrypted String, Multi-select Picklist, Time

Add/Edit Question pop-ups: Fields displayed on “Add New Question” pop-up & “Edit Question” pop-up

  • Object: Question__c

  • Field set name: Add_Edit_Question_Popup

  • Unsupported field types: Encrypted String, Multi-select Picklist, Time


Submission User Access & Permissions

The Submissions feature is flexible and often requires careful consideration to ensure that the relevant user groups can create, complete, or review Submissions. Here are the essential steps to ensure that users have the permissions to manage Submissions.

Assign Record Types to Profiles

The Submisson (ampi__Submission__c) and Question (ampi__Question__c) objects each has two Record Types. Since the Amp Impact package does not contain any Profiles, those Record Types must be manually assigned to each profile (or permission sets) that needs access to the Submission feature.

  • ampi__Submission__c Record Types:

    • Template: Assign this record type to any profile/permission set that needs to create or view Submission Templates.

    • Submission: Assign this record type to any profile/permission set that needs to assign a Submission to another user from a Template, fill out a Submission Response, or review a Submission Response.

  • ampi__Question__c Record Types:

    • Question: Assign this record type to any profile/permission set that needs to create or view questions on Submission Templates.

    • Answer: Assign this record type to any profile/permission set that needs to create a Submission from a Template, fill out answers in a Submission Response, or review answers in a Submission Response.

Assign Submission Permission Sets to Users

Amp Impact provides three permission sets that should be assigned to users depending on how they will use the Submissions feature. The following table details each permission set and example users. For any custom permissions that need to be provided, clone the relevant permission set to customize it and assign it to the appropriate user groups.

Permission Set

Description

Example User

Permission Set

Description

Example User

Submission Template

Enables Users to access the fields necessary for creating Templates, creating Submissions from those Templates, and assigning new Submissions to parent records.

Program Officer

Submission Response

Enables Users to access the fields necessary to view their Submissions, fill out their answers to the Questions, and submit their response for review.

Grantee

Submission Review

Enables Users to access the fields necessary to view and edit Submissions assigned to them for review, assign scores to the response, and submit their scores for approval.

Assessment Reviewer

To ensure users have adequate permissions to use the Submissions feature, follow these steps:

  1. Go to the setup interface and enter “Permission Sets” in the Quick Search box.

  2. Open the Permission Set that you would like to assign to Users. This opens the Permission Set detail page.

  3. Click the “Manage Assignments”  button in the top menu of the Permission Set detail page. This will load an assignment interface.

  4. On the next page, click the “Add Assignments” button in the top menu. This will load a list of all Users in the org.

  5. Select the checkbox next to each User to whom you want to assign the Permission Set. Once all relevant Users are selected, click the “Assign” button.

  6. Click “Done”.

Assign the Submission Page Layouts to specific Profiles & Record Types

The Submission object comes with three page layouts:

  • Template Layout - this should be assigned to the Template Record Type and the Profile of users who will be creating, editing, and downloading submission templates (e.g. Program Officers).

  • Response Layout - this should be assigned to the Submission Record Type and the Profile of users who will be filling out responses in submissions (e.g. Grantee).

  • Submission Layout - this should be assigned to the Submission Record Type and the Profile of users who need to see the full details of the submission record (e.g. Program Officer, Assessment Reviewer).

On the Submission object, scroll to the Page Layouts and click the “Page Layout Assignment” button to customize which page layout is displayed to which user profile and record type.

Assign the Question Page Layouts to specific Profiles & Record Types

The Question object comes with two page layouts:

  • Question Layout - this should be assigned to the Question Record Type and the Profile of users who will be creating, editing, and downloading submission templates (e.g. Program Officers).

  • Answer Layout - this should be assigned to the Answer Record Type and the Profile of users who will be responding to questions in submissions (e.g. Grantees).

On the Question object, scroll to the Page Layouts and click the “Page Layout Assignment” button to customize which page layout is displayed to which user profile and record type.

Assign the Lightning pages to specific Profiles

Lightning Page API Name

Function

Components

Related Record Type

Example User

Lightning Page API Name

Function

Components

Related Record Type

Example User

Submission_Template_Record_Page

Enables users to create and edit submission templates, preview templates and assign those templates to other users to fill out

CreateTemplateData

SubmissionTemplatePreview

SubmissionClone

Template

Program Officer

Submission_Response_Record_Page

Enables users to fill out any submissions that have been assigned to them and submit responses for review

SubmissionResponseForm

SubmissionClone

Submission

Grantee

Submission_Review_Record_Page

Enables users to read responses submitted by other users and assign scores to those responses

SubmissionResponseReview

SubmissionResponseScoring

Submission

Assessment Reviewer

None of the Lightning pages have pre-configured user assignments. Provide user access to the three pages directly through the activation settings on the pages themselves, based on how Users will work with Submissions. For example, a System Administrator, who will see both Templates and Submission Reviews, can be assigned both the Submission Template and Submission Review Record Pages by using the Record Type assignment.

Additionally, by default, the three Lightning pages are configured based on the three main functions of the Submission feature: Template creation, Submission response, and Submission review. These Lightning pages can be further configured to address an organization’s specific use case by cloning the pages and making the necessary changes.


Submission Radar Charts

Radar Charts allow organizations to display section scores for Submission Reviews and visualize changes over time.

Set up Radar Charts to Display Submission Scores

Add the Radar Chart component to Lightning and Digital Experience pages

Since the parent object of Submission needs to be configured for each organization, the radar chart component (SubmissionsRadarChart) is not included on any Lightning page. To display the component, simply open the Lightning record page of Submission’s parent object in the Lightning App Builder and/or Digital Experience Builder and drag the Radar Chart component into the desired space on the page. As needed, add visibility filters to the component to only display the component when certain criteria are met.

Set up automation for users to view Submissions components outside of the Submission record page 

The following components are available for Flow so that they can be launched from pages besides the Submission record page:

  • SubmissionResponseForm

  • SubmissionResponseReview

  • SubmissionResponseScoring

Depending on the organization’s use case, set up a Flow, using the Screen Flow element, to display the relevant component in other locations in the system - e.g. the Lightning Home Page of an app or the record page of a related object.


Submission Automation

Automation to Assign Scores to Sections & Submissions 

Scores on Sections (ampi__Section__c.ampi__Score__c) and Submissions (ampi__Submission__c.ampi__Overall_Score__c) can be populated either manually or through automation, based on the score values assigned to child records.

Organizations may choose to build additional automation (e.g., section scores should take the average of the question response scores) for assigning scores using native Salesforce automation, according to their specific requirements. 

Automation to Lock Responses & Reviews 

The SubmissionResponseForm and SubmissionResponseScoring components are displayed as either editable or read-only, depending on the value in two fields on the Submission object.

  1. If ampi__Response_Locked__c = TRUE, then the SubmissionResponseForm component is locked from editing for all Users on that Submission record.

  2. If ampi__Review_Locked__c = TRUE, then the SubmissionResponseScoring component is locked from editing for all Users on that Submission record.

  3. If ampi__Response_Status__c = “Submitted” then the SubmissionResponseForm component is locked from editing for all Users on that Submission record.

  4. If ampi__Review_Status__c = “Submitted” then the SubmissionResponseScoring component is locked from editing for all Users on that Submission record.

By default, these fields are updated manually. If the components should lock after specific user actions, automation can be built to auto-populate these fields based on those user actions. For example, if the SubmissionResponseForm component should lock after a user submits their response and the submission review is in progress, then a workflow rule can be built such that when ampi__Review_Status__c = “In Progress”, ampi__Response_Locked__c updates to TRUE, so the user can no longer edit their answers during a review.