Salesforce Summer 22 Release

This review is a little late but better late than never. Covid struck me in late June and that sucks. Also, chess has been consuming much of my free time too. What a fun game!

Anyway… Here’s my review of the Salesforce Summer 22 release. Release PDF

Updated Field History Data Retention Enforcement Period

When Field Audit Trail is enabled, Field History Tracking no longer enforces the 18-month retention limit. Field history data is retained and not automatically deleted after Field Audit Trail is enabled. As always, you can delete data manually using the Apex or SOAP delete() method. Without Field Audit Trail enabled, Salesforce deletes field history data after 24 months.

Where: This change applies only to orgs created after June 1, 2011.

That is awesome that with Field Audit Trail, one’s field history is permanently retained! Without the add-on, it’s retained for 24 months instead of 18 months now. I really wish Salesforce allows one to track more than 20 fields without Field Audit Trail add-on but they want to encourage its purchase.

Search Manager

Easily view all searchable objects and the search status of each field with Search Manager. Save time and narrow your search using filters so that you can verify whether a field is searchable.
Where: This change applies to Lightning Experience in Professional, Enterprise, Performance, Unlimited, and Developer editions.
How: Go to the new Search Manager page in Setup, and then navigate and search the list of objects and fields that are searchable by your users.

Search Manager Example

The Search Manager may have been around for a while but this is the first time I came across it. It allows one to see which fields are searchable or not on any Object in your org from Setup! This is really helpful to understand what is searchable or not from the global search or from custom SOSL queries!

Create Custom Address Fields (Beta)

Improve address data accuracy and your users’ experience with Custom Address Fields (beta). For example, add a Warehouse Address field to a standard or custom object. Users can populate a custom address field manually, or they can use the Google lookup to search for an address. Then you can access each address that’s stored in a custom address field, either as a structured compound data type or as individual address components.

Where: This change applies to Lightning Experience and Salesforce Classic in all editions.
Note: This feature is a Beta Service. Customer may opt to try such Beta Service in its sole discretion. Any use of the Beta Service is subject to the applicable Beta Services Terms provided at Agreements and Terms. To discuss the feature and ask questions, join the Custom Address Fields Beta Program group on the Trailblazer Community.
How: Before you enable custom address fields, review the Custom Address Fields (Beta) Requirements and Limitations. Custom address fields use the State and Country picklists. By default, all countries, territories, and their states and provinces are visible to users. To specify the available picklist values in Salesforce, configure State and Country/Territory Picklists before you enable custom address fields.

This is exciting that one can add a custom address field to an object. It uses State & Country picklist values which can be a pain but interestingly one doesn’t have to enable it and can still create a custom address. In that case, it’ll use the defaults. There are a ton of limitations though so using the custom address may not as helpful as I’d like BUT the foundation is being laid which is awesome!

Edit Multiple Fields on the Report Run Page (Generally Available)

Now you can update statuses and clean up data without rerunning your reports. Save time while staying up to date by editing multiple records inline on the report run page. Make inline changes in multiple rows or columns, and then save all the changes with a single click. This feature is now generally available.
Where: This change applies to Lightning Experience in Group, Essentials, Professional, Enterprise, Performance, Unlimited, and Developer
editions.
How: On a report’s run page, you can edit any field that shows a pencil icon when you hover. When you apply an edit, the background color changes to indicate that a new value is stored. You can change other fields in the same row or a different row.

This will help users to more easily mass edit their data when needed, especially now that it’s Generally Available! One can even turn this off if desired.

Many Tableau CRM Changes

There are many Tableau CRM changes including its name. It’s now “CRM Analytics”. Peter Lyons, an MVP who specializes in it, provides a great overview of the features on his YouTube channel here:

Call External Services Registrations Natively from Apex

Now you can access External Services registered actions directly from Apex to tap into reusable functionality when writing Apex code. Previously, actions created through External Services were exposed exclusively for invocation through Flow or Einstein Bots.
Where: This change applies to Lightning Experience in Enterprise, Performance, Unlimited, and Developer editions.
How: The registered services are strongly typed in Apex with the registration’s schema as Apex types that reflect your registered service’s specification. This process is similar to making a callout to an external service with the Apex Http Class, but without writing boilerplate code.
SEE ALSO:
Salesforce Help: Invoke External Service Callouts Using Apex (can be outdated or unavailable during release preview)

