LogoLogo
HomepageYouTube ChannelInstall from the AppExchange
  • Home
  • Dynamic Components
  • Flow Components
  • Experience Components
  • Projects
  • 👋Welcome
  • Getting Started
    • Product Tour
    • Quickstart Guide
    • Learn the Basics
    • Installation & Licenses management
    • Flow vs. Dynamic Components
    • Integrating with Experience Cloud
  • Tutorials
    • Videos
    • Projects Tutorials
    • Components Tutorials
      • Alert
        • Create a custom branding alert
        • Create an error alert dismissible
      • Avatar
        • Create an avatar with actions
        • Create an avatar with details
      • Avatar Group
        • Display a list of contacts related to an account
        • Display a list of sharing users related to the record
      • Barcode
        • Generating and Displaying Barcodes for Product Codes
      • Biometrics
        • 101 Tutorial
      • Button
        • Customizing Flow Navigation Buttons
        • How to Add a "Cancel and Close" Button
        • How to Open Flows from Buttons
      • Button Groups
        • Identifying Clicked Buttons
      • Button Menu
        • How to change dynamically Avonni Button Menu Icons
      • Calendar
        • Calendar 101 Tutorial
        • How to Connect Multiple Data Sources to the Avonni Calendar
        • How to Customize Time Spans
        • How to Customize the Right-Click Menu
        • How to Add an Edit Action to Events
        • How to Add a New Event Button to the Avonni Calendar Header
        • How to Create Events by Dragging in the Avonni Calendar
        • How to Reschedule Events with Drag and Drop
        • How to Color-Code Calendar Entries in the Avonni Calendar
        • Using a variable Data Source
        • Using a Query Data Source
      • Carousel
        • Build a Related Products Carousel
      • Combobox
        • Implement Dependent Picklists in Comboboxes
        • How to Dynamically Enable/Disable Dependent Picklists
        • Using Multi-Select Comboboxes with Reactive Formulas
      • CSV Parser
        • 101 Tutorial
      • Data Table
        • Adding Filters
        • How to add Images onthe Data Table
        • Creating Row Actions
        • Displaying a Record as a QR Code
        • Displaying Record Name field as a link
        • Learn the Basics
        • Making a field editable
        • Setting Up Data Export
        • Tips and Tricks
          • Activate infinite scrolling
          • Creating an action from a button or a link
          • Customizing the Badge Color using a formula
          • How to Grayscale Header Actions Dynamically in Avonni Data Table
          • How to Conditionally Color Cells
          • Enabling auto-refresh on the Data Table when pressing a button
          • Handling formula text field
          • How to set column visibity
          • Passing multiple record IDs to another flow
          • Data Table Editor
      • Date Picker
        • Display a date picker with Marked Dates from a Get Records
      • Date Time Picker
        • How to create Collection Variables for StartDateTime and EndDateTime
        • How to Block Out Times
      • Delay Interaction
        • Creating a Confetti Celebration on the Final Screen
        • Launch a flow dialog without a screen
      • Dual Listbox
        • Display contacts with custom icons
        • Accounts list group by industry
      • Expandable Section
        • How to add components into an expandable section
      • Header
        • Building Engaging Card Headers
        • Crafting a Profile Header
        • Adding Action Buttons to Headers
        • Adding a Background Image to Your Header
      • Input Pen
        • Add the custom Toolbar
        • How to Store Input Pen Drawings as Attachments in Salesforce
      • Kanban
        • 📹Introduction
      • List
        • Create a grid list with images
        • Create a sortable list
        • How to Reorder Items and Update Records
        • Vertical List with Actions
      • Navigation
      • Map
        • Customize the Map Marker
        • Visualizing Account Information on a Map
      • Metric
        • 📹Introduction
      • Microphone
        • Save the Microphone recording file as an attached on a record
      • Progress Indicator
        • Creating a Universal Dynamic Progress Step Collection
        • How to Change the Appearance of Your Progress Indicator using a variable
        • Error Handling
      • QR Code
        • Generate a QR Code from a record field
      • Record Detail
        • Using the Record Detail with Reactive Screens
      • Scoped Notification
        • Display message based on a value
      • Text Area
        • TextArea issue with max length when clicking on the next button
      • Tree
        • Build a Tree View with Dynamic Record Details
      • Timeline
        • Assigning multiple source collection to the Timeline
        • Customizing Date Format in the Timeline Component using Luxon
        • Create a horizontal activity timeline
        • Display Tasks
        • Perform actions on selected tasks
      • Vertical Visual Picker
        • Adding sub-items
        • Display a list of online contacts
    • Interactions
      • Enabling auto-refresh for queries after the Flow Dialog ends
      • Creating a Confetti Celebration on the final screen
      • How to create an interaction to navigate to an object
      • How to create an interaction to a record page
      • How to create an interaction to open another flow
      • How to pass an Input Variable from One Flow to Another
      • How to setup an Open Flow Panel interaction
    • Reactive Query Tutorials
      • How to make Data Tables Reactive
      • Build a reactive Data Table Using Dependent Picklists
      • Building a Dynamic Metrics Dashboard with the Data Table
      • How to build a reactive 'Quarterly Opportunity Tracker' component
      • How to Create a Combobox-Filtered Data Table
      • Create a Dynamically Linked Account-Contact View
      • Troubleshooting
    • Tips and Tricks
      • Copy / Paste a component settings
      • Create a link to the record using the href attribute
      • Create a variable and use it in a component property
      • Data Table
      • Hide Standard Header and Footer in a flow
      • How to pass your current RecordID in your screen flow
    • Platform Events
      • Configuration tutorial
  • Flow Components
    • Explore All Components
    • Alert
    • Audio Player
    • Avatar
    • Avatar Group
    • Barcode
    • Barcode Scanner
    • Biometrics
    • Blockquote
    • Button
    • Button Group
    • Button Icon
    • Button Menu
    • Calendar
    • Carousel
    • Chart
    • Chip Container
    • Combobox
    • Color Picker
    • CSV Parser
    • Date Picker
    • Data Table
    • Date Time Picker
    • Delay Interaction
    • Document Scanner
    • Dual Listbox
    • Expandable Section
    • Formatted Address
    • Formatted Name
    • Formatted Value
    • Header
    • Hero Banner
    • Icon Picker
    • Image
    • Input Choice Set
    • Input Choice Set Grid
    • Input Counter
    • Input Date Range
    • Input Pen
    • Illustration
    • Interaction service
    • Kanban
    • List
    • Map
    • Metric
    • Microphone
    • Navigation
    • NFC Scanner
    • Pill Container
    • Progress Bar
    • Progress Circle
    • Progress Indicator
    • Progress Popover
    • QR Code
    • Rating
    • Record Detail
    • Scoped Notification
    • Separator
    • Slider
    • Tabs
    • Text Area
    • Timeline
    • Tree
    • User Location
    • Vertical Visual Picker
    • Visual Picker
    • Visual Picker Link
    • Video Player
    • Welcome Mat
  • Component Builder
    • Overview
    • Properties Pane
    • Interactions Pane
      • Copy Records
      • Download
      • Export To
      • Fire Confetti
      • Flow Navigation
      • Navigate
      • Show Toast
      • Open Alert Modal
      • Open Confirm
      • Open Flow Dialog
      • Open Flow Panel
      • Update Records
      • Refresh Query
      • Refresh All Queries
      • Open Quick Action
    • Style Pane
    • Component Templates
    • Layout and Customization
      • Alignment controls
      • Copy / Paste component settings
      • Margin / Padding
      • Pull To Boundary
      • Undo / Redo
  • Data Sources
    • Understanding Data Sources
    • Manual
    • Variable
    • Query
    • Query VS Variable
    • Picklist
  • Actions
    • Overview
    • Data Manipulation and Transformation
      • Convert Lead
      • Create file
      • Split Text to Text Collection
      • SObject Collection Math
      • SObject Collection Join
      • Get Record from SObject Collection
      • SObject Collection to Activity Timeline Items
      • SObject Collection to Calendar Marked Date Collection
      • SObject Collection to Scheduler Events
      • SObject Collection to Text Collection
    • Data Conversion and Formatting
      • Text Collection Get Value
      • Get Value from String Collection
      • Number Collection Get Value
      • Join Text Collection
      • Format Text in SObject Collection
      • Format Text Collection
      • Text Collection to Combobox Options
      • Text Collection to Dual Listbox Options
      • Text Collection to Progress Indicator Steps
    • UI & Navigation
      • New Avatar Action Collection
      • New Button Menu Item Collection
      • New Carousel Item Collection
      • New Combobox Option Collection
      • New Dual Listbox Option Collection
      • New Header Action Collection
      • New Header Avatar Action Collection
      • New List Action Collection
      • New Navigation Item Collection
      • New Progress Indicator Step Collection
      • New Progress Popover Step Collection
      • New Slider Custom Label Collection
  • Help
    • Performance Guide
    • How do I contact support?
    • How do I report Bugs?
    • Troubleshooting
    • Release Process
  • Miscellaneous
    • Live use cases examples
    • Release Notes
    • Salesforce Flow Limit
    • Security
