Newsletter

B2B Solution Architect: Commerce and Integrations

Salesforce B2B Solution Architect

I took and passed the Salesforce B2B Solution Architect exam last week. 🎉

What is the topic of this certification exam and curriculum, you might ask.

Salesforce B2B Commerce is a cloud-based platform that enables businesses to streamline their sales and operations processes while providing a seamless buying experience for their customers. The platform offers a range of features and functionality designed to help businesses of all sizes manage their sales operations effectively and efficiently.

One of the key features of Salesforce B2B Commerce is its ability to provide a personalized buying experience for customers. The platform allows businesses to create custom catalogs, pricing, and promotions for their customers, based on their unique needs and preferences. This personalized approach helps build stronger customer relationships and increase customer loyalty.

A Salesforce B2B Commerce solution also integrates a range of Salesforce products (a multi-cloud setup): The products that often come to play are:

  • Sales Cloud
  • Service Cloud
  • Revenue Cloud (CPQ and Billing)
  • Digital Experience
  • B2B Commerce Cloud
  • Marketing Cloud
  • Tableau
  • Einstein Capabilities
  • CPQ and B2B Commerce Connector
  • External System Integrations

These integrations enable businesses to create a seamless customer journey across multiple touchpoints, from initial lead generation to final purchase.

The exam was a fun exam that mainly consisted of scenario-based questions. The passing score is 58%, but don’t let that number fool you. Most of the questions are looking for a selection of 2 correct answers out of 4 choices. This makes passing more difficult compared to the classic one-choice out of possible alternatives method.

This post was originally made to LinkedIn August 1st, 2023.

Read the previous post: Datatable Component – Salesforce Screen Flow

Read the popular post: One Big Record-Triggered Flow or Multiple?

Standard
Newsletter

Datatable Component – Salesforce Screen Flow

The Salesforce Flow Datatable component allows users to easily display and select data in a table format, making it ideal for various flow builds. The Salesforce Flow Datatable component enables users to sort, filter, and search through data.

There are mainly two screen flow areas I use the Datatable component for:

1) Related record operations: I need the user to select single or multiple records related to a record the flow is working on—for example, contacts on the account or cases on the contact.

2) Menu choice options: When I branch my screen flow logic, I need to give the user a choice that involves showing data in multiple columns. For example, add a product to the Opportunity.

In the latest release, the Datatable component received a few nice updates. Now we can add a search box on top of the Datatable. And a few limits have been updated: The component can show up to 1,500 records and supports a selection of up to 200 rows.

There are excellent functionalities I like to point out:

  • You can set up your data table to accept single-choice or multiple choices. You can also use this component to display data when you set it up as View Only. The single choice is in the output variable First Selected Row, and you don’t have to loop to get to the individual column/field values. One UI limitation is that the user cannot deselect after selecting a row in the Datatable.
  • You can rename the column header labels. Many fields have field names that don’t make great headers. Change them. You can use emojis in header labels as well.
  • You can set columns to Wrap the overflowing Text or Clip it.
  • You cannot allow the user to edit the values in the Datatable. For that, you still need the UnofficialSF Datatable component. If you are okay with having the user edit each record separately on a different screen, you can cycle through detail screens after the selection.

This component is an excellent addition to the Flow Builder.

If you want to learn more about the Salesforce Flow Datatable component, check out this Salesforce page.

This post was originally made to LinkedIn on July 3rd, 2023.

Read the previous post: HTTP Callout and Screen Flows

Read the popular post: One Big Record-Triggered Flow or Multiple?

Standard
Flow, Newsletter

Winter 23 Flow Formula Editor

Hello folks,

Let’s get started with the Winter 23 Flow enhancements, shall we? Who doesn’t like to save time and effort?

One of the biggest improvements is the formula resource editor with the instant syntax check button.

This functionality first came for the start element and the collection filter in the previous releases. Now we get the same editor across the board in the flow builder.

No more writing a formula, saving the flow, and crossing your fingers hoping it won’t yield an error message.

You can check for errors as you build your formula on the same screen using the Syntax Check button.

One disclaimer is that I saw some inconsistent behavior in my preview Dev Org:

Some of the collection filter formulas I built that I thought should pass, did not pass the syntax check. But we still have time until the release. I am sure it will be ready by then.

Now content announcements:

  • I am super excited that my session proposal has been accepted for Florida Dreamin’ 2022. I will be presenting there for the third year in a row. My session is titled: “Flow Design & Mapping: From Idea to the Flow Canvas“. It will be super interesting, I promise you. Come and see it: Register for the event here.
  • Last week, I presented the new Winter 23 Flow functionality at a virtual Jacksonville Salesforce Saturday event. I tried out the new enhancements live and recorded the event. Watch Winter 23 Flow Features – Salesforce Saturday here.

