King's Koolest Salesforce Features (Winter 20 Preview Edition)
Yue King Koo 古于璟
Salesforce Architect 25x Certified and 7x Accredited | Salesforce Credential Program Leader at Deloitte Canada | Empowering Practitioners in their Credential & Learning Journey
September is here. The day is getting shorter. The weather is getting cooler. It's a cruel reminder that summer is slowly going away. Nice to see Astro still lounging (the Salesforce tag line for this release - see the logo above). We've had a very unusually rainy summer in Calgary; it almost felt like we've never really had summer this year.
Without enough outdoor activities, that gave me quite a lot of time to go over the release notes for Winter 20. There is a lot to cover this release. Are you ready?
General Experience / Productivity
Recycle Bin - This is probably one of the biggest asks from admins for the longest time. It is finally now available in Lightning! Accessing it is very simple - you can find it right in the App Launcher. Of course, if getting to the App Launcher every time seems too clumsy, you can always add this as a tab to your Lightning App.
For some reason though, restoring reports and dashboards is not possible yet with Lightning Recycle Bin. To do that you will still need to go back to Classic.
Topic - Topic has been around in Salesforce for several years now - it's a really great way to organize your chatter conversations and / or records. For example, when preparing my Salesforce release demos, if I need to use any records for illustration purposes during the demo, I like to add Topic to those records, so I can find them later easily.
In the past, when you were in the Topic Detail Page in Lightning, you only got to see a list of chatter feed that has referenced the topic. For my demo preparation, in order to see the list of records that reference that topic, I need to switch back to Classic. Salesforce finally brings this feature to Lightning. I can now quickly see all the feed and records that have referenced my "winter20" topic while in Lightning.
Quite frankly, there is still a huge gap between Lightning and Classic in terms of Topic. For example, you still cannot turn on / off topics for objects in Lightning, and you cannot get a list of topics easily in Lightning - and therefore you can only get to the Topic Detail page by clicking a hyperlinked topic in Lightning (in Classic you go to the Chatter tab and the topic list is right there). One step at a time, I guess.
Oh, I also wish I could add topics to reports and dashboards. Oh well.
Survey Improvement - Speaking of topics, did you notice the last line in the Topic image above show that the topic is associated with a survey? Yes! Starting in Winter 20, you can add topics to surveys. And speaking of surveys, there are tons of other improvement around surveys in this release. If you do not know what a Salesforce survey is, check out Survey Basics on Trailhead, but it is exactly as you think, a questionnaire that you can send to people to gather opinions or feedback. Here is a short and simple example:
If you have ever contacted customer service before, you might have the experience of receiving a survey after your case was completed. Winter 20 makes it super easy. When you define an auto-response rule for cases, you can optionally include a survey to send back to your customer.
If that's not flexible enough, fear not! Process Builder now includes a new action "Send Survey Invitation" and that opens up all kinds of possibilities. For example, in the last release, Summer 19, Salesforce released a new function so you can send a custom notification message whenever an event happens. My example for my Summer 19 release demo was to send a notification to the opportunity owner when the opportunity exceeded $1 million. I now extend that process by sending a survey to the opportunity owner on whether he / she likes the custom notification message. Note that you can send the surveys to contacts or leads or Salesforce users (as in my example here in which I send the survey to the opportunity owner).
Email Images - You need to send a screen shot in your email from Salesforce. You know the drill: you screen cap, save the file, go to Email Composer, click Attach file, locate your file on your computer. That's easily 10 to 15 seconds of your life that you will never get back. Wouldn't it be nice if you can just paste your screen shot right into the Email Composer? You tried that in Summer 19 and you got this nasty toast message:
Try it again in Winter 20! Thank you, Salesforce :)
Sales Cloud
Account / Opportunity Team Member - You don't always work on opportunities all by yourself. Sometimes you need the brilliant minds of your coworkers. That's why in Salesforce you can create account teams and opportunity teams. You've been able to do that for awhile now, and you can indicate for each of your coworkers whether they can read / write cases, opportunities, etc. That's all good. Winter 20 makes it much better though! The objects that are used to track the relationship between your accounts and coworkers (Account Team Member), and opportunities and coworkers (Opportunity Team Member) have now been promoted to first class objects.
What that means is that you can now create custom fields, buttons, links, page layouts, compact layouts, triggers, validation rules, process builder, workflow, etc.
In my example, I have created a custom Notes field as well as a formula field so I can easily see the phone number of my coworkers. Note that when I was creating the formula field, I cannot see "User" (which is a standard field of that object) from the field list. Don't worry, just enter the definition anyway (such as User.Phone in my example), and Salesforce will accept it.
Opportunity Team Member works similarly.
Sorting Products in Opportunities / Quotes - If you have been switching back to Classic a lot because you need your quote to display products a certain way and the only way you can sort your products is in Classic, you can relax now. Salesforce finally brings the product sorting in Lightning.
The way goes for opportunities too. And if you sync between your opportunities and quotes, your product order will also be intact.
Service Cloud
Email - (I put this under Service Cloud and not Productivity because this only seems to apply when I am in the Email Composer for case feed.) You are the service agent and you just received a case. Sometimes you need to send an email to your customer for more information. Sometimes you also need to send or cc or bcc that same email to the contacts of your customer account. Prior to Winter 20, you pretty much need to know the email addresses of the people you would like to email to. Winter 20 provides the contact lookup icon in the Email Composer, and from there you can easily find either users within your organization or any of your account contacts who have the Email field populated.
Community Cloud
Flexible Layout - Your community is an important window through which your customers and prospects interact with you. Because of that, you want to make sure your content is appealing and beautifully curated. When you create a page in Community, Salesforce provides a pretty good set of blank content layouts as a starting point. Despite that, they are quite limited in the sense that you can have at most 3 columns and 1 row. You may start to feel it's not quite enough. Introduce Flexible Layout. I just added a new community page to my fictitious Recipedia community, a community where food lovers come to share recipes and talk about food. Now my community members can not just only find recipes on my community, but they also can check out some very popular Gordon Ramsay's cooking related videos. My flexible layout contains 2 sections, one with 5 columns and one with 4 columns, something that is very hard to do prior to Winter 20.
Navigation Menu - If you have seen my community before from previous demos, you'll notice that it looks like I have updated the navigation menu, because I used to have navigation menu item for my community's navigational topic and another navigation menu item that allows community members to view their open cases. No I did not actually update the navigation menu. I just created a new one. That's right! Starting in Windows 20 you can have multiple navigation menus and you can apply them to different pages as you wish!
In my example, on most pages in my community, I allow my members to view the navigational topics, their open cases as well as the new Gordon's Kitchen video page. However when they are on the video page, I either let them navigate to Gordon's official website or go back to my community's Home page.
Share Files with Customers - Speaking of open cases, I don't know about you, but recently I went to my phone provider's community because I misplaced one of my statements, and so they sent me the statement via emails. This is fine, but the interaction does not feel smooth or refined or uniform because I would expect a one-stop shop. Winter 20 makes it quite simple! Let's say I'm the service agent and it took us a long time to resolve one of my member's cases. In order to show my sincere apology, I would like to share some killer burger recipes with the member. After uploading the recipe as a Salesforce File to the case, I can now control the setting to share the file with the customer.
As soon as you toggle the Customer Access switch for the file, the file becomes immediately available to any community members that have access to the associated record. Of course it does not have to be Case, it can be the files for any standard or custom object that you can expose on your community.
Reports
Row-Level Formula - I covered in my last blog post about the BETA version of row-level formula. It has now become generally available in Winter 20. The newly created column can be used for filtering, sorting, can be used in dashboards, etc. However, note that you can only have ONE row-level formula per report. That is a huge disappointment. One can only hope Salesforce will increase this limit soon.
Field-to-Field Filter (BETA) - You have a custom object called Project which you use to keep track information about your projects such as the status, the scheduled start date, scheduled end date and actual end date. You are now asked to report on projects that are behind schedule. Being the proficient Salesforce report builder that you are, you automatically go to the Project's object definition, create a formula field to compare fields Scheduled End Date and Actual End Date, then go to the Report Builder and filter by this new field. As usual when you create the new field you need to configure field level security, detail page layout, compact page layout, etc. There are so many steps involved, and all because you cannot execute field-to-field filtering in Salesforce reports. That is until now!
When you are editing the filter in the Report Builder, Winter 20 provides a new Type picklist that lets you pick between Value and Field. This new Field option will then populate the next picklist with fields that have the same data type as the field you set as the filter field. You no longer need to create a custom field just for the purpose of reporting.
Remember that this function is in BETA, not generally available yet.
Unique Count (BETA) - Have you ever heard of a trick called "Power of One" in Salesforce reporting? That is a genius way to count unique values in reports.
To illustrate, I have created a numeric field on Account called "Power of One" and it is defaulted to the value of 1. If I run an Opportunity report with accounts, I will then be able to see how many unique count of accounts within each grouping.
Just like Filter-to-Filter feature above, this requires the creation of one custom field just for the purpose of reporting. It's time you cleaned your objects very soon! Winter 20 introduces a new "Show Unique Count" function that you can apply to pretty much every column on a report.
You can see that the five opportunities from the first grouping contains 4 unique accounts, which the Unique count correctly shows. This has the same value as a no-longer-relevant Power of One field.
Remember that this function, just like Field-to-Field filter, is also in BETA, not generally available yet. And currently this Unique function is only available when you are in the Edit mode in Report Builder, which means your report viewer cannot use it when viewing the report, the report author will have to add that to the report definition.
Einstein Analytics
Format Numbers within Charts - whenever you load data into your Einstein dataset, the format of numbers may not be what you would like. For example, whenever you load Opportunity data, the Amount field is rounded to the nearest dollar. Wouldn't it be nice if the dataset can show two decimal places? Yes you can by manipulating the XMD (which stands for eXtended MetaData) which governs the formatting of dataset fields. You already have been able to do that by going to the Fields property pane when you open up the dataset as a lens. However doing that will update the formatting of the field across all lenses and dashboards that use that field (that means it's a global change). That may be a bit overkill sometimes because in some dashboard I may be OK letting the amount be rounded to the nearest dollar.
Winter 20 allows you to override what's been defined in the XMD. From now on in each chart you can offer a different formatting. If you don't specify a different format, then the default format in the XMD will be used. The steps are identical, only that now when you change the format, you will no longer be provided this daunting warning message:
Facelift (again) - Einstein Analytics has a facelift again, and this time when you come into Analytics Studio, you will be landing on a Home page, which did not exist in Einstein Analytics before. This brand new page in Einstein Analytics will show you a list of recently viewed dashboards, any assets that you have created or been shared, and some basic information on how to learn Einstein Analytics.
I personally find it hard to navigate. When I used to go to Analytics Studio, I would be navigated to my asset page right away where I could see all my apps, dashboards, lenses and datasets in one place. Now, with the new Home page, it is not clear to me until after clicking around the page that I can actually get to the same asset page if I click the "Created By Me" link, which is quite buried in the middle of the page.
Lightning Flow
Goodbye, Desktop Flow Designer - Remember the older Flow designer, which was Flash enabled, super bulky, super slow? It's gone. In the last two releases Salesforce guaranteed that the flow you used in either builder will execute under both environments. The fact that the Desktop Flow Designer has sunset and is no longer available means that from now on, Salesforce does not have to worry about compatibility between the two tools anymore and that is significant. The removal of this restriction means that they can launch more and more improvements with the Flow Builder in the future without having to make sure it also works with the older Flow designer. THAT is very exciting!
Scheduled Flow - It's getting closer, it really is getting closer. There have been a lot of functionalities that Apex can do that Flow cannot. Scheduled job is one of them. It seems like Salesforce is trying to close that gap. You can now have a flow that is scheduled to run at a certain time. Of course since it is scheduled to run, the flow cannot contain any screen elements. You will need to indicate it is an autolaunched flow when you are creating the flow. Once you have indicated the flow is an autolaunched flow, for the first time, you can double click the Start element to set scheduling properties.
I said in the last paragraph that Salesforce is trying to close the gap between Apex and Flow. As far as scheduled flow is concerned, the path is still very long. You can see that you can set the start date and time, as well as the frequency (which can be once only, daily or weekly). You have no control over how many times the flow will run, so if the frequency is daily or weekly, the flow is really scheduled to run infinitely, which may not be want you would like.
Also, note the Start Date and Start Time is defined at the Start element itself, and the fields do not except variable expressions. What that means is that you cannot set the starting time based on your data. I still applaud this new feature, but for it to be really really useful, Salesforce still has a lot to do.
Conditional Visibility - "Set Component Visibility". Does that sound familiar? Oh yeah, that thing you see in App Builder to determine whether you want to show the lightning component or not. That's really useful, you say, because this feature significantly reduces the number of lightning pages you have to create.
It's coming to Flows!!
Haven't you had similar use cases where your business requirement is like, "if the users choose Hardware, then they will need to enter Manufacturer and Model; and if they choose Software, then they shouldn't see those fields but they will need to enter Version Number instead"? In the past you have to create Visualforce or Lightning Component to dynamically alter the page based on your user's response. Now you can do this with Flow.
=================================================================
Summary
There you have it. Winter 20 is packed with exciting new features. I hope you get to play around and use these new features in your next projects!
Again, this is just a very small subset of many great features that Winter 20 is bringing us. Make sure you check out the release notes!
18x Salesforce certified, Architect | MBA | PMP
5 年Great summary and explanations, thanks for putting this together!
Account Manager: Technology Operations @ TEKsystems | Full-Stack Technology Services
5 年Cameron Houston Some great features in here