Step by Step Guide to Using Data Table in Salesforce Flow

Data Table in Salesforce Flow

Salesforce Winter ’23 Release introduced “Data Table” in Salesforce Flows. With data table, you can display multiple records in a Screen-Flow, let users select one or multiple records and process the selected records based on your business requirements. Or you may just want to display a list of records without providing the option to select anything.

Here are some of the use cases for the data table

  • Let users select a list of records and then update those records with specific values
  • Let users select a list of records and delete those records
  • Or just display a list of records based on certain criteria

Before the data table, you needed to write custom code using Visualforce page, Aura, or Lightning Web Component to meet the similar requirements. But do note that currently there is no option to edit the values directly in the data table.

The data table can be created using the ‘Get Records’ element or using resource of ‘Collection’ type.

In this step-by-step guide, we will allow users to create multiple Contacts for an Account, display the newly added Contacts & existing Contacts in data table and let users ‘unselect’ the newly added Contact if they don’t want to save it.

This guide is just an illustration of how to use data table in Salesforce Flow in just under 30 minutes. And you can then let your imagination run wild and explore how this feature can be used to meet your business requirements and potentially reduce some of the custom codes.

Please do note that this feature is available in Winter ’23 Release of Salesforce, which will be rolling into production and sandbox orgs from 09-Sep-2022 to 14-Oct-2022. So be sure to ensure that your org has been updated with Winter ’23 release before trying this out.

What are we trying to build

In the following video, let’s first see what are we trying to build?

Now, let’s build this Flow

Ok, now that you understand what we are trying to build, here the complete guide on how to build this screen-flow containing data table – step by step.

Introducing Mastering Salesforce Flows Training Course

Liked this guide? We are now offering a complete self-paced, video-based training course on Mastering Salesforce Flows. The course comes with downloadable step-by-step PDF guides, unlimited access, free upgrades, area to ask questions, free preview & 100% money back guarantee. For more details, please click here.

Need Help with Flows?

Need advice on Flows? I also offer advisory & consulting services on Salesforce Flows. So, whether you want to create new Flows or migrate existing automations (Workflow Rules, Process Builder, Triggers) to Flows, I can help you analyze, design, plan & review. To initiate a discussion, please submit the contact form here stating your requirement or book a 30-minute free discovery call at this URL.

11 thoughts on “Step by Step Guide to Using Data Table in Salesforce Flow”

  1. Ashish,
    Yet another great post! You are a great help.
    One question as you are one who always is in the know. Do you have any idea when Data Table will be able to take data entry? Specifically on creating Opportunity Products, adding a Quantity directly in the table?

    Thanks,
    Pete

  2. Hi. This was very helpful.
    Do you know if there is a limit on the number of objects displayed in a table? (or Get Records limit ? )
    Thank you

    1. Thanks for your feedback Timi. Glad that you found it useful. The ‘Get Records’ element has a limit of 50,000 records ( https://help.salesforce.com/s/articleView?id=sf.flow_considerations_limit_transaction.htm&type=5 ). But I am not sure if data table can display so many records and I have not seen any mention of limits for data table. You will have to test it out. The other factor to consider is that currently the data table does not have pagination. So, displaying a large number of records on one single screen will not be very user-friendly.

  3. Hi Ashish,
    This was very helpful.
    I have a question as I am trying to use screen flow to update the record and i am facing an issue the field values are not been fetched in the data table of existing record. How to do that? I need your guidance on this.

    Thank you,
    Pooja

    1. Thanks Pooja. Can you please clarify the overall approach as I am not clear? Data tables are currently not editable. So, you won’t be able to edit the values directly in the data table. Where exactly the field values are not being fetched?

  4. This was an excellent instruction for Data Table – Thank you! Once again, you de-mystify and make clear to we mere mortals the world of making Salesforce do what you want!
    Question: In putting my learning to work, I started simple and used Data Table to show the result of changing or assigning a geographical region to a set of zipcodes. Region names and other data are stored on the Account object; the Zipcode table is it’s own custom object. The flow works just fine- the assigned region is updated, and the Data Table shows the records that were updated (i.e. each zipcode) and the newly assigned Region. However, in the Zipcode object, Region is necessarily a Lookup field, and when the results display in the Data Table, the Region column is showing the ID of the Region, not its Name. This, of course, seems useless; the user needs to see the Name they selected. I can’t see a way around this – is there one? (Also, I would note, we’ve been using Unofficial Salesforce’s Datatable, and it does not exhibit this behavior – you get the Name when you specify a column that is a Lookup field.)

      1. I’ve tried using the formula/text field Owner.FirstName & ” ” & Owner.LastName and it shows up the information I’m looking for in the field on a page layout, but when bringing it into the data table the data is blank and missing. Could you advise? I also read about using this, but I’m not sure where to place this as I’m also getting a syntax error in the field. HYPERLINK( LEFT($Api.Partner_Server_URL_450, FIND(‘/services’, $Api.Partner_Server_URL_450)) + CASESAFEID(Id), $Record.Related_Record__r.Name ). Thanks

Leave a Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Scroll to Top

Don't Miss Out on New Step-by-Step How To Guides on Salesforce...

…Subscribe to Our Newsletter!