Is Salesforce field usage and analysis an overrated use case?

Ever since I released HappySoup.io, I've demoed it countless times, always showing the "where is this used" functionality for custom fields.

No alt text provided for this image


And why wouldn't I? It looks very nice, and it's a relatable use case. Most admins have needed to understand where a field is used at some point in their careers.

And HappySoup is not alone; there are other apps in the appexchange that specialize in field usage analytics and visualization. My current employer, Salto, offers good capabilities for this as well.

No alt text provided for this image

But, is understanding where a field is used really that important? One of the most common arguments is that you should know where a field is used before you delete it.

In 11 years in the Salesforce ecosystem, I've never needed to delete a field. Not once. If I had to delete a field, I would simply hide it from the page layout and move on with my life. I've spoken to a few admins who also confessed that would be their preferred approach.?

Now, obviously, you don’t want to leave a bunch of unused fields just sitting around. That’s a recipe for technical debt. I’m also not advocating this approach; I’m simply telling it how it is for many admins out there.?

The correct approach would be to indeed remove all references to the old field and then delete it, and for that, you need good impact analysis capabilities.

Still, given that many admins (and myself in the past) choose not to do this and simply hide the field, it's worth asking the following question:?

If being able to see where a field is used is not a big deal, then what is?

The answer is in the question itself. Fields are just one tiny part of your Salesforce org.?

What about other areas in your org that also have dependencies? For example, how about where an existing flow is being used? or where an email template is being referenced in apex and process builders??

Another challenge in the same realm is the ability to read and understand your org consistently. For example, flows can only be truly understood if you open each element one by one and keep a mental map of what's going on.?

No alt text provided for this image

The same is not true with workflows; they are super easy to read and understand.?

What if you are trying to understand the dependencies between your CPQ data? There's no "where is this used" on CPQ Products.

No alt text provided for this image

So what I think most admins need today is something that can help them understand dependencies in their org (regardless of the metadata type, not just fields) and that brings a consistent approach for learning about what's inside the org, be it flows, workflow rules or custom data from a managed package.

How do I do that?

Regarding custom fields, I still think HappySoup.io offers the best and most comprehensive support for understanding where they are being used, and their data utilization percentage.

No alt text provided for this image


For flows, CPQ data, and other complex metadata types, Salto’s free tier offers excellent support as well.

For example, here's a demo of how you can understand your CPQ data using Salto

What if you need to find hardcoded values? There's also support for that

What if you are working on a complex flow built by someone else and you need to quickly understand what’s going on? Salto also offers an unprecedented way of visualizing these complex metadata types

No alt text provided for this image

In the above screenshot, I can easily find all the places where the accountVariable is used in a complex flow.?

Cross-application dependencies

More importantly, Salesforce does not live in a vacuum. It’s likely tied to other systems, like Zendesk, Workato, etc. So being able to see where a field is used within Salesforce is only half the battle.?

What if the field is used in a Workato recipe or in another system? HappySoup.io and the “Where is this used” button will not offer much help there.

You need a system that can consume the metadata of multiple business applications and show the dependencies between them.?

Again, with Salto, I can see that the Opportunity Stage field is used both within Salesforce and in a couple of Workato recipes.

No alt text provided for this image

Is Salto the only way?

I’m not suggesting that Salto is the only way to achieve this functionality described here, but it is the only vendor that I know that has a free offering to do so. There are other free products on the appexchange that provide some similar functionality, but not the complete set that I’ve described here.?

If you know of any other free product that satisfies all these use cases, do let me know in the comments! In the end, I suggest you do your own research and figure out which app best fits your needs.

Verdict

Going back to the topic at hand: is field usage and analysis an overrated use case? Maybe. It’s certainly important but it’s not the holy grail of impact analysis and org documentation. It’s simply the tip of the iceberg.

Vincent FINET

Senior Program Architect @ Salesforce | 22 Salesforce Certifications

2 年

Very interesting article Pablo!

要查看或添加评论,请登录

社区洞察

其他会员也浏览了