Enjoy.

P.S. Originally published on 08/30/2022.

Read the previous issue of the newsletter here.

Subscribe to the weekly educational Salesforce Flow Tips newsletter here.

Standard
Newsletter

Start Element Formulas

Hello folks,

How cool are the brand new start element formulas?

One of the best use cases for it is the Record Type criteria. You can now check for the RecordType.DeveloperName or the RecordType.Name in your start element. This was not possible before. You either had to hardcode the RecordType.Id or defer the criteria to a decision element, making the flow less efficient.

What else can we do with start element formulas?

When you want to trigger your flow in case the triggering object record is created or updated, and you want to build sophisticated criteria, then the formula entry conditions are ideal for this purpose.

A popular use case is the auto-naming of records when a new record is created. For example, you can append the Industry picklist value to the Account name using a before-save flow.

Here is the formula resource that does that:

The difficulty is when you want to trigger such flow on create and update. If you don’t build your flow carefully, you will append the same thing to the name multiple times based on multiple updates. You will need to check whether the auto-name logic ran before if you want to avoid this outcome.

Here is the start element formula that ensures that:

I recommend you go and play with this functionality yourself if you haven’t already. You will like it. It is super powerful.

This is the only area where we have a function, a logical operator picker, and a syntax check button within flow.

If you have comments on this topic, please join the discussion on Twitter or LinkedIn.

Enjoy.

P.S. Originally published on 07/18/2022.

Read the previous issue of the newsletter here.

Subscribe to the weekly educational Salesforce Flow Tips newsletter here.

Standard
Newsletter

Standard or Custom Object?

Hello folks,

Recently, I posted polls on Twitter asking about standard objects: What cloud license does each standard object come with? The answers to these questions are widely unknown. You will see that only about half of the respondents got the answer right.

As a response to these posts Emily McCowan, an Architect, posted this writeup and clarified some of the confusion around this topic. Please read it, it is very good.

You may know the data model very well. You will also need to know what standard objects come with your license to decide whether to use them when the need arises.

Enjoy.

P.S. Originally published on 07/08/2022.

Read the previous issue of the newsletter here.

Subscribe to the weekly educational Salesforce Flow Tips newsletter here.

Standard
Newsletter

The Importance of the Data Model

Hello folks,

I wrote this several times before:

If you want to attempt Actions and Related Records flows, you need to know the schema very well. This can be easily done with the schema builder in your Org.

There is another good way for reviewing the data model. The Architect’s site by Salesforce has the data model diagram posted for the most popular Clouds. You can go there and view and download the diagrams in pdf, png and Lucidchart format:

Click here for the Architect’s Site by Salesforce.

You can see the Sales Cloud example image from the Architect’s site above. Please click on the image to see a bigger version.

Enjoy.

P.S. Originally published on 06/27/2022.

Read the previous issue of the newsletter here.

Subscribe to the weekly educational Salesforce Flow Tips newsletter here.

Standard
Newsletter

Which Object Do You Trigger On?

Hello folks,

Suppose you know you need a record-triggered flow: You want to perform automated steps based on the transactions executing in your Salesforce Org.

If you deal with related records, you know you will be in the after-save mode (a.k.a. Actions and Related Records).

If you have come this far, this means you have already found answers to two essential questions:

  1. What type of flow do I need?
  2. If it is a record-triggered flow, will it be before-save or after-save?

You know that I answer a lot of flow questions on a regular basis. My observation is that folks often struggle with the next critical step:

Which object will I be triggering on?

Based on the previous decisions, we know you are already dealing with at least two objects. However, suppose a junction object is involved, like an Opportunity Contact Role that connects the Opportunity to Contacts or an Opportunity Line Item that connects the Opportunity to the Products. In that case, you may have three or more objects involved.

This is the part where things get confusing:

Which object will I trigger on, and what object(s) will I create/update?

The answer is surprisingly simple when you fill in the blanks in this format:

I want to create/update __ Object records when __ Object records are created/updated.

What you write in the second blank will show you what object you are triggering on.

Once you know that, you will need to go from one Object to the other using the relationships. Depending on the depth and the structure, you may use multiple gets.

I thought I’d step back from technical posts for now and focus on the fundamentals again.

Enjoy.

P.S. Originally published on 06/15/2022.

Read the previous issue of the newsletter here.

Read the next issue of the newsletter here.

Subscribe to the weekly educational Salesforce Flow Tips newsletter here.

Standard
Newsletter

The Answer for the Collection Filter & Collection Sort Challenge

Hello folks,

Last week I told you that I challenged myself to use as few elements as possible when searching for particular records among the cases in my Org. You can find the Collection Filter and Collection Sort post here.