Powered by GitBook
LogoLogo

Company

  • About Us
  • Pricing

Policies

  • Privacy Policy
  • Terms of Service
On this page
  • Overview
  • Final Result
  • Steps
  • 1️⃣ Create a Get Records collection
  • 2️⃣ Add our first screen element
  • 3️⃣ Add the Header component
  • 4️⃣ Configure the Header
  • 5️⃣ Add the Carousel component
  • 6️⃣ Configure the Carousel
  • 7️⃣ Get the Details of the Clicked Product
  • 8️⃣ Add the second screen element
  • 9️⃣ Add screen components on our Screen 2 element
  • Troubleshooting

Was this helpful?

  1. Tutorials
  2. Projects

Product showcase

Learn the basics of the Avonni Flow Screen Components library with this example.

Last updated 6 months ago

Was this helpful?

Overview

This tutorial will show you how to create a product showcase in Salesforce using the Avonni Carousel component. You'll end up with a display that shows a list of products, and when users click on a product, they'll see more details about it.

What You'll Learn:

  • How to use the Avonni Header and Carousel components to build your showcase.

  • How to make the showcase look good and work well

Final Result

What you'll learn

Steps

The steps to build a product carousel components are as follows:

1️⃣ Create a Get Records collection

First, we need to get a list of all your products from Salesforce.

  1. Add a 'Get Records' Element: Flow Builder finds your product information.

  2. Label it 'GetProducts': This helps us keep track of this data later in the flow.

  3. Choose the 'Product' Object: We want product data specifically.

  4. No Conditions: Select "None - Get all Task Records" so we get all your products.

  5. Get All Records: Make sure "All Records" is selected to get everything.

  6. Click 'Done'

