- Added ability to set the text of the Save and Cancel buttons on pages. Use URL parameters “buttonSave”, “buttonCancel”, and “buttonBack” to override the button text. Set the value to “0” to hide the button. For example: &buttonSave=NewText or &buttonCancel=0
- Added PARENTFIELD as a new Action Formula List keyword. This will retrieve a value from a field on the parent object. For example, PARENTFIELD(field_api_of_parent_field__c) will assign the value in field_api_of_parent_field__c on the parent to the field on the current object that is configured with the keyword.
- Show an red error indicator on the child record row when a validation error occurs due to a child record.
- Add logic to allow cloning the CampaignMemberStatus with the Campaign. Salesforce automatically creates default CampaignMemberStatus records when a Campaign is inserted. The new logic swaps the default records for new cloned CampaignMemberStatus records from the original Campaign when the relationship is included.
- Limit the OpportunityPartner records that are cloned to only those that create the Opportunity to Account reference, and omit the records that create the reverse reference of Account to Opportunity because they cause duplication.
- Upgrade jQuery to the latest secure version.
- Upgrade classes and pages to API 52.0
- Add logic to clear sObject audit fields when an environment has the setting turned on to allow dataload to populate the CreatedDate and CreatedById.
- New Display page to show a read only hierarchy of records.
- Improve field permissions checks. Previously all pages required a field to be both “createable” and “editable” to be displayed. Now the Clone and Copy page only require a field to be “createable” to be used. The Edit page only requires a field to be “editable” to be used. The Display page only requires a user have read visibility to the field.
- On the Copy page, allow the user to be prompted to select a record to copy child records from.
- New formula engine.
- Upgrade notice: “suf()” and “pre()” keywords must have their contents enclosed in double quotes.
- Evaluate nested expressions. This example will increment a day for each clone when using the clone multiple feature. Ex: >>,d(+(!index-1)*7)
- Conditional logic. This example shows basic if/else value assignment. Ex: (field(myField__c) == “aaa” ? “one” : (field(myField__c) == “bbb” ?
“two” : “three”))
- Syntax improvement. Formulas can now use concatenation and arithmetic syntax that resembles other common formula languages. The old comma separated list will continue to be supported. Ex old: suf(“-ending”),pre(“beginning-“) Ex new: “beginning-” + field(myField__c) + “-ending”
- New Functions. BEGINS(text, compare_text), CONTAINS(text, compare_text), INCLUDES(Field, compare_text), UPPER(text), LOWER(text), MID(text, start_num, num_chars), FIND(search_text, text[, start_num]), LEFT(text, num_chars), and RIGHT(text, num_chars)
- New Processes Builder and Flow action that uses the Edit logic to apply configured changes to the records
- Upgrade classes and pages to API 50.0