This post is related to Enabler4Excel – Review, Guide Tips. The aforementioned ‘Analyze Layouts’ function, combined with Field Utilization, really raises the bar for providing functionality to Salesforce admins on how to analyze meta-data.
The Field Utilization function enables a user to specify an object and select either all fields under that object or a specific set of fields, optionally input a SOQL, and then select ‘OK’; which runs a field utilization report.
The outcome is a report in a worksheet which identifies low utilized fields. For example, if my input is the Account object, all fields to report on and no SOQL, and if that returns 40,000 Account records then the report will show the % utilized and how many records have that field populated.
This is really valuable information because it very easily identifies what fields are not being used. To identify if a field has always had low usage or if the trend is that only recently, it’s usage has started to increase slightly, you can always run the report a few times with different SOQLs (for example, ‘created date > = 1st Jan 2014 and < = 31st Dec 2014’).
The only limitations I have found that, although ‘Analyze Layouts’ is very rapid, ‘Field Utilization’ does take a lot longer to calculate. This is to be expected because of the nature of the calculations however, when selecting numerous fields for many thousands of records, you may receive a ‘time out’ error. So for those reasons, ‘Field Utilization’ is best for small to medium sized data sets. Another limitation is that large text field types cannot be reported on. It is not obvious from the field name if a field is a large text field either when you select which fields you wish to run the field utilization function on. So you could be half way through the running when all of a sudden, a large text field is met and an error is returned.
However, Field Trip is an excellent alternative for large data sets. A batch apex process is auto generated whenever a ‘trip’ is invoked. It is slightly harder to use than Enabler4Excel but is definitely worth it. I have used Field Trip successfully to report on over 3 million case records to get the accurate field utilization.
Unfortunately, the limitation that Field Trip has is that it is hard to select all of the fields to be analyzed when you wish to input a SOQL. Unlike in SQL, there is no ‘select all’ function via the * symbol in SOQL.
For example, if I wanted to run a Field Trip on all case records that had been created since January 1st 2015, my SOQL statement would be ‘CreatedDate>=2015-01-01’ and then I would have to manually select the fields too because I couldn’t say ‘SELECT * FROM Case WHERE (SOQL)’. Sadly, if you select too many fields when your ‘trip’ has a SOQL, you will return an error. So for these reasons, it seems best to use Field Trip when you want a full analysis with no SOQL. If you require a SOQL, ‘Field Utilization’ would be best although you would need to de-select the large text fields beforehand.