In the Spring 18 release, Salesforce introduced the ability to show a Lightning Component inside a Flow screen. It took me a while to be able to play around with this, but I am VERY excited for this! This is not for first time Flow creators. If this is your first time with Flows, look through some of the other posts on this blog in Learning Flow, Part 1. But if you have some Flow background, get excited for Lightning Components in Flow screens! Before we get started, I want to break down a few questions that you might have as I had them as well.
First Question: Lightning Components mean code, why would we use them in a Flow? That is correct, it is code. I think of it like this. Let’s take the example of an Account List. The Lightning Component displays the Account List, however, you are controlling the logic to get the list in the Flow. So, this means you’re not having to write code to create an account list or the logic, an admin controls that in the Flow, but the displaying of a list, Flows are not good at, so being able to send this to a Lightning Component to display is a lot easier than integrating with a Visualforce Page or writing everything in code.
Second Question: Aren’t Lightning Components hard? Lightning Components do mean code, but if you can put together a Flow, you can start to understand the logic for Lightning Components. With something like showing a list of Accounts, the code required is very easy. Salesforce has done a GREAT job expanding the base components for Lightning Components. What’s a base component? Think about the Dynamic Picklist Choice in Flows. There would be a LOT of code to be able to get that done. But Salesforce made it very easy and allows you to just select the Object and Field. Base Components are similar, they are building blocks of Lightning Components, like the Dynamic Picklist Choice is in a Flow, and Salesforce takes care of the heavy code, so you just need to let them know a few key values to have their code run in the background.
Third Question: Doesn’t this belong in a development blog? NO! I know you can do this! As you’re learning Flow, you’re learning some of the logic of development. This post will help you to expand just a little bit beyond Admin, to what some might call Adminvelopment, where you start to dabble in development. The Lightning Component in this post is very lightweight, we are not going to have a controller or call apex, we are just going to display a list of Accounts and send that list from the Flow to the Lightning Component.
Ok, so where did this post come from? For that, I have to thank Jocelyn Fennewald and Salesforce Saturday. If you haven’t been to a Salesforce Saturday, you should attend. What is it you ask? A bunch of Salesforce people hanging out on Saturday and talking about Salesforce and maybe doing some trailhead. Why should you go? Because you never know what you’ll learn, where the conversation goes, or in this instance, what you’ll be able to help someone with and be inspired to learn something new.
So what is this post about? Great question. Jocelyn asked me if it was possible to use Flows to be able to create a way for a User to be able to look for referral accounts that match a User’s criteria. Flow is great to be able to get the Account List based on a a few variables, but showing that list in Flow, well, that’s where the Lightning Components in a Flow screen come in handy! What this post will help you learn is taking input from a User, finding a list of Accounts that match, and displaying those Accounts back to the User. We’ll expand upon it in another post, being able to select records in the list and do something with them, but for this post, we’ll stick to the simple idea of displaying a list of Accounts. Continue reading