So Summer 2021 arrived in my org this morning. Now begins the work to make sure we keep up with the innovations, users don’t face any problems on Monday, and so on. I’ll first go through the release notes to determine anything that requires my action or requires action to enable. Then I’ll go over my Top Ten list that I already made for new features I’m hoping to use. Doing this type of work is really needed to keep technical debt from strangling your organization over time. But hopefully this blog will help Power of Ten licence grant holders save time and get through it faster. We may be small but we are mighty together!
If you haven’t been to a release note lately, they are now HTML, searchable, and really easy to zero in on what you need. No more 200+ page PDFs. Release notes are here. You really do need to browse through this document every release! https://help.salesforce.com/articleView?id=release-notes.salesforce_release_notes.htm&type=5&release=232
Configuration Required and Pilots to Consider
My first stop is this section. It took me about an hour to go down the entire page and determine which products that I have had updates that users may see right away, things that I may need to configure, and pilots that I might want to join. The advice in the introduction is good.
Any item I can’t configure today will need to go onto our technical debt list to be retired at the right time. Here we go!
In the general section, it stated that I needed to do something on several items but I found it’s a false alarm. It also stated I could enable access to the My Account tab and manage new purchases directly within Salesforce. I tried to follow those directions but my org does not have a Manage Billing system permission. The My Account app is available but the only tab in it displays as an error. This saddens me as I was looking forward to the possibility of small organizations being able to bypass our AEs for quick license purchases. Nothing personal, but I get terrible response time and more often than not terrible service. Self-service may not be great either, but I know what to expect then. So this saddens me. I hope it clears up over time. Let me know if this feature works for you. It will be great when it does!
In the mobile section, there was one item I needed to enable for Mobile Android home. Here is the new custom attribute required:
The guide says I have to take action to set up Einstein Mobile search, now GA. However, the setup required is just the normal setup for desktop so I think there is nothing to do since we’ve kept up with past releases.
Better form factor responsiveness on tablets is listed as requiring admin action, but actually it belongs in the pilot column. This isn’t a pilot I want to participate in since tablet use isn’t high for us at this time. We plan on tablets in the fall so hopefully this will be Beta or GA by then or we can revisit and request to join the pilot.
Managing Accounts on campaigns is now GA. I still haven’t decided if this has much applicability for us and do not yet understand how the various features work with NPSP Household Accounts. So I’m still not ready to enable, but I suspect we will want to do so soon separately. I’m adding this to our technical debt list since we definitely make lists of accounts and it will at least be useful for that. But we need to explore in the sandbox how it works with accounts with no contacts (most org accounts for us), accounts with contacts attached (what NPSP households look like). The related lists on the campaign are added function but there are also new related lists on the account and contact to explore and understand. This also impacts reports.
Sending list emails with your own external accounts looks attractive to me but it’s a Pilot. I don’t think I will request access right now. We’ve got a lot going on with marketing automation and probably can’t afford the time. I do look forward to when this becomes beta or GA.
So that’s it! As releases go, my read is that there isn’t a ton to do today. That’s good.
Features Available Now to Help
Now, on to features that may be available immediately to make our work better. Here is my top ten list from a couple of months ago. Let’s see how it works out today.
- Reporting: Inline editing of fields in reports (Beta)! The first step in the release notes is to contact Salesforce Support to enable this. So I created a case to do that. (Still not super easy to request these… lots of useless data requested in the form just to turn on a feature that they have specifically told us we need to ask for, but hey. At least it wasn’t a phone call.) We’ll see how long it takes and then see the benefit afterwards. Once turned on, I needed to give users this permission. I did that in our SYM Base user profile which is assigned to all people. If it’s a satisfactory experience but not really OK for all users, I could have put it in our SYM Admin profile instead.
Super exciting to bring the power of in-line editing of list views to reports that span more than one related object! I believe it supports only text, number, currency and checkboxes now. No tasks, picklists, compound fields.
- Dashboards: Download dashboard as PNG. Printing has been very poor since Lightning came down on Dashboards. Making a PDF of a Dashboard is one of the biggest reasons I still switch to classic. Now you can download a PNG of the entire dashboard. The Download option is there on the pulldown menu in the upper left.
I tested with a dashboard that has scrolling. I got the entire dashboard in a .PNG file. Not really the ideal format but it’s a good start. The file size is 0.5M so when I zoom in resolution isn’t awesome. This will definitely save some time in future since we include these things in board packets or other external communications. You can still click in the dashboard on any single element and get a much nicer graph (nice than on the report IMO) and download it using an icon provided. But that means getting lots of images which you then need to assemble into a doc, an extra step that doesn’t always result in the ideal presentation, either. This new feature definitely offers an option I appreciate.
Here is the zoomed in resolution of the file:
This is the graphic they are capable of when you click individually on the little zoom out icon on each component by contrast. And notice that there is a download icon on those zoomed out images as well.
- List Views: Custom actions returns to the recent list. After a false start in spring. Fool us once… well… you know. This time, my custom buttons now finally appear on Recently Viewed items! Yay! This will help save so much time.
Salesforce also delivered the mass actions in Split View lists as planned! Both are awesome productivity boosters.
- Record Page Design: Quick actions that invoke Lightning Web Components (LWC), popping open a window or running headless. LWC are available from many sources and now you can leverage them through quick actions. This will quickly be huge IMO. I have not LWC Quick Action components available but it’s ready. I’ll try to find an example soon. Because LWC is pretty easily designed and edited in an ORG without tons of dev tools required, I suspect it will become a friend of more advanced small but mighty admins. I am hoping future sprints might add functionality to NPSP or other tools this way. We’ll see, but I predict this will be huge.
- Security: Permission expiration. Need to open up permissions, permission sets, or permission set groups for one staff member or a team for two weeks or 90 days? Simplify your security audit work with this Beta. You must enable it first here:
Then when you assign a permission set group (my favorite… we have three so far and it’s by far the best way to have a consistent set of permissions), you get to make it temporary or expire. Here I added myself to our data clerk permission set group (redundant) with a week expiration date. Might be nice to get a notification on expiry, Salesforce! It’s a brand new guided setup for selecting the contacts and making the assignment. The last page isn’t very useful and I’m sure will be improved over time, but it’s there and exciting to allow transferring permissions to cover vacations, leaves, and job transitions.
Personally, I think one of the best things about this is that it will create a history of temporary assignments that can be audited!
The same capability exists for permission groups but you cannot access it from the UI. It’s an API feature only. Personally I don’t mind because I don’t like working with these very much. There are too many of them and it’s so easy to make a mistake. Instead, I created permission sets to segment all the various permissions but include them in a group for assignment, even if it’s a group of one. So all the permission sets that have been defined in the last couple of years are not actually assigned to anyone but they are included in a permission set group that is assigned. But that’s just me and I have tons of legacy assignments in individual permission sets from before groups existed. Still, no access to permission sets expiration from the UI for now.
As far as I can tell, this feature is not available on profiles and individual permission assignments. I highly recommend moving away from these as quickly as possible, anyway. I translate all instructions to add permissions to profiles into permission sets and recommend you do as well. I don’t think there will be any future support on profile features and I believe profiles will have an end of life migration tool to permission sets one day.
- Flow: Auto-layout gets stronger and more capable: Scheduled paths come to auto layout. And so did on-canvas debugging. There is *almost* no reason to ever use manual layout again! So much time-saved. So much simplicity provided for the beginner or occasional user. Try it out today!
Here is the beginning of a drip-campaign we’re building for new newsletter subscribers. It will watch for a new master campaign membership and send a welcome email. If the email is never opened, it will resend a few days later. After the first open, we send a second and third email. All with autolayout canvas!
And here is on-cavas debug using auto-layout! You can see the path executed on-canvas with auto-layout! Finally!!!! Never use manual layout again (except for some very special and temporary reasons). Is there any reason you can think of? Share with me!
- Flow: Making input screens for editing records gets much less tedious! Going from concept to running faster is the name of the game with flow these days. With this Beta feature, you tell flow that a screen is about a certain record and you can drag those fields onto the page the same as you might make a report layout! The values are stored right in the record you specific. If you want to save, just throw down an update and you’re done. If you want to make more use of the data, you can do decisions and assignments using the record you specified.
That’s the good news. The bad news is that you can’t use Lookups Fields, currency fields, and compound fields like Name, shipping or mailing address. This knocks out almost all the standard objects from the most obvious applications of data modification and update like Contact (no name, address field available), Account (no address), Opportunity (no amount) or Cases (no lookups). Leads make work great. You can mix and match, however, with normal input fields. Can you get conditional visibility on all of them to drive dynamic screens?
I think this would make new data entry capture very easy for some most frequent operations like program service delivery. Throw down a lookup to a contact and a volunteer job and capture the remaining Volunteer hours information. Same for a PMM service delivery object.
However, I expect the limitations will go away as they move from Beta to GA.
Side Note: If you do this a lot, there is still a better way IMO, especially if you don’t need dynamic visibility of fields. Use RecordTable from unofficialSF.com to build even faster with more features including view and edit. If you haven’t tried it lately, I would again. The custom property editors make this truly a pleasure and really fast. And if you like to work with multiple records, DataTable is the next logical step and a better way to do Dynamic Record selection in flows. I trust both of these and recommend them! Go flow!
- Flow: Record triggered flows get much simpler. Ischanged has a long history of not being friendly, especially in declarative automation. But now it’s available for record-triggered flows and promises to work as solidly as a workflow rule! Here’s a flow that only runs if a contact multi-picklist value is changed. (Yes… I know… but a simple MPL is the right choice.)
And once you are inside your flow, you can also access $Record_Prior and $Record values in decisions and assignments. This means I can now build a simple and efficient subscription and unsubscription handler in flow. I could not do that before easily.
Record triggered flow are now easier to debug, too, with on-screen debugging just the same as any other flow. When you debug a record trigger flow, you get a new prompt to browse the record to be run and you decide if the record was just created or edited. Record triggered flow runs in rollback mode so you don’t change the database. You can skip the conditions as I did in this case (since the record isn’t being changed.) They even got rid of the tab pollution that occurred as you debugged flows by opening in the same edit window; you get a nice edit flow button to return to editing as well. Tell me this isn’t miles ahead of Process Builder or Workflow in terms of real testing and debugging! It’s more efficient than Process Builder, too. And if you can use before save flow, it’s about 10% less efficient than the workflow rule.
IMO it’s time to stop building anything except flow for new work! You will notice that I didn’t say you should start converting old work. But if you need to build anything substantial, it is an opportunity to migrate over old PB or WF, IMO to avoid having multiple automation tools going on in the same transaction to debug and maintain. That’s just confusing.
And with a component found on unofficialSF you can even call a subflow from a record triggered flow to better implement D.R.Y (don’t repeat yourself) strategies. And now before-save flows and after-save flows can use the same method to update records without sacrificing the speed of before-save. So these super powerful categories of flows just got a lot simpler to make and maintain!
- Flow: Responsive multi column screen layouts now GA. This promises much for sites and communities! With all the new excitement around Experience Cloud, this is a sure winning feature to make better use of desktop real-estate and stop scrolling but still offer good readability on mobile. Everyone wants this these days! And hopefully it will use tablet space well, too although I didn’t test this.
And here it is on a phone…
- Flow: finally you can set the default on choices. Flow just keeps getting more intuitive to capture the UX you want. Now we can set defaults on any type of choice. Or even change how you present the choices with just the click of a setup switch (picklist, radio button, checkbox group). I have used some pretty terrible hacks over the years to set the default values and edit pre-existing values of picklist values. Now it’s straightforward for single picklist values. Here is a single picklist working great with a default value for gender without any hacks or weirdness. And you can easily change this to a radio button list instead of a drop-down box.
I regret to say that I was unable to make default values for multi-picklist work if there are indeed multiple selections. So the hack still applies for them. Define the current value which might be something like a;b;c as the first choice with it’s label equal to the current value in text. It seems weird but its words. Then add the other choices. Define your current value as the default. It will then be the top choice and pre-checked. So you end up with a choice list of a;b;c or a or b or c and a;b;c will be selected. To change it to a;c you would uncheck a;b;c and then check both a and b. Not pretty but most people are able to figure out how to make edits and you don’t lose data. Sorry! Hopefully they will get this right one of these days.
I don’t normally include Pilots in my Top Ten List so here are two bonuses: I hope I get accepted into the pilots. You have to get your AE to nominate you for each pilot and sign a little extra paperwork:
- Record Page Design: Dynamic Action bar for Lightning record pages (Pilot). Finally! Add a group of custom and standard buttons anywhere on the record page! You’ll have to request this pilot feature. I submitted a case to be added but I suspect they will refer me to my AE. That usually takes much longer than I like. We’ll see!
- Send List Mail through Gmail and Outlook. This would be wonderful and consistent. I’m not going to participate in this pilot but I look forward to a Beta or GA.
All of these features can help the small but mighty organization better leverage Salesforce, faster, simpler, and with lower total cost of ownership. I’ll plan to be back with a review of the features and how to set up when they roll out!