2️⃣ Add our first screen element

The very first step starts with creating our Get Records collection to ask Flow Builder to fetch all the Task records by following the below steps:

  • Add a screen element

  • Enter a Label: Screen 1

  • Click on the Configure Header section and uncheck "Show Header"

  • Click on the Configure Footer section and uncheck "Show Footer"

3️⃣ Add the Header component

  • Drag the Header component from the components list to your screen flow (the Header Component is located under the custom section)

  • Enter an API Name. For example, showcaseHeader.

4️⃣ Configure the Header

General settings

  • Click on the Open Component Builder button to access all the settings for the Header component

  • Enter a header title (e.g: Products catalog)

  • Enter a header caption (e.g: Showcase)

  • Toggle "Is Joined" and "Pull to Boundary" to make our header component more appealing.

  • Expand the Avatar Section

  • Select an icon (standard:products) to add an icon next to the title and caption text.

  • Set the size to Medium

Adding an action

  • Expand the Actions section

  • Click on the "Add Actions" button

  • Enter a label: "New"

Create the interaction on the New button action

Here, we are going to create a button to let users create new product

  • Click on the Interactions tab.

  • Click on the "Add Action Click" to create our interaction

  • Select a target name: "New"

  • Select Navigate as Type

  • Select Object Page as Page Reference Type

  • Select the Product object as the Object API Name

  • Select New as Action Name.

  • Click on Save.

