Salesforce

Salesforce's "Where is this used?" vs. Salto's impact analysis

Written by
Pablo Gonzalez
Business Engineering Architect
March 10, 2022
3
min read

Table of Contents

View all guides

Heading

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

This is some text inside of a div block.

Impact analysis is the ability to foresee the impact of a change in your Salesforce configuration and metadata.

Salesforce provides native impact analysis for custom fields through the "Where is this used" feature, allowing you to see what other metadata components and configurations are using a field.


A common question that we get is how Salto's impact analysis is different from Salesforce's "where is this used"? So let's go through some use cases:

Get started with Salto

Everything you need for error-free Salesforce deployments

Try it freeTry it free

Support for standard fields

This Salesforce native feature lets you see where a custom field is used. However, if you want to know where a standard field (like Opportunity.StageName, for example) is used, you are out of luck.

For Salto, a standard field is the same as a custom field, just another "element."

Here's what the "where is this used" view looks like for the Opportunity.StageName field:


More than just fields

When we think about impact analysis in Salesforce, we almost always talk about where a field is used.

The truth is, custom fields are just one of many metadata types in Salesforce that can be used by other metadata types. Let's see other examples:

Where a visualforce page is used



All the places where an email template is referenced


The above is an example of a textual search, which is another way of doing impact analysis.

The org comparison tool every admin needs

Have you ever seen XML-free org comparison tool?

Try it freeTry it free

Exactly where a field is used

The "where is this used" feature in Salesforce will only show you the name of the metadata where a field is used, but it won't tell you exactly where within that metadata:


Here, I can see that the field is being used in many flows. But exactly where in those flows? In screen elements? Decision elements? Fast updates? The only way to know is to open the flow and inspect all the elements one by one.

In Salto, we can tell you the exact location of the field within the flow's metadata:


In the above example, I can see the field is used in 3 different elements within the flow.

When it comes to apex classes, you can even see a preview of where the field is used without going through the entire code. In the following example, we can see how the Opportunity.StageName is used by the apex classes.


Dependencies at a glance

The final key element of our approach to impact analysis is that we can annotate any metadata with the dependencies we know exist without you having to ask for it explicitly.

Let's see an example:


We are seeing an apex class and its sibling metadata file, which contains the apiVersion, name, etc. Salto expands this file by adding generated_dependencies, a list of other elements that the apex class has a reference to.

In this particular example, we can see that the apex class references two other apex classes, the standard Lead object and another custom object

That's it for today. Until the next post!

Written by
Pablo Gonzalez

Pablo is a Business Engineering Architect at Salto. He is the developer of HappySoup.io and has 11 years of development experience in all things Salesforce.

Written by