Skip to main content

Resolving validation errors - "In field: excludeButtons, no such standard action:SmartFillEnrich"

Cause and solution to this Salesforce validation error surfaced on Layout metadata

Written by Mateusz Kochanowicz

Note: Gearset engineering team is currently building a Problem Analyzer (PA) that should automatically detect and strip the line of code causing an issue. Therefore, we're hoping that in the near future most deployments hitting this error can be auto-resolved without any manual XML editing.

While this fix is currently in active development, we encourage all users to apply the workarounds proposed in this article.

Error overview

You may run into this validation error when a Layout metadata component contains an <excludeButtons> tag referencing the standard action SmartFillEnrich.

It's likely that the error will happen even when the same Layout shows no difference between your source and target environments.

An example of the error message in our app:

"In field: excludeButtons, no such standard action:SmartFillEnrich"

Explanation of the error

Gearset's Support Engineering team suspects that Salesforce's Metadata API doesn't currently support deploying SmartFillEnrich, which may be a direct root cause of the error.

Why?

SmartFillEnrich appears to be a newer Salesforce action tied to Data Cloud's Einstein "Smart Fill" enrichment functionality, and it's possible that support for it is rolling out unevenly across Salesforce orgs. Because of this inconsistency, the action can be present in some orgs but not others, and validation can fail even in cases where the Layout compares as "No Difference" between source and target (as shown on example above).

Resolution

To fix this issue, remove the reference to SmartFillEnrich from the Layout's XML in the source environment of your deployment (e.g. from the feature branch if you're deploying via Gearset Pipeline).

Workaround for a PR failing validation in Gearset Pipeline

Follow below steps to fix the error:

  • Identify the affected Layout(s) from the validation error.

  • In your Git source branch open the Layout's XML and locate the line: <excludeButtons>SmartFillEnrich</excludeButtons>

  • Remove that line of code directly from the Layout's XML file in your feature branch, then re-run the validation for your PR.

    • If the above doesn't work, you'll need to re-add <excludeButtons>SmartFillEnrich</excludeButtons> into the feature branch.

    • Once done, use Gearset's Compare and deploy, or Commit more changes option in Pipelines UI to commit a deletion of this line of code (<excludeButtons>) directly into your feature branch.

    • And finally re-run the PR validation.

Workaround for direct org to org deployments

If you're running an org to org deployment where no Git branches are involved, follow these steps:

  • Create your deployment package and navigate to the deployment summary page in Gearset.

  • From the deployment summary page, you can download your .zip deployment package, and change it before re-deploying again.

  • Once package is downloaded locally, you'd need to remove the <excludeButtons>SmartFillEnrich</excludeButtons> from the affected Layout file(s), and re-pack it back into .zip.

  • Once done, navigate to Compare and deploy page in Gearset and use Local files option as the source of your deployment to the target org.

    • If for any reason Local files option isn't available for you, get in touch with a Team Owner on your Gearset team to check the Gearset permissions page for your team's account.

    • There is a configurable permissions in Gearset called Run Comparison with Local Files that can prevent Team Members from using Local files option for the deployments.

Similar errors for other deprecated or not yet supported standard actions

Similar errors can occur for other standard actions that Salesforce has deprecated or doesn't yet support deploying via the Metadata API. One of the examples is CreateSalesSummaries (see our related article) and ScheduleAppointment.

If you hit a similar "no such standard action" error referencing a different button, the same underlying cause and resolution generally apply.

Disclaimer: This error is returned by Salesforce directly, rather than Gearset. Even so, we offer guidance based on our combined experience with the Metadata API. Where possible, we try to help guide you to fix or avoid this error. In the case that this isn't possible, we may need to direct you to Salesforce support for further clarification.

Did this answer your question?