Configure Header component styling settings

  • Click on the Style tab.

  • Open the Background Section to set the Header Background color to: #032d60

  • Open the Title and Caption section to set the color to white: #ffffff

  • Click on Done.

5️⃣ Add the Carousel component

Next, let's add the Carousel component right below the Header. This is where we'll showcase your products.

  1. Find the Carousel component in the list of components (it's in the "Custom" section).

  2. Drag the Carousel component and drop it onto your screen, below the Header.

  3. Give it a name, like "carouselProducts". This helps us identify it later in the flow

6️⃣ Configure the Carousel

General settings

  • Click on the Open Component Builder button to access all the settings for the Carousel component

  • Set the Items per panel to 2 (same for Small, Medium and Large)

  • Expand the Data Source section and select Variable

You can use the "Query Data Source" option here. It's the simplest way to connect directly to your Salesforce data, and it saves you from having to do that separate "Get Records" step we did earlier.

Configure Data Mapping

Now we can link fields from our source collection to attributes from the Carousel element. The following fields can be associated to the following attributes:

  • Title => Product Name

  • Description => Product Description

  • Image Source => Display URL

  • Name => Product ID

Create an interaction on Item Click

We just completed the data mapping to map fields with carousel attributes. Now, we can create an interaction to define the action when users click on a Carousel item.

  • Click on the Interactions tab

  • Type => Flow Navigation

  • Type => Next Screen

7️⃣ Get the Details of the Clicked Product

We need to create a second "Get Records" action to show the details of the specific product the user clicks on. This ensures they only see the information they're interested in.

  1. Add a 'Get Records' Element: This will fetch the specific product details.

  2. Give it a Label: Choose a name that makes sense, like "GetClickedProductDetails"

  3. Choose the 'Product' Object: Again, we're looking for product data.

  4. Add a Condition: Select "All conditions are met"

  5. Set the Filter: The filter should be: "Id equals carousel > Clicked Item Id" (This connects it to the product the user clicked on in the Carousel)

  6. Get Only One Record: Select "Only the first record" since we only want details for one product at a time.

  7. Click 'Done'

8️⃣ Add the second screen element

Now we are going to add a second screen element after our previous Get Record collection created by following the steps:

  • Add a screen element

  • Enter a Label: Screen 2

  • Click on the Configure Header section and uncheck "Show Header"

  • Click on the Configure Footer section and uncheck "Show Footer"

9️⃣ Add screen components on our Screen 2 element

Add a back button

  • Drag an Avonni button element

  • Add a button label "<< Back"

  • Set the variant to Neutral

  • Click on the Interactions tab

  • Select the Flow Navigation type and Previous Screen.

Add product information description.

  • You can add a Display text element or an image to display information about the selected product.

Troubleshooting

  • The click on a product item is not working > When mapping your data source, make sure to fill in the "Name" attribute. This is an important step to ensure that your data is correctly mapped and can be easily accessed and used.

  • My product image is not displayed > make sure to have a product image (or URL) in the corresponding field.

Actions enable users to trigger . Here we will add a new button to let users create a new product.

First, let's select our source collection, the one created > GetProducts

In the Insert a resource field, select the variable created in and add the field information that needs to be displayed.

Having trouble with this tutorial? .

an interaction
Contact Avonni support for help
How to create a screen flow
How to add a GetRecords element
How to use the Avonni Component Builder
How to configure Data Mapping
How to create an interaction
How to add a second screen flow
in Step 2
Step 8