I started with a get element that returns all the cases that have both account and contact assignments. I was able to extract the following information with only one get element:

  • Most Recently Modified Case
  • Oldest Modified Case
  • Oldest Modified Case Account Name
  • Number of Cases by this Account
  • Most Recently Closed Date for this Account
  • Contact Id on this Case
  • Number of Cases for this Contact
  • Oldest Closed Date for this Contact on this Case

It took me 21 elements, including one get, to find all these records. How did I achieve this? Check the image above for the details. Click on the image to see a bigger version.

Enjoy.

Andy Engin Utkan

P.S. If you like this newsletter, forward it to your friends. They can sign up for it here.

Enjoy.

P.S. Originally published on 06/07/2022.

Read the previous issue of the newsletter here.

Read the next issue of the newsletter here.

Subscribe to the weekly educational Salesforce Flow Tips newsletter here.

Standard
Newsletter

Collection Filter and Collection Sort Challenge

Hello folks,

How powerful are the collection sort and collection filter elements? How should you use them?

I experimented with collection filter and collection sort elements to see how far I can go using only one get element. In other words, I wanted my flow only to use up one SOQL against the governor limits.

I started with a get element that returns all the cases that have both account and contact assignments. I was able to extract the following information with only one get element:

  • Most Recently Modified Case
  • Oldest Modified Case
  • Oldest Modified Case Account Name
  • Number of Cases by this Account
  • Most Recently Closed Date for this Account
  • Contact Id on this Case
  • Number of Cases for this Contact
  • Oldest Closed Date for this Contact on this Case

Please see the image for the results.

How many elements did I use? Did I have to loop?

Here are the answers:

  • Your get element gives you sorting functionality. Use it.
  • You have to loop to get the min and max values, such as the oldest and most recent, sorted by Date and Time. But you need to loop only for one iteration. So you can exit after you assign the first record to a variable.
  • Your loop can use the existing sort or the reverse sort. Use this functionality.
  • Initially, I used a counter variable to exit the loop, but this was unnecessary. You need to exit the loop regardless after the first iteration. Insert a decision and connect both branches to the next element outside the loop.
  • You can get a count of records by using an assignment element with the operator “equals count”.

I experimented with the formula criteria inside the collection filter element without much luck. I think this functionality does not allow for filters with variable values on the right side of the equation. “ContactId on the current record = ContactIdVariable” formula did not work.

What do you think? Can these elements save you lengthy loops and executed elements?

How many elements, excluding the start or the end element, did I use to extract this information.

Join the discussion on LinkedIn here or Twitter here.

Live session recording links:

Watch Melody Lwo of Salesforce Flowsome and me either on LinkedIn here or YouTube here.

Enjoy.

P.S. Originally published on 05/30/2022.

Read the previous issue of the newsletter here.

Read the next issue of the newsletter here.

Subscribe to the weekly educational Salesforce Flow Tips newsletter here.

Standard
Newsletter

New Features of Summer 22 (continued)

Hello folks,

Summer 22 is arriving soon, and the second part of my quick tour is here.

In the last issue of the newsletter, I showed you a few changes that will be released soon. Let’s continue.

Screen flow enhancements:

1-Collapsible headings for sections: We received the functionality of multicolumn sections in screen flows a few releases ago, and I love them. With this release, we get a header, which makes the section collapsible.

2-Dynamic Forms (Fields – Still Beta) supports Name and Address Fields: Fields functionality is a very promising functionality that now supports Name (Salutation, First Name, Last Name) and a full Address. I don’t understand why this is still in beta, though.

3-Dynamic Forms Address automatically populates address: When you combine the new Address field with the Google Typehead functionality, you give the user the power to populate the address fields automatically.

Some other notable enhancements:

1-Orchestrations are deployable via change sets now.

2-Associated flows can be opened from within the Orchestration via a link.

3-You can order triggered Orchestrations with Flow Trigger Explorer exactly as you do with flows.

I want to add that dragging items on the Flow Trigger Explorer changes your flow’s running order parameter setting. The screen shows you a confirmation screen explaining the change.

The big news of this release is the addition of the No-Code Flow Testing (Beta), though. I am super excited about this, but I will take my time to review it before going into more detail.

I am heading to Texas Dreamin’. I will present there on the Flow Trigger Explorer and the Orchestrator. Come to my session if you will be there. If you won’t be there, no worries; I will present similar content soon virtually. Stay tuned.

Enjoy.

P.S. Originally published on 04/26/2022.

Read the previous issue of the newsletter here.

Read the next issue of the newsletter here.

Subscribe to the weekly educational Salesforce Flow Tips newsletter here.

Standard