Admin Preview – Release Readiness LIVE, Spring '20 | Salesforce

Salesforce admins get permission set groups, enhanced external services with OpenAPI support, and Lightning Flow improvements including before-save triggers and cross-object traversal. The Spring '20 release also adds task queues, dark mode, deep clone for opportunities, and a redesigned mobile app.
Chapters
Foreign.
Good afternoon, Good evening. Depending on where you are joining us from today. Welcome to Salesforce Release Readiness Live, the admin preview. I'm Rebecca Saar. I'm on the Admin relations team, a team dedicated to your success as an awesome admin and we're doing that today by breaking down the spring 20 release, ensuring some of the greatest hits for admins. I have an amazing lineup of guests here that are going to share some of these great new features for you. We'll be covering a lot of stuff. I know that's why we have live Q and A. It's one of the best parts of release writing us live. So definitely make sure you're taking notes and taking note of your questions because we will get to them to tell you a little bit more about how you can engage with us during the broadcast. Let's kick it to Rachel Mincarelli.
Thanks Rebecca. Good morning. Awesome admins. Thank you everyone so much for joining us on here today. I'm very excited to be online with you again to take your questions during this broadcast. As usual, we'll be live online in two locations. We'll be on Twitter, we are alesforceadminsnoi and we'll also be on the trailblazer community in the release readiness group. On both of those places, if you want me to see your questions or your reactions, use the hashtag salesforcelive to be sure that I'll see them. So what you'll want to do is on the trailblazer community that's where you're going to ask those denser, more in depth questions. And on Twitter is where you're going to sound off with gifs and fun emojis and screenshots and those lighter, faster questions. I'll be looking for all of them. I will be curating them so that when we get to our Q and A segments we we can ask our lovely panel live. And if we don't get to you live on air, we'll make sure someone from the panel jumps into Twitter or the Trailblazer community later to get your question answered. Back to you, Rebecca.
Thank you, Rachel. All right, so before we get started, we do have our trusty forward looking statement reminding you to please make any purchasing decisions based on currently available features and functionality. Shouldn't be too much of an issue today since we are talking about the current release coming out, but we do have some roadmap slides so keep that in mind. So what are we talking about today? We're going to be covering four main topics Starting with permissions and permission set groups, then moving on to external services and some critical updates there. Then we're going to be talking about Lightning Flow and what's coming out for that. And lastly we'll be talking about key productivity features coming to Lightning. All right, so let's talk about who's going to share all this amazing content with you. I'm super excited to introduce you to my panel of experts and evangelists right here. Let's have you all introduce yourselves. Give me your name, what you work on at Salesforce, and how about what you're excited about for 2020?
Sure. Hi everyone, my name is Sharon Liao. This is actually my first release preview live, so I'm very excited to be here. My product area in Salesforce focuses on providing services and tool for admins to manage user access efficiently in your. I guess for 2020 I'm going to start to learn something new. I want to pick up snowboarding because I am currently a ski fan but I want to try snowboarding.
Very cool.
So I'm Liz Skates. I'm with the Platform Shared Services team and today I will be covering external services this year. I recently reached Ranger status so I'm looking forward to potentially reaching double Ranger status. Wow.
Way to go. Hey everybody, I'm Shannon and I am here to tell you what's new and great with Lightning float for spring 20 something that I am looking forward to this. Well, actually just next week I'm flying up to Canada to my hometown to see a band that I haven't seen in like 20 years. So I'm pretty excited about that.
What's the name of the band?
They're called Junior Gone Wild. Probably most of you have never heard of them, but I'm excited and that's what counts.
Thanks for having me. My name is Leanne Reimel. I'm here to talk about some of the great features that we have coming for admins for end users and customizations. In the spirit of learning something new this new year, I'm actually planning to learn to crochet. So that's a new thing for me. So I'm excited to add some more skills to my toolbox I can take.
Very cool.
Perfect.
I knew I'd get some help if I shared it here.
Great. Thank you so much for introducing yourselves, everyone. Why don't we just jump into the content and start with Sharon.
Awesome.
So as admins, we all are familiar with profile and permsets here. Today I'm going to introduce you guys to brand new tools Permission set group we have know from our history that profiles are sort of restrictive, perm sets are flexible. But in recent releases we start to hear from admins that perm set can get very granular and then there's no intermediate states where I know for a group of user that will require a combination of perm sets that I need to assign them one to one and then there's no way I can assign all of those perms sets at once. So here's why we introduced permission set group to resolve that painful process for our admin. So with this grouping functionalities now you can combine a list of permission set to a single group and then assign that to our user easily. So if you think about permission set as keys that you will allocate it to a user to unlock functionalities. Now permission set group is like you're assigning those keys to a key rings and then you can easily give them to your end user. Those key rings are supposed to represent their user's job function so that you can easily config and maintain them. A better part about this permission set group is that it creates a new way that you can collaborate with your managed package you purchase from your partner today. In some cases there are predefined features and the managed perm set that come with your package that maybe you don't want to expose it to some of your user or maybe your. Org is not ready to adopt it yet. What admins today will do is usually clone a local copy of those managed perm set and then they have to manually maintain updating them because the second you clone it local then you lose the connection to your package through the package push upgrades. Well, with this grouping feature now we allow you to add the manage parset to a group that you can also leverage the muting feature that come with the group to take out the permissions that you don't want from the group without editing the original permission set. So let me use an example to help you walk through and understand how this can apply to your work. So I have user profile, permsite group and permsa. How do I start to use them? Here's my user Astro. Their job role in their company is a customer support tier one representative. So in aztros daily life they will need access to lightning schedules and then they manage case. They manage cases and then they also will use this feedback app to send customer survey which is from the package. So what I can do is to define those perm set access needs in each of those perm set and then grant them based on those particular tasks. Then I can just take those task based perm sets and then put them into a permission set group that perfectly represent what ASTRO needs for their job role as a customer success support tier one representative. Then I will just simply assign that perm set group to astro. Well, those permissions that I defined are pretty particular task based perm sets that maybe my other user will need in their job role. For example my other user Abby, she is a corporate salesperson and then she also use Lightning Scheduler. But in addition to that her job functions requires her to interact with the lead objects. So what I can do is grab those perm set 1 and 4 and then easily form into a perm set group that represent what the access needs as a corporate salesperson and then assign them. So in this way you will see actually I will keep my profile pretty streamlined. There is no access control. I'm interacting with my profile. This is because profile has these one to one restrictions to a user. Every user can only have one profile. So I can allow my permission, my access control to be taken care by permset and permset group and then keep only those things that require this one to one settings with my user's profile. So in this way things are pretty streamlined and it will make your admin life easier. Now the best part of it is when my IT team tried to introduce a new field for example, that's a new field and an object that's going to be used by the Lightning Scheduler. What I need to do is just to update that one perm set for that access and the platform will take care of the propagation and taking those perms and then ensure all those groups that include those perm set will have it. So yes, this is the way that we're recommending the best practices for you to control access for users in your org. So you will see those three pillars. There are one on one settings that we recommend remains on your profile. But also now you got the flexibility of mix and match and ranges of those task based perm sets, put them into custom permission set group or even add those to a manage the permission set group that come from the package. Then in the future we're looking to also build something called standard perm set group. So this is something that we might look into for the future releases. Well think about this as standard profiles you guys use today. That comes out of the box. Those are the typical job functions of job roles that Salesforce defined recommended that you can leverage to get your user Started Now I know I've been talking a lot. You guys might like to see what does it look like in your org. So let me jump into demo and then show So I am in my demo org now I am on the homepage of my setup. Once your org is upgraded to spring 20 you will start to see a new node called Permission set group under user. I'm going to demo how to create a permission set group today using my previous examples of customer support.
Tier one.
Then when I save it it will create a permission set group records in the system. Now the next thing I need to do is to add my permission set into the group so I can dive into the permission set page. Now for saving the time, I pre configured two perm sets to be added for the demo purpose. One is the case management as you can see on the screen that contains some permission relevant to the center. And the second one is a permission set called knowledge management that contains permissions that are relevant to the knowledge management section. Now let me go back and add those two perm sets to the group. I'll just go select them and add. It's running. It's my demo org so let's give it a lot of time. Okay, so now when I go back to my permission set group detail, here's the page you can dive in to see what perms are actually included in this group by inherited from those perm sets components. So you can see on this page in my group I have all the perms from the call center as well as the one that for the knowledge management. So this is how you will interact with permset group in your org. Let me switch back. So a few releases ago we launched an app called Profile Permission Helper. So this is a Salesforce Lab managed package that you can download free from the app Exchange that's available today with the permission set group. Ga we're actually making an enhancement to this app. We're upgrading the permission analyzer components to support you to analyze permission set group as well. So there's two highlights about this upgrade. One is that you can view all those permissions from different perm set in the group in a single page with easier navigation and intuitive flow. The second thing is we have a very powerful hover over functionality that will allows you to see what an exact perm, where does it come in from, from which perm set and then you can also switch to analyze mode by user. So I'm just going to quickly show how does that look like in my demo Org is now I Have this app installed already and then this is existing functionality available before spring 20. Permission Analyzer it has two modes analyzed by user Analyzed by permission. Now we're adding to a 3 mode which is analyzed by permission set group. By selecting it it will give me a list of permission set group available in my org. Now let me dive into this detail one show details. Well you can see in a single very nice screen it shows me a combined permissions that are aggregated from all the permset components. From that then here I have six perms set components. Then let me go back to the combined permissions and then you will start to see a hover over functionality which tells me access to view data and assessment is actually coming from sent customer survey palm sets. So maybe if you want to remove it or change it, you know where to start. Now on the assigned user page this is where we make the magic to switch back to analyze by user mode is by clicking the user detail it will switch to analyze by user and then you will start to see a combined list of what permission this user has been entitled to. That includes their profile, their perm sets and their permission set group. And then we have the similar hover over to tell you where's the origin of those permissions. So I think that's all about this new functions that we're going to launching in spring 20. I know I talk very fast. There's a lot of content. I did prepare some materials for you guys to review after this release live we have a blog post that talks about how the permission set group is going to help drive our next generation of best practices user management. And also there's a previous webinar I hosted talked more deep dive about the best practices and of course there's the trailhead modules and then stay tuned we're going to have a brand new module about permission set group coming soon. Back to you Rebecca.
Awesome. Thank you Sharon. This sounds great. Making permission set management so much easier and more seamless for admins. Awesome stuff. I guess we'll keep moving. Let's talk to Liz.
Great. So I have a couple of things to share with you today. First, there's some critical updates related to custom metadata types as well as custom settings. Then I want to share some enhancements we have with external services in spring 20. So with critical updates, when you think about custom metadata types and custom settings when they were first released, anyone who had API access could access those metadata types and custom settings. And that was by design, but we're trying to introduce some more default behaviors that are a little bit more restrictive. And so Starting in spring 20, users with the Customize application user permission will have the ability to read and access custom metadata types and custom settings. But if you determine that other users also need to access those settings and types, then you would need to explicitly grant them those permissions. So how can you prepare for these critical updates that are coming? So, three major steps. First, identify whether your Org is actually using custom metadata types and custom settings. Maybe you would look at custom solutions that you're using, such as VisualForce pages, maybe some lightning components, or if you've installed any packages from the app Exchange that use custom metadata types or custom settings. Then once you've decided that yes, you're affected, then look at which users need that access and then you can grant the right permissions to them to either the custom metadata types and or the custom settings. Then finally, last but not least, test those settings in your sandbox environment before you enable it in production. If you want to learn more about these critical updates and we have several resources available to you, there's a blog available that talks specifically about these critical updates. There's also the Release notes. Then also in the Trailblazer community, there's actually a chatter group called Secure Custom Settings and Types. So if you have any questions, you can always post in that chatter group. So moving on to external services though, which I'm really excited about, a lot of you might not be familiar with external services, so this is the low code way for you to access external business processes. So if you think traditionally, if your Salesforce instance needed to integrate with either your proprietary APIs or some other public APIs such as AWS or Slack or even other Salesforce APIs, you might usually default to having a team of developers write some code for that integration and then that team would maintain that integration going forward. Well, we're trying to empower the admins to do more of that integration more easily. So that's where external services comes in. So all you would need is to find the open API specification for the APIs that you want to integrate with, register that as an external service with Salesforce, and then now that's available as an action in flow. Now with spring 20, we have what's called enhanced external services, which is now generally available. So the next time you log in under setup and external services, you'll see that enhanced external services has been default enabled for your. Org. So the next question you might have is what are these enhancements in spring 20? Well, in general, what that just means is we support more complex API schemas that you can now integrate with. In particular. So now if the schema requires HTTP header parameters or has nested parameters, we now support that. And then we have better support now for arrays and packaging as well. But I think this will make more sense in a demo. So let's switch over to the demo. So here I am in my Dreamhouse community, we're looking at a property record here. And in my Salesforce instance, what I really want is for end users who are looking at a property to be able to communicate with brokers and indicate interest in viewing a property. So let's say we want the end users to be able to click this I'm interested button and for that button to actually send a notification in Slack to the broker so that the broker knows to arrange a viewing. So how would we set that up? So let's go into setup here. There's three major steps to setting that integration up. Under named credentials is where you would tell Salesforce what API you want to integrate with and how to authenticate against it. So here we're saying we're going to the Slack API and this is how we would authenticate to Slack. Next step, we would go to external services in setup. And then here I have it set up already. But you want to register the external service that will communicate with Slack. I'll just show you here. What we did was we said, okay, well, here's my external service for Slack. It will use that name credential that we had defined. This is the open API specification that we are going to use so that Salesforce knows how to make a call to Slack. And here I chose a subset so that it's just the actions that I want to use to call Slack. And you'll see actually here it actually lists all the actions that we have available that I registered with that specification. So the one action that I registered is this ability to post a message to Slack and I can send some input parameters. So when I call Slack, I can actually specify what channel I want to post the message to and maybe what the text of the message should be that I want to post. Then of course, Slack is going to send me a response after I send that message. Then the third step is now I can go to flow, and I've registered that external service. I can actually reference that external service in a flow. So here I have the flow defined and I'm capturing what property the end user was interested in. Some more details about the user that was interested in that property. Then in this action, which I'm using to call Slack, this is where I'm setting that channel. What channel in Slack do I want to post a message to? Then using the end user's name, I want to put that in the text and say, okay, this is the end user that's interested in this property with this address. Then of course I want to listen to see what Slack says in response for the output. Then further on in my flow, I'm deciding, okay, depending on what Slack says in response, I'll show a different screen message to the end user. So those are the three steps I took to configure that integration with external services. Now let's see what it looks like in action. So here we're seeing the end user browsing through property records. She clicks on a particular property, looks at it in more detail, looks at some pictures, decides that she's interested. So she clicks the I'm interested button and then gets a notification back that the broker was notified. And then if you look in Slack for the broker, there is a notification showing that was sent to Slack. So that's all it took to set up that integration between Salesforce and Slack. So you might be wondering, well, what else can we integrate with? So let's go back to the roadmap in the slides. We know that there's probably a lot more external services that you'd want to integrate with and so we're planning to let you easily integrate with more external services. And so you'll see in the summer 20 roadmap we're planning to increase the size limit in terms of the types of schemas that you can register. And we want to also improve the usability so that you get more validation of what's what we do support within the schemas then long term. We've actually heard a lot of requests for external services to be available outside of Flows as well, specifically in Apex. So that's something we're considering in the long term as well. Back to you, Rebecca.
That's super exciting, Liz. Just another example of how we're giving admins more power to do things declaratively.
I really love that.
So I think we're going to have a little break and do some Q and A now that we've had seen a lot of new features and content. So I'm going to pass it over to Rachel to see if we have some questions. Come in.
Amazing, amazing stuff you guys. We are seeing some excitement, some gifs, some emojis, all the good stuff on social media. Right now and we do have a couple questions queued up, so let's get right to those. For Sharon, I have a question that says can permission set groups be managed by delegated admins?
So as of spring 20 that feature is not available yet, but it's definitely in our roadmap that we're looking to build in our future releases. But our dear admins might have to wait for a little bit longer because right now at the moment we're trying to get permission set group really stable the services that you guys can use. But on the long run, enabling a delegation for managing through perms through permsite Group is definitely what we're going to try to build in the future.
Okay, thanks Sharon. I'm going to go over to Liz. I have a question for you that says can external services be called from outside of flows?
That's a great question. We've had a lot of requests for external services to be accessed outside of flows. Not yet. Today it is in the roadmap. What we're thinking of is being able to call them from Apex in the long run.
Okay, fantastic. Another one for you while we are talking about it. What about legacy external services? Are they automatically upgraded to be enhanced external services?
So a great question as well. So legacy external services are the external services that you registered before spring 20. So they only support what was registered. So if you want them to take advantage of the nested parameters or the HTTP headers, you will have to re register them with enhanced external services enabled and then call those re registered external services in flow.
Okay, awesome. Thank you. I'm going to jump back over to Sharon now. We have a question from a user on Twitter, Randy Thompson and they're asking will perm groups be available via Process Builder and or flow?
So I believe so the permission assignments that you can trigger today within flow. So the actual assignments, although today we demoed about how to create a group and then how you add perm step to the group, but the actual assignment of the entitlement within that group in the back end, I'm talking a little bit about the technical side of it is that the group in the back end it will create a permission set set records that contains all the entitlements for that group and then the actual assignment to the user was done through that record assignment through the permission set object. So that assignment today I believe can be triggered by flow. It's just that you might need to understand a little bit of the data structures and table relations in the backend in order to Actually build a flow and trigger from the process builder. Okay, yeah, that's great.
That's a fantastic answer. Thank you so much. I have one more for you, Sharon, if you're up for it.
Sure.
So we've seen some communication here on both the trailblazer community and Twitter about the mute feature. So does the muting feature only mute permissions that are granted from the assigned permset group, or does it mute the permission regardless of. Of where or how it's assigned to the user?
That's a great question. Actually, we got that one asked a lot when we were piloting and beta in the future. So, muting is a functionality that works only within the groups. It's a feature that comes with the group, so it only takes out permission from that group. But if you have, for example, access to a field that was granted through a different permission set group, or it's granted through the user's profile, the user will still get access to it. So, in summary, muting only works in the context of that particular group.
We do have time for some more.
Questions, if there are any.
Well, actually, I think people are still maybe waking up, getting on board with us a little bit, so.
Hey, interesting.
You all know we're on Twitter. You all know we're on the Trailblazer community. If you need a little refresher, use SalesforceLive on either of those platforms or both. I'm in there, I'll talk to you. I'll take your questions down, and we'll have another Q and A segment coming up here where once everybody's excited and in there and ready to go, I'm sure you'll have a lot more questions and we can ask anybody on the panel. So let me know what you got. I'll be standing by.
Sounds great. We'll keep going then. Let's move on to Shannon.
All right. Hey, phone addicts. I got to tell you, Liz, I am super excited about the external services thing because I can see this as being the answer to the outbound messages that were available in workflow rules that we've never put into the other tools. I think this is going to be a really great, even more productive way of doing that. Thank you. I'm super excited. So, unsurprisingly, we have a lot of flow stuff. Again, this release, a couple of big ones, record triggers. I'm going to talk about that in a minute. Being able to run flows as a system user or in system mode for when you have those really trusted processes. The other big one that I know, a lot of the nonprofit folk are going to be extremely excited about is that opportunity. Contact roles are now available in Process Builder. And we have a few more things, the quality of life things that we've been adding every release. And I'm just going to go directly to the demo and talk about those. So you've probably got in your flow somewhere or processes a situation in which you have a record, maybe it's a case, and you create projects from the case or work orders from the case. An opportunity with projects where you have a new record that you're creating and you're copying a whole bunch of data over from the old record to the new record. So my example here today is we have an employee onboarding process here and we have applicants, and when the applicants accept a job offer, we want to turn them into actual employee records. We still want to keep that old information that's on the applicant record, but we want to add new information. So you probably have, if you have this kind of a situation, something similar to this where you have a Get Records node on your flow. And when you go into the Get Records element on your flow, you probably have something like this where you're selecting about 40 or 50 or 10 fields. Selecting them one at a time, as you know, is kind of time consuming. Well, what I'm happy to tell you about today is something called automatic field detection. So this is the same flow. I added a couple of things just out of the box. There's a record ID variable here because we're going to call it from a quick action. There's a screen which I'll add in a minute, but we're going to go ahead and add this Get Records node onto the page. And we're going to call this Get Applicant Record. And we're going to. Actually, I'm going to say Shannon made this. Going to choose applicants. All right. And of course, we're going to say that we're going to do this when the ID field is equal to the record ID variable. So we can get it from a quick action. And as we move down from there, wow, this thing got a lot shorter. We have the option to choose only the first record. We're going to choose all records. And we now have an option that says, how do you want to store that record data? Do you want Salesforce to automatically store all the fields? Do you want to choose the fields and let Salesforce do the rest? Remember, last release, we did the output variable handling so that you don't necessarily have to create an output field. Then the last one is, if you really like total control over your flow, you can choose fields and assign variables. In the advanced mode, I'm just going to go ahead and store all the fields and when I click done, I can now access all these fields from this particular get record. So we're going to go ahead and connect that, and I'm going to connect that one to the screen. So now what we're going to do is we're going to create our employee record. So this is createmployee. And we're going to create one record and we're going to use separate resources and literal values and we're going to create an employee record. There we go. So now when we're setting the field values for the employee, what I can do is I can set. I'm just going to set a couple of fields here because we need a few of them. So I'm going to set the name and we want it to be the name that came from the applicant record. So what I can do here is if I look for applicants, whoops, where's my applicant? I swear, every time. Get records. Get applicant record. Create record. That's how you know it's a live demo, folks. Create record. Employee. Employee record. All right, and we are going to set our name field to be. Well, okay, for some reason my field's not there. So what I'm going to do is super quickly go back. Sorry, gang. I'm going to super quickly go back and open the version that is already active.
That's not it.
You do this 14 times and then you walk into the demo and suddenly it's not working anymore. What I'm going to do here is I'm just going to set three values and let me just clear this out for a second. We're going to set the department to be. Now, in this particular situation, we have a hiring manager, Desi Shimmick, and we want to set the employee's department to be the same as the manager. So this is feature number two that I'm super excited about, which is that we can go to the applicant from the get applicant record and we can go to the manager. Oops. We can go to the manager. And here we see the hiring manager. We can actually navigate up a level, do a cross object reference to the hiring manager and get the department off of the hiring manager record. So we can now traverse to different records and pull that information back into the record. For the name. We're going to set it to the applicant's name and for the start date, I'm just going to set the start to here and that is going to be StartDatec. So we're going to go ahead and click Done. And before I go back over and show you how that works, I got one more flow I want to create and that is the other new feature that I want to talk to you today, which is the record change triggers. So we're going to go ahead and create an auto launch flow. You might Remember in winter 20 we added the ability to create scheduled flows. And so underneath the start node here we have the secret menu, which I'm going to make a little bit more visible in another release. Hold that thought. We have a new option for newer updated records where the flow makes fast field updates. What this is doing is, if you're familiar with Apex at all, we have the concept of the before trigger and an after trigger. What happens is the before trigger happens after the records change, but before the data is actually committed to the database. Because we're doing it as a before trigger. This is going to happen before workflow rules, before anything else. And so it really helps save those recursion issues that sometimes happen. Because you have a workflow rule, it changes something and then we go off and check a bunch of stuff again and it changes something else. Because this all happens long before those things happen. It's up to 10 times faster depending on what kinds of field updates you're doing. Now we're going to go ahead and save this whenever a record is created or updated. And we're going to go with employee. And what we want to do here is whenever the employee record is updated, we want to set the date that the i9 verification, which here in the states is where they check and make sure that you're legal to work in the States. We want to make sure that that's done within a week of the start date. Now, you'll notice when we selected the record trigger here, that our palette over here on the left hand side decreased in size considerably. Because this actually only supports a couple of things, because the before trigger actually happens before things like the ID are set. If you're creating a new record, we only actually support assignments and you can assign values to the record and they automatically get saved at the end. We support decisions and we support get records and loops in case you need to pull in information from another thing. So we're going to go ahead and we're going to say get a decision and see if this is a new employee. And I'm going to Say Shannon made this. No, I'm not. Our new outcome is going to be, yes, it's a new employee. Now, we don't yet have formulas for is new or prior value or is changed. But what you can do if you want to check for new is because it is a brand new record and ID is not actually set until a little later in the process, what you can do is you can check and see if record ID is equal to null. Make that true. And that essentially is the same thing as doing an is new. We will be adding all those other things later, but for now, this is a good way to work around that. So I'm going to say if it's a new employee, I want to set the set I9 deadline. We're going to say dollar record. When we have a trigger like this in our flow and we have a record context, for example, we know this is going to change on the employee record. We automatically have this context record, which is dollar record, which is the record that you created in this case employee. So we'll go dollar sign record neededbydate is gonna equal and we're gonna go ahead and create a formula here that is going to be needed by date. And it's a date and it is going to be when the record start date. Oops plus seven. All right, so I'm going to go ahead and check that and we'll say that happens when we do. Yes. So you notice I didn't do an update here. And the reason for that is that when we actually say when the flow ends, this flow is going to start for every record that meets the criteria. And when it ends, it's just going to automatically update dollar records. So we'll just save this and we'll call it Employee record changes and save. We'll activate it. This one other little quality of life feature we've got here is we added deactivation inside flow builder. So you don't have to leave to do that. All right, so that's active and just want to make sure my other flow is active. Yes. Before I do this. So we're going to go back to our applicant here and we're going to say accept the offer and it's going to load at some point. There we go. Normally, of course, we'd have some more information here, but we're going to try and keep it fast. So congrats on your new hire. We click next. Now we can see that Jay has become an employee. Go ahead and click into Jay here. We can see that the department is Marketing, which is what Desi's department was. So we've automatically set the department to marketing from that cross object reference and we can see that the start date is February 3rd and that the i9 needed by date is the 10th. So that is before save triggers in your flow and traversal and automatic field detection, which is my favorite part. All right, back to the slides. So a couple of tips for your record triggered flows. First one choose your trigger type before you actually start to add any other elements. Because we do remove a bunch of notes from the page and we've already run into this a couple of times where people go I added this stuff and updaterecord's not supported what happened. So pick it first so that you don't have to worry about having unsupported elements. Again, we talked about the the is null for the ID and then the last thing is like your record triggers do happen before workflow, they actually happen third. They happen even before triggers. Somehow we pushed Chris Peterson's features out of third place and we are now third in the list, which is very exciting. Sorry Chris. So that means that again some of the fields might not be available like created by. If it's a new record, it won't have a created by because it's not in the database yet. It also means that that's why a lot of the other things that you expect to see in a flow aren't supported.
Now.
All of those things are still in Process Builder and you will see us adding an after record change trigger as well to flows pretty soon which will allow you to do those things like launch your external services actions. But for now the before safe flows are limited to fast field updates which as it happens is about from what we can tell about half of the time when people do a Process Builder process, it's to update fields on the same record. So it's a fairly common use case. As always, we like to talk about the lightning flow ideas that we delivered in spring 20. Not quite as big a jump as last time, but hey, there's still a good number of points there being able to choose if your system is system user or running user. And to do that traversal to the flow lookups. I'm surprised actually that select all only had 160 points. I would have thought that people would have been really annoyed by that. But anyway we're moving on some more highlights. Again I talked about opportunity contact rules. We've got some great stuff coming with next best action and we actually have two critical updates. I'M going to just gloss over this super fast.
Screenshot it.
Screenshot it. Yeah, just go to the release notes, go to Lightning Flow section, look at the critical updates. These two are being enforced this release. One of them has been around since summer 17, so you've probably already said it, but just to keep an eye out because it might change the way things are working. Of course you can learn more about Flow Builder and Trailhead and there's a set of videos on Salesforce admins which I promise we are going to update with new Flow Builder things probably next release when we get one more thing in we have the Flow solutions on AppExchange and for the first time on Release Readiness Live. We have been on live for the last couple of reasons, but for the first time live we are actually going to have the Flow Release Readiness live webinar on January 28th. So you should definitely check that out and we'll talk about all these features and more.
Very cool.
Thank you, Shannon. I will say the Twitterverse is going up.
People are very excited.
They love you.
They love you and Flo, I love Flow.
We'll come back to that. We definitely have the Flow natics.
Yes, yes.
We're all flownatics. We love flow. Yeah, absolutely.
We love the Flow natics.
I'm excited to tune in for the first ever Flow All Flow all the time. Really starting us and we're bribing the camera crew. Sorry. It's going to be awesome.
It's a fun.
So I'm excited also to follow up all of these great deep dives into particular product areas and feature areas with kind of more of an overview of even more good stuff in this release that you should make sure not to miss. So first I would like to talk about productivity features. As admins I know I often go first to the customization features and what are those things that I can build differently? What can I do with Flow? What can I do with Process Builder? What can I do with Security? But I think as admins it's really important to always remember that we're the stewards of our Salesforce implementation and so to be versed in any productivity features that are being rolled out to our end users. Some of those might require as we'll see a little bit of setup things that you can roll out to your users. But also it's just great to know what are some key features to point your users in the right direction. Maybe there's some pain points that you can help solve as an admin with new productivity features. So Task queues, I want to say task Queues had over 50,000 points on Idea Exchange, so we've definitely got some ideas that have been delivered thanks in large part to your prioritization as our community members. So task queues means that now you can apply that same queue logic that you've maybe been using for cases, been using for other objects. Now you can apply the tasks as well. So you can create queues and have task ownership of or have a queued ownership of tasks. So hopefully that since it got upvoted quite a bit, there's a lot of comments. I think it's something that's really going to solve a lot of those areas for many of your users and many of you as admins. You can also do more with Recycle Bins. So in the last release maybe you saw that in Lightning we now have access to the Recycle Bin. So every single release we're removing those reasons that as admins you might have to go back to Classic to do specific setup items or specific productivity pieces. And Recycle Bin not only is in Lightning, but now we're bringing more and more of those functionality and things you need to do with Recycle Bin to Lightning. So now you can access either restore or delete or view what's been deleted for reports and dashboards in your Lightning Recycle Bin, and you can empty your. Org bin all without going back to Classic. We also have more Calendar. So Lightning Calendar is one of our favorite features in Lightning. It provides a lot of functionality for your end users, for your sales users, for all of your end users really, and admins. And every single release we're seeing more come to Calendar. So if you haven't yet got hands on with Calendar and haven't yet started kind of adopting Lightning Calendar and using some of the functionality, I really highly recommend doing so. We have even more features being delivered this release to reduce clicks for users with Lightning Calendar. So now you can edit and delete on Hover as an admin. You can control that with your compact layout and really help your users again, just get more done on one screen without clicking around. Same with the App Launcher experience. If you're in your prerelease environment, you probably have seen that the App Launcher looks a little bit different. So there's all these places in Lightning where we're just trimming clicks for users, so things that are really good to get comfortable with. So now with App Launcher, if you click on the top left waffle, I think I'll never be able to stop calling it the Waffle click on the top left. Now you can see all those apps that you're navigating to most often, but if you like to navigate between tons of tabs using App Launcher, you can still search within that smaller app launcher top left Preview. Or you can go to view more and just have that original App Launcher experience and view all of your apps and tabs in one place. Another very popular feature being delivered is the ability to clone opportunities with related records, so often referred to as Deep Clone. I love the name Deep Clone for these, but this is something that is a big productivity boost, especially for your heavy sales users. So definitely check all of those areas out in the release notes. We also never forget about you as admins. There's great customization features for admins out there. We just saw overviews of a ton of really important stuff coming for admins and here's a few more great features to take advantage of. We now have the ability to test drive new Lightning features with a brand new Chrome extension and I will show you how to use that. And one of my personal favorite features that's included currently with that Chrome extension is Dark Mode. I love Dark Mode. It's what I have my machine set to, it's what I have my phone set to, and now it's what I have my Salesforce set to. So I'll show you how to download that or install that and get hands on with it. We also have Data Mask coming in this release, so this gives you just more ways to keep your data secure throughout your entire deployment lifecycle by anonymizing data as you're working with sandboxes. So if you have more questions about that, definitely dive into the release notes and your platform. AE will have information as well about how you can get hands on with Data Mask and URL hacks. We heard a lot about URL hacks last few years. I feel like I must include them here. URL hacks are back. So if you loved URL hacks, they're back. I know I tried to really get that across there, but URL hacks are back. So if you were a heavy URL hack user, if that's something that's been impacting maybe some of your decisions around whether or not you're moving to Lightning or certain things that functionality you want to bring to Lightning, check it out in the release notes. You can now use the URL hacks again. I feel like I can hear maybe Twitter celebrating because I know that we definitely have some fans out there this isn't an official release item for this release as far as a core product release, but I want to make sure everyone is on Trailhead Go. So we announced it. Yay, Trailhead Go. It's beautiful, it's fast, it's functional and it's on your mobile device, on your iPhone. Go to the App Store, check out Trailhead. We're going to be sharing. We've shared a lot of modules, we're going to be sharing our trail mix. There's a ton of great content to peruse on Trailhead Go. You can do all the quizzes on Trailhead Go. I love it. So just want to make sure everyone who's tuned in now as we're going through, make sure to go ahead and go to the App Store. Download Trailhead Go. It's an awesome, awesome app and it's the best way to do Trailhead on the go and enhance related lists. So if you really just releases ago we talked about enhanced related lists and we shared all that you can do with Lightning Record pages with enhanced related lists and now excited to announce those are ga. So for those of you who are early adopters when it was in beta, congratulations, it's ga. And if you haven't yet gotten hands on with Lightning related lists, now is a great time to do so. Read about it in the release notes. We've got some videos on our YouTube channel about enhanced related lists. Help bring even more to your end users.
Very exciting.
A couple more key features we want to talk about is a really exciting announcement for us. In spring 20, Einstein Prediction Builder is going to a freemium model. What this means for everyone who's tuning in right now is that you get one free prediction on any object. This is incredibly exciting. Yes, it's definitely flag worthy. We've shown Prediction Builder in demos. We've been talking about it for about a year but and we want every admin to be a data scientist so you can all get hands on with Einstein Prediction Builder. Build one free prediction on any object. You can access your sidebar that gives you a preview of all the potential bias or information about your data and you can use those filters to build your predictions. So we're super excited about Prediction Builder going freemium so everyone can start building predictions and we're excited about our brand new Salesforce mobile app going ga. So for all of you awesome Lightning admins out there that have been building great Lightning Pages, app pages, record pages, guess what? Now with this new Salesforce mobile app, you can bring all those pages to your Mobile users. So make sure to check out the new Salesforce mobile app. It's GA in spring. We did talk about it, I think in August and September and you started to get hands on with it and now it's readily available. So check out next generation experience and you can do faster mobile development. So we're all as admins, mobile app developers and now we can do even more with the new Salesforce mobile app. So I'm going to show you. I wish I had the time to show you every single thing I just talked about on a demo, but I do not. So I'm going to show you a couple of those key features in a demo. So first off, I just want to show everyone how to use those task queues because those were very popular and very important. So I'm in my Sunshine Chocolates trusty demo org and I'm going to go if you've ever set up a case queue, I'm going to go to that same place. I'm going to go to queues and I'm just going to say new queue. And this is a project environment or project heavy environment. So I'm just going to call this project team. Here's where I can select, this is what's new. Here's where I can select what are the objects that are available for this queue. So if I scroll down, yay. Brand new this release, I can now add tasks so I can have that shared ownership there. Let me go ahead and make my queue and add Maria and deshawn as my two queue users. Awesome. So I've created my queue and it's supported on the task object. So now if we go back, I'm going to go into my oh, look at that. My brand new little app launcher experience and see, even though it didn't show up on my this is going to show me those apps that I'm navigating between. But I don't have to open up the full splash screen in order to get to all my tabs. I can just search within it, which I think is very fast and beautiful. So I'm going to go to tasks and once I've got my tasks open, let's just go ahead and create a new task. It's like, no, we don't want any new tasks. We'll just say we're going to follow up on project review. We'll be generous. I'll make it due next week. It defaults to assigned to me as the user Maria. But now because I have task queues, I can actually assign it to a queue. Queue.
Yay.
Okay, so now let's go ahead and save it. So when you create your queue in setup as an admin, it's available as an ownership option. There might be a little bit of end user training there and also, but often with queue ownership, you're using that as part of your automated processes and automated assignment. But that would be an area where as admin, you can just instruct your users. Hey, just so you know, here's how you can assign to a group and also important to let them know that when you created that, you also got a nice list view available as well. So you can view all of the ownership there and you could also view ownership by filtered lists and all of that as well. So that is the first thing I want to show you. Now I know everyone saw that Dark Mode screenshot and is like, how do I get my Salesforce in Dark mode? And I'm going to show you. So first you're going to go to the Chrome Web Store and you're going to search for Lightning Extension, which I already have, but you're going to search for Lightning Extension and then we have the Lighting extension. Make sure you take a look. Just like when you're putting anything in any device or browser, make sure you take a look. Make sure it's the right one. It's a Lightning extension. It's offered by Salesforce. It's got a cute little lightning bolt and gear here. Okay, awesome. We're going to go ahead and add that to Chrome. Yes, I do want to add this. Great. I'm not going to sync. So once I have it added to Chrome, we have our new little Lightning Extension button up here. What we're doing with Lightning Extension, I know I talked a lot about Dark Mode, but it's not just about Dark Mode. Dark Mode is one of the features that's currently included. But Lightning Extension is a way for you as admins and as users to get hands on with new Lightning features fast. You can toggle them on and off as a per user basis because it's on your local browser environment. So if you're someone who's an early adopter, if you're someone who likes to get hands on and play around with new features, Lightning Extension was built for you. So I'm going to go ahead and toggle Dark Mode. Awesome. Now I'll just refresh my page. So now I have my new Dark Mode that's applied all throughout Salesforce Lighting. So we're on our Task view. But if I were to go to a record page. I think it looks particularly cool on dashboards if you know you're going to use it for a while. You can modify your dashboard colors, but it's just a great I think dark mode is a great reason to get it. If you like dark mode, but it's a great if you're an early adopter of features, if you're someone who likes to get hands on with features early. This is why we created Lightning Extension. So with that I know we have some questions coming in. I'm going to wrap it up on the demo. So let's go ahead and jump back to slides and talk through our pilot program. So every release, pretty much every release we have some exciting new pilot programs and we often use the words ga, pilot and beta. So it's always good to give a lay of the land. GA means that it's generally available. It is readily available in your environments, sometimes based on licensing and enablement steps. But GA means that it is part of the release. If something is beta, it may be available in your environment. However it's not something that's for sure going to stay in the environment. It's not something that is part of our general release, but you may have early access to it. Usually with betas there's not a request to get added step and things like that. It might be something that just rolled out like enhanced related list was now pilots Generally the steps for pilots to get access if you're an admin if you see a pilot in the release notes that you're excited about is to contact your AE or contact customer service. So that's one of the key differences there is if you see a pilot that looks interesting to you or like your org might be a fit for it, reach out to customer service or reach out to your AE so you can get added. So we always like to highlight some pilot programs every release. So here's some key ones that are coming. We've got custom domains are coming for sandboxes. So that's a pilot that you can reach out to your team about getting the best predictions on three different models in Einstein Discovery. So previously two, now there's access to three models and also Einstein Reply recommendations in service cloud. So if any of these sound interesting to you, reach out to your customer service or sales team. And Rebecca, do you want to go over learn more?
Yeah, we can do that right now.
Should we do Q and A first?
Yeah, I was thinking we could go through the Q and A and then.
We'Ll go back with that perfect. So with that I know we covered a lot. I hope that there's some fun questions coming in from the community. Rachel, do we have any questions about Flow or admin features from our community?
Well, it looks like we have more questions about Flow than we can probably fit into the rest of this broadcast, but I will try either that or Shannon, you can stop me at any time. But there's a lot on here for you. We also have a couple for you Leanne and I'm just trying to take stock of those right now since you just wrapped up your segment. So why don't we jump back up to the top. I do have one from earlier that we didn't get to for Sharon.
You up for it?
Sure.
Great. So is it true that profiles will be deprecated?
So it is a great question and I know once people heard that something's going to be deprecated and profile we're talking about people get answered because maybe your org has long history with Salesforce and you are already have a lot of stuff tangled with profile. So I want to say that from the long term perspective and then from the product strategy perspective, we are planning to guide you guys to migrate the permission management piece from Profile to Permission set and permsite group. But it doesn't mean that the profile as a field or as an object isn't going away. It's just that we are going to with the best practices model that I just explained. We think is a better way to grant user least privilege access through permset and permset group. So as I'm talking about this is forward looking as long term strategy but until we officially announce a end of date. There's no official date associated with it at the moment but I think looking through the future few releases we are going to invest heavily into the tools that help you guys migrated the permissions of Profile and to permsat and permsa group. So I hope that will shed a little bit light in terms of what's going to coming. But don't worry about it. We're going to handhold you guys during that migration process and then make sure that least painful it's always going to be we're out there helping our admins.
Okay. So I guess be careful what you wish for. There is so much good stuff happening on Twitter and the Trailblazer community. Before we jump into some backlog questions for Liz and a lot of stuff for Shannon, I just wanted to share that we have some audible gasps from automatic field detection from Tracy on Twitter with all the heart eye emojis. Then Dave Reese says huge thank you to the Flow team. Just when I thought I couldn't love Flows anymore, you find a way to make them even better. Great job. You ladies will see it later. But the excitement for URL hacks and Dark mode is off the charts right now. So thanks everybody for jumping in with all of your fun reactions. Let's get back to some questions I mentioned for Liz. I have a couple backlog ones. So can we use external services to connect to SharePoint online? Specifically to show data in Salesforce on a SharePoint only list or library?
So I'd have to see what the open API spec is for SharePoint. The limitations that we have for external services is documented and so if we take a look at the spec, it kind of depends. We'd have to take a look at the spec and then we would able to. Then hopefully you should be able to integrate with it.
Okay, awesome. Then we have Jennifer Ward asking can the Slack integration work the other way around? For instance, can a user respond in Slack and bring that info into Salesforce?
That's a great question. Right now this is for the call outs to Slack for capturing anything that's initiated from Slack that is not currently supported.
Okay. And there's been some excitement around that Slack demo that you showed. Will that be posted somewhere for people to review the demo itself or information around it? We have just a various bunch of questions about it.
So right now we don't have anything specific about this Slack integration documented. We did have this demoed at Dreamforce this past year with more interest. I can definitely try to provide more details separately. Yes, if there's more interest in this.
Okay, great. So anybody who is in the Trailblazer community or Twitter asking about that, we'll try our best to follow up with you. All right, jumping into Flow, let's start from the top. I have a question that says for the Automatic Store all field option for Get Records. Does this slow down the flow if you have a lot of fields on the object?
It should not. Because what happens is when we actually run the flow, we detect which fields you are actually using and we only load those fields. So for the most part, even though it looks like you're doing a select all, it doesn't actually pass all of the values around everywhere.
Okay. And then it looks like we have a special case where there was a question asked earlier today on the developer release Preview live. And Shannon, I think we touched base before the broadcast. You might have an answer for Us. So this one was for the developer team and it said would you be able to get an answer regarding whether flows making before save updates would be executed again should a record be updated in the workflow field update?
So I think I mentioned in the tips for before save that before save happens much earlier on before your workflow rule updates actually happen so they don't get run again because by the time the workflow field update happens, the before save has already been committed or been set.
Okay, awesome. Well, thanks for following up on that. I know anybody who was watching earlier, anyone who's watching now probably be able to make use of that info. You up for a few more? Yeah, okay, sure. All right, so we have Savannah Arnett asking if we use the select all Fields option to get the records node, will the flow error if the user doesn't have access to all of the fields?
So it's going to get the fields that the user has access to. So if you're using a field that the user doesn't have access to, I would have to double check, but since it's usually running as user, I'm assuming that you would not have access to that one. But if you are just sort of generally getting all and then not actually referencing a field that the user might not have access to, I think it should work fine. But I'm going to verify that and I'll just double check it and then I will get back to the Is it a community question?
Rachel, I have the link for you.
So I will go back in and give you a definitive answer in the Trailblazer community.
Awesome. I have Andy Haas asking does the before save and flow count against our limits or is this on a separate limit?
You always get me with the limits question. I'm going to have to ask Jason. Tell her about that and answer you in the in the NCU online. Sorry.
Okay, fantastic. We'll keep going if that's all right with you.
Yeah, we have a couple more minutes.
So we have a question about does selecting get all fields from a record in the new Get Records functionality put a lot of extra strain on existing governor limits?
No, and for the same reason I mentioned earlier with the the fact that it doesn't actually load all of the records that you need, it just loads the ones that you're actually going to use, so you're fine.
Okay. And one more. Will the field creation flow switch from adding permissions via profiles to permset groups?
Can you say that again?
Will the field creation flow switch from adding permissions via profiles to permset group if we need to come back to it in the Trailblazer community, that's okay.
I would love for you to take that.
So according to what I know. Well, I'm not a flow expert but according to the product knowledge around permission set group, I don't think there's available. It's available today in the flow but that is something we are actually looking toward to collaborate with the floating because I believe today it allows you to sign it through permission to go to a profile based on my understanding could be wrong because we are now trying to say using perms and permsite a better way to control this user access. Now when you guys as an admin are building those flows or building on apps that will require you to grant the end user access, we are looking to allow the assignments or allow the configuration of those perms as you're building the app or building a flow to also make perms group supported. So again that's something we're looking forward to both as part of the transition to help you guys migrate from profile to permset group, but probably not available today.
Okay, awesome answer. Thank you for jumping on that. Well, we'll give you a break, Shannon and hop over to Leanne.
Do we have time for one long.
Question or two short questions?
Well, we have a lot of questions about the Dark Mode and tech departments not condoning Chrome Extensions and so everyone's really excited about Dark Mode, but they're wondering how can they convince their tech department to allow it or what can they do if this is something that they want to use but they might not have the availability for.
That is a great question. I will have to actually think about that. What a great way is to maybe approach your tech department about making Chrome available or making Chrome Extensions available. I'll be honest, I don't know the right answer to that because it is tough. Every organization has their security compliance rules in place based on what their unique security needs are. So I hope everyone can get I hope as many people as possible can get hands on with it. But I'll noodle on that and I'll see if there's any recommendations we have around. Maybe additional security information that might be helpful to provide to your security department. It might help.
Okay, thanks so much. Well guys, thank you for jumping on. I know there's a lot of questions we couldn't get to, so we will be on Twitter and in the Trailblazer community and we'll see you over there after the broadcast.
Sounds good. Thank you Rachel. So thank you. I wanted to say thank you to our panel for delivering all this amazing innovation that we get to take advantage of now. Thank you Rachel, for answering or managing all the questions for us during the broadcast. And lastly, thank you awesome admins for for taking the time to be here to learn about the latest and about all the great stuff in this release so that you can deliver the innovation at your company. Before I let you go, I do have a slide on how you can continue to learn about the Spring20 release and learn more. And that's LearnMoar. So if you go to Sforce Co LearnMore, we have two different trail mixes for you. One for admins, one for developers with all kinds of great information around the release provided by yours truly over here. And in fact, if you complete these trail mixes by March 30th, 31st, 2020, it does unlock a special community badge and a $10 donation to a nonprofit called First. So we definitely hope you continue to learn about the Spring20 release and we're super excited to see what you do with all these new features. So until next time, catch you in the cloud.
Bye.










