Red Argyle Logo

Patterns
The Salesforce Blog with Tailored Goodness

Help Text Help!

We all know that it’s easy to forget to add inline help text when creating custom fields in your Salesforce org.  And, of course, it’s especially easy to forget when you’re working on a huge project with many custom field requirements and little time to set them up. This obviously leads to a situation later on when you’re wrapping up the project and you come to the shocking realization that you’ve added so many fields that even you don’t know what they do, let alone any other poor soul who needs to work with them in the future. Then you start panicking, because even though it seems like there would be an easy way to find fields with missing help text, there is not. It would require a lot of manually clicking through the Salesforce org settings, and nobody wants to do that at the end of a project. Especially when it’s supposed to be done in a couple of hours!

Don’t Panic! Luckily, we just ran into this issue, and we were able to find these elusive fields by using the Force.com Developer Console with a simple anonymous Apex script execution.

As you can see, the script makes use of the Schema.describeSObjects() method to expose the metadata of object types in question. We then loop through each Schema.DescribeSobjectResult and then each of its fields(Schema.SObjectField) to extract the field names and help text. If the field is custom (ends with __c) and has no help, we print a message out to the log. Once this script is executed, you can take a look at the Execution Log in the Force.com Developer Console and easily see what fields were found to have no help text.

Hope this tip saves you some time. I know it did for us!

Comments

  • Is it possible to add the help text the same way? Anonymous script etc?

    • Tom Patros says:

      Shannon – help text can be modified using the Metadata API and the Tooling API. Depending on your level of “nerditude”, there’s several ways to do it.

      The easiest way is to get the metadata of an object in the Force.com IDE (or Mavensmate), search for “inlineHelpText” in the file (it’ll be an XML file), and update the values that are blank. Then, save the file, which will push those changes to Salesforce.

      You can get fancier from there with the Tooling API (loop through fields, update where needed via code).