In Salesforce, we use screen flow to create records. Meanwhile, we need to enter the required fields to create the records. Sometimes, it includes conditional field values, such as picklist values based on the selected record type of the object.
In this Salesforce tutorial, I will explain how to display picklist values by record type in Salesforce Screen flow.
Create a Screen Flow Displaying Picklist Values by Record Type
In this example, we will create a screen flow displaying the picklist values from the Account picklist field Industry based on the selected record type.
To create a screen flow, navigate to setup>quick find> flow. Then, follow the steps below.
- Click on the New flow button, then select Screen flow in the next window and click the Create button.
- In the screen flow, first, we will add the screen element to display the record types of the Account object. For that, configure the add screen component to the flow and configure it in the following way.
- Enter the Name and API label for the screen component.
- From the components, add the Picklist to the screen region and enter the Label and API Name, such as SelectedRecordTypeId.
- Go to the Choice field and select New choice resource.

- Define the new resource for the record type picklist with the following details.
- Select the variable type as Record Choice set and enter the API Name as AccountRecordTypeChoiceSet, or you can name it your way.
- Select the Object as RecordType.
- In the Condition Requirements, select the filter condition as SobjectType – Equals – Account to get the record type of the account object.

- In the section Configure each choice, select the Choice Label as Name and the Choice Value as Id. This will fetch the record types from the record type ID.
- At last, click Done.

- To assign the record type ID so that picklist values will be displayed accordingly, we will add an assignment element. Before that, create a New resource for the assignment element.
- In the Toolbox, click on the New Resource button.
- Select the Resource Type as Variable and enter the API Name as record_variable.
- Select the Data type as Record and select the Object as Account.

- Now add an Assignment element to the flow below the first screen. Enter the Label and API Name for the Assignment element.
After this, go to the section Set Variable Values, select the Variable as the single record variable we created {!record_variable.RecordTypeId} and Value as {screen1_label.recordtype_picklistlabel}.

- Add the second screen element to the flow in which we will display picklist values of the Industry field according to the selected record type.
Now, configure the second screen in the following way:
- Enter the Label and API name for the screen, such as Picklist_Screen.
- Click on the Fields tab in the screen component, and in the Record Variable select the Account variable that we have created.

- Now, you will see all the fields of the Account object. From the fields, drag and drop the Industry ( picklist) field to the screen region.
At last, click on the Done button.

The picklist values will not be visible on the screen in preview mode. To view the pikclist value, we have to run the flow in debug mode.
On this screen, I’ve also added the text component to take the input for the account name.

- Add a Create Record element to create the Account record from the input account name and account industry.
Enter the Label and the API Name in the section “How to set record field values“, select the option Manually. After this, select the object for which we are creating records.
In the Set Field Values section, map the field with the input values in screen flow.
Here, we have mapped Industry with {!record_variable.Industry} and Account Name from the second screen input value {!AccountName}.

- To debug the flow, click on the Debug button. Then, in the next window, click Run to run the flow.
In the first screen, you will see the record type options for the selected object. In my org, there are two record types for the account object that are displayed on the first screen.

After selecting the record type, the flow moves to the next window, which displays the Name input and picklist field values according to the selected record type.

The record will be created for the account object as we click on the Save button.
To ensure that the record is created with the selected picklist value, navigate to the Account object and open the new record.
Here, we can see the record New Hampshire Machineries is created with the selected picklist for the Industry field as Engineering.

This way, we can add Record Types in Salesforce Screen Flows and show picklist values according to the selected record type.
Conclusion
In this Salesforce tutorial, we have learned how to dynamically create screen flows to display picklist values based on the selected record type. By setting up screens, variables, and assignments, we created a screen flow to capture the record type, used a variable and assignment to store the selection, and displayed context-relevant picklist values, like the Industry field, in a second screen.
You may also like to read:
- Pause and Resume a Screen Flow in Salesforce
- Display Image in Salesforce Screen Flow
- Add Validation to Screen Flow in Salesforce
- Use HTTP Callout In Salesforce Flow

Abhijeet is a skilled Salesforce developer with experience in developing and integrating dashboards, data reports, and Salesforce applications. He is also skilled at optimizing processes and flow automation processes, coding, and executing complex project architecture. Read more about us | LinkedIn Profile.