The Record Detail Component

This Post was most recently updated on: 7/6/23
Current Version: 1.9.1

The RecordDetail component provides new ways to display record fields in Flow screens. Flow excels in providing fine control over field combinations, but sometimes you just want to show a bunch of fields from a record in one place without a lot of configuration. This component handles all the formatting, provides 2 column layout, and takes advantage of additional goodies that the platform provides.

If you don’t provide a specific set of fields, this component will show the entire record:

But you can pass in a specific list of field names:

…and you’ll get just the fields you asked for:

If you set the mode attribute to ‘edit’, you can make changes inline and save them immediately with a save button. Note that unlike everything else in Flow, changes you make inside of this component do not get output for use downstream in the flow. In other words, this component will not output a full record. So if you want to use the data that has just been entered and saved, you’ll need to add a separate downstream Get Records element to pull the full record ‘back’ into Flow.


Earlier versions displayed the fields without any separation between lines.

This update adds underlines when in View Mode to improve readability. This more similar to a standard record detail view.

The underlines will not appear when you are in Edit Mode.


Styling Options

You can apply SLDS classes to the MAIN BOX of this Screen Component.

The major classes for themes are: 
slds-box slds-theme_default
slds-box slds-theme_shade
slds-box slds-theme_shade slds-theme_alert-texture

More Details: https://www.lightningdesignsystem.com/utilities/themes/

To use this, set the input attribute

The default values is “slds-box slds-theme_default”

But not limited to these classes but you can also add other classes like padding, margin, grid, alignment, visibility, and custom CSS classes as well (especially if you’re using this screen component in Lightning Flow within a community)

Attributes

recordIdInput – This is the ID of the record to display or 
Output – The ID of a newly created record.
recordTypeId When provided, picklist values will be filtered for the selected record type. Note that if the
object has multiple recordtypes, you _must_ provide a record type Id. Note that it’s easy to provide a picklist that lets the flow user select a record type.
objectApiNameIf you pass in no recordId, an Object API Name, and mode of Edit, the component will open in edit mode and create a new record on save.
modeMode (View or Edit)
fieldsA comma-separated list of field names from the recordId’s object type. If this is not provided, this component will display all fields accessible to the running user’s profile.
flowNavigationOnCancelDirection Specify Previous or Next for the flow navigation direction after the Cancel button is clicked.
flowNavigationOnCancel Check if you would like the flow to navigate to the Previous or Next screen when clicking Cancel.  
For best results, hide the page footer in the flow screen.
flowNavigationOnSave Check if you would like the flow to navigate to the Next screen (or Finish) when clicking Save.  
For best results, hide the page footer in the flow screen.
isCancelButton Output – This value will be set to True is the user selected the Cancel button.
showCancelButton = false;
Can suppress the Cancel button
suppressToast = false;Provides a way to suppress the toast that normally displays
suppressUnderline = falseProvides a way to suppress gridlines
SaveBtnLabel = ‘Save’;Allows changing the label for Save
CancelBtnLabel = ‘Cancel’;Allows changing the label for Cancel
columnsize = 2;Sets custom width, out of 12
boxclassapplies css classes to the frame of thecomponent. The default values is “slds-box slds-theme_default” See “Styling Options” above
versionUsed only to display the current version of the component. No entry is required.

Installation

This component requires that you first install the Flow Base Packs

FlowActionsBasePack Version 3.15 or later
FlowScreenComponentsBasePack Version 3.2.0 or later

7/6/23Eric Smith

Fixed bug where no fields were displayed when the recordId was not provided by a reactive component on the same screen

Production or Developer Version 1.9.1
Sandbox Version 1.9.1

Old Version Notes

6/9/23Eric Smith

Updated the dependencies for the required Base Packs

Production or Developer Version 1.9.0
Sandbox Version 1.9.0

Version 1.7.4 (Production/Dev) 3/18/21

Fixed a reference to the old base components. Credit to MattyZee

12/26/20Eric Smith
Refactored to use new FlowScreensBasePack instead of the older Flow Base Components
Version 1.7.3 Unlocked

Version 1.7.2 Unlocked 10-5-20 -Adds ‘boxclass’ attribute for styling

Version 1.7.1 Unlocked 8-9-20

1.7.1 Enhancement by Eric Smith

  • Added way to turn grid lines on/off

1.7 Improvements by MHamza

1.6 – Bug Fix by Eric Smith (4/29/20)

1.5 – Enhancements by Eric Smith (4/16/20)

  • Added underlines to fields when in View Mode to improve readability

1.4 – Fix for required system fields on record create screen (2/9/20)

1.3 – Enhancements by Eric Smith (1/24/20)

  • Added a feature to display and handle a Cancel button when in Edit mode
  • Added an option to support flow navigation on record save and cancel
  • Included descriptive labels and help text for Flow parameters

1.2 – Adds ability to pass in a Record Type Id

View Source

View Source

Synergies

You can have RecordDetail automatically display the subset of fields that’s tied to a particular combination of profile and record type by using actions like:

There’s a good video of this here.

Considerations

This component uses the recordEditForm and recordViewForm base components and is constrained by their limitations. It doesn’t support all Salesforce standard objects. For example, the Event and Task objects are not supported. This limitation also applies to any record that references a field that belongs to an unsupported object. The list of supported objects is here.

If you are creating a new record and don’t select a list of fields, the component will include some system fields a required such as Created Date and Date Last Modified.

This component responds to your Display Density settings (“Comfy”, “Compact”, etc…).

For behavior like Required and Validation, think of this component as ‘listening’ to the object and field manager in Setup instead of to Flow Builder. I.e. if the field is configured in Setup required in Setup it will be required in this component. If there’s a validation rule on the field in Setup, it will run on save here.

See more Flow Screen Components

Archived Versions

Version .1.7 Unlocked

Version 1.5 (Unmanaged) Production
Version 1.5 (Unmanaged) Sandbox

Version 1.4 (Unmanaged) Production
Version 1.4 (Unmanaged) Sandbox

Version 1.2 (Unmanaged)

Version 1.1 (Unmanaged) (only installs on Spring ’20)

Version 1