Today I had to add 32 Checkbox fields to my Contact object. I could have done this by manually creating each field, but the thought of clicking through over 100 screens didn’t take my fancy. So, I thought I’d take the Force.com Metadata API for a spin.
Fortunately, there’s plenty of information available on this topic, the best of which are:
- Eric Santiago’s Video Tutorial: Rapid Salesforce Configuraton with Eclipse and Force.com that even includes a video with step-by-step instructions. Details on adding custom fields starts around 15 minutes into the video.
- Jeff Douglas’ blog post on Migrating Salesforce.com Configurations with the Metadata API & Force.com Migration Tool
First I updated my Force.com IDE extensions in Eclipse (always make sure you’re working on the most recent version!). One nice feature I see they’ve added is the ability to select exactly which objects are copied down to the IDE. I simply ticked ‘Contacts’ and it appeared in my Package Explorer.
Then, I just did a Copy & Paste job on the metadata, changing the labels for each field.
<CustomObject xmlns="http://soap.sforce.com/2006/04/metadata"> <fields> <fullName>BI_Owns_Active_Bamboo__c</fullName> <defaultValue>false</defaultValue> <label>Entity Owns Active Bamboo</label> <type>Checkbox</type> </fields> <fields> <fullName>BI_Owns_Active_Clover__c</fullName> <defaultValue>false</defaultValue> <label>Entity Owns Active Clover</label> <type>Checkbox</type> </fields> etc.
I then hit Save and the fields magically appeared in Salesforce.com — I was even somewhat naughty and did it straight into my Production instance (although best practice would be to do it in the Sandbox and then copy across / deploy the change).
Okay, I’ve still got a bit of work to do if I want to add the Checkboxes to my Page Layout, but at least the laborious part is over — the rest is all Drag & Drop!
The Bottom Line
- The latest Force.com IDE facility lets you choose Standard Objects without having to play with
- Creating lots of fields can be done quickly via the IDE, rather than the normal Force.com UI