Being able to more easily invoke external services from Apex is very interesting. It makes me wonder how good it is though because this is very similar to SOAP. One uses an API spec with the services available, their inputs and outputs, and one can generate the client code for it. Actually, that sounds just like SOAP. They’ve reinvented the wheel…

The SOAP Apex generator in Salesforce is notoriously bad except for the most basic WSDL files. I hope this new one is much better!

Customize and Filter Related Lists in the Lightning App Builder

Customize related lists directly from the Lightning App Builder instead of the page layout editor with the new Dynamic Related List – Single component. Choose the list’s fields and sort order, apply filters, and give the list a descriptive name. To see the most relevant records, set up two or more related lists with different filters on the same object. For example, on the Contact record page, create one
related list to see only the opportunities created in the last 30 days. Then, create a second related list to see all opportunities with an amount over $500,000.
Where: This change applies to Lightning Experience in Group, Essentials, Professional, Enterprise, Performance, Unlimited, and Developer editions.

This is amazing! This is one of the most requested customizations that customers ask for and now it’s standard functionality.

Develop Event-Driven Apps with Pub/Sub API (Generally Available)

Publish and subscribe to platform events and change data capture events using Pub/Sub API, a secure, highly performant, and scalable API based on gRPC. Use one of the 11 supported programming languages, including Python, Java, Go, and Node. Get peace of mind with final publishing results instead of intermediate queueing results. And with subscription flow control, fine-tune the number of event messages that you receive based on your event processing speed.
Where: This change applies to Lightning Experience and Salesforce Classic in Enterprise, Performance, Unlimited, and Developer editions.
When: This feature is available later in the Summer ’22 release.
Why: Simplify your development by using a single API to manage your events, including publishing, subscribing, and retrieving the event schema. For help with development and troubleshooting, you can call on the gRPC developer community. With Pub/Sub API, you can employ cross-cloud integration capabilities so that your event-driven apps can be integrated across Salesforce clouds.

SEE ALSO:
Pub/Sub API Documentation
gRPC Documentation

This is another great enhancement for building distributed systems using a standardized Pub/Sub API. This Salesforce Blog Post details it further.

Use Formulas as Flow Entry Conditions

A formula builder is now available in the Start element of a record-triggered flow. The builder guides you through the syntax and simplifies the process. Instead of waiting until you save a flow, you can check the formula syntax and catch errors as you work.
Where: This change applies to Lightning Experience and Salesforce Classic in Essentials, Professional, Enterprise, Performance, Unlimited, and Developer editions.
When: This functionality is available on a rolling basis starting in the Summer ’22 release.
How: Configure the Start element in a record-triggered flow. In the Set Entry Conditions section, set Condition Requirements to Formula Evaluates to True (New). Insert a resource and a function and select an operator. Click Check Syntax after you build each expression because the formula builder shows one error at a time.

This is another amazing enhancement for flow builders. Specifying when a record-triggered flow runs using a formula provides greater flexibility in the criteria available.

Add Section Headers to Flow Screens

Use section headers to create a visual hierarchy to guide your users to the most important items on a screen. Sections with headers are collapsible and always open by default to make screen flow completion more efficient.
Where: This change applies to Lightning Experience and Salesforce Classic in Essentials, Professional, Enterprise, Performance, Unlimited, and Developer editions.
How: In a Screen element, add a Section component.

Section Example

A nice enhancement that lets one put sections on their screens in Flows. This lets one group related data and actions.

Two-Column Flow Layouts are Superseded by Multicolumn Screens

Starting in Winter ’23, two-column layouts are ignored. But your data isn’t affected, and a better layout option is available. With theSection component, you can organize record fields and screen components in up to four columns directly in the screen. To prepare for this change, we recommend that you update your flow screens to use Section components.
Where: This change applies to Lightning Experience, Salesforce Classic, and all versions of the mobile app in Essentials, Professional, Enterprise, Performance, Unlimited, and Developer editions.
Why: Section components provide more control and flexibility than two-column layouts.
• Each section can have up to four columns, and you can adjust the width of each column.
• Each screen can have multiple sections, so you can combine column configurations—some sections can use two columns while
others use four columns—all on the same screen.
• You can add section headers to provide context and let users collapse and expand each section.
• As you build your flow screen, you see a live preview of the layout right in Flow Builder.

– You can apply conditional visibility to an entire section so you can avoid setting up conditional visibility for individual screen components.

– Sections are responsive, so column stack vertically to fit on mobile phones.

This allows one to create more sophisticated and user-friendly screens in a flow without requiring a developer.

What features are you most excited about?