GM - Record Layout
(gmpkg:RecordLayoutComponent)
Last updated
(gmpkg:RecordLayoutComponent)
Last updated
GM - Record Layout component is used to display a related object using a layout configuration. The related object could be at any level. You can configure this component to display sections and define also their visibilities.
Use case: Display the ultimate account details on the contact page with different sections and of course more than 2 columns!
Property | Type | Description |
---|---|---|
Each section contains a list of rows. A section could have a visibility condition that can evaluate all the properties of the targeted record(see example below).
A section has these properties:
name: the name of the section. It should be unique
label: the title of the section
active: a flag to activate the section or not. Set this field to always to keep the section always active
cols: # of columns to display.
visibility: visibility JSON condition. It should be built it the same way as Read-only Fields
visibilityFormula: Visibility Javascript condition. Using a formula is useful to compare fields instead of using static value. See Javascript Formulas.
readOnlyFormula: Read-Only Javascript condition. Using a formula is useful to compare fields instead of using static value. See Javascript Formulas.
rows: the list of rows. Each row is a list of fields or blocks to display
Each row contains a list of fields or an empty block. Each field can be displayed in a read-only using a condition that can evaluate all the properties of the targeted record (see example below).
A field has these properties:
apiName: the API name of the field.
colSize: the width of the component
noWhitespace: flag to remove white space
emtyBlock: An empty block ({"emtyBlock": true}) can be used to align to the displayed fields
readOnlyFormula: Read-Only Javascript condition. Using a formula is useful to compare fields instead of using static value. See Javascript Formulas.
visibilityFormula: Visibility Javascript condition. Using a formula is useful to compare fields instead of using static value. See Javascript Formulas.
coloring: Conditions for coloring. You can define the coloring and the corresponding condition same as Cell Coloring for Grids.
managedComponent: set to true if you want to use a custom component to display the field.
componentDef: Custom component to use for the managed field. This property is a JSON object containing the component name and attributes.
We can also override the density of the record layout using the density property (see example below). This property could be set to "auto" | "compact" | "compact"
Parent fields can be used for Visibility and ReadOnly conditions. See the example below:
Object Name *
String
The name of the related object to display.
Record Id Field *
String
The name of the lookup field to display. If you want to display an account card from the contact page, set this property to AccountId.If the record layout displays the current object, set this field to recordId.
Record Layout *
String
The record layout is a way to describe the sections and the visibility of each section using a JSON format. See Record Layout Schema
Record Actions
String
Record actions to apply. You can leverage your existing quick actions.
The configuration wizard can be used to build the list of actions. See Actions Configuration
An action has these properties:
name: the name of the action.
label: the label of the action
icon: the icon to display. Only utility:* icons are supported
visibility: visibility condition for the action same as for a section.
Show Actions as Buttons
Boolean
Check this option if you wish to display actions as buttons instead of icons.
When the actions are displayed as icons, we can define the icon on JSON actions configuration using the icon attribute.
Visible Actions
Integer
Set the number of visible custom actions. All the core actions will always be displayed depending on the configuration of course.
The remaining custom actions will be added as an option on the button menu.