What is a Custom Object?
Custom Objects allow Salesforce to extend functionality past the native CRM suite (Leads, Accounts, Opportunities, etc). Custom Objects are simply tables you create to store records that categorically do not belong in any of the existing tabs or objects. For example Human Resources is a department that does not fit well inside the native Salesforce.com tabs, with maybe the exception of Accounts and Contacts. Where would you store a new hire’s application, accrued vacation, 401K information, reviews, or payroll data? You could try to cram all this information on the Contact record but that would not be a great solution. All the aforementioned are good candidates for a Custom Object.
The key to setting up Custom Objects in Salesforce is understanding their data relationships to other Standard or Custom Objects. For example an employee probably has only one employment application (a one-to-one relationship from the Contact to the Application). However, there might be multiple payroll records – such as time cards for each pay period or possibly a history of raises over time. These would be one-to many relationships (one Contact to multiple Payroll records). An employee’s review might be an example of a many-to-many relationship. Multiple reviews might be given to an employee by multiple people over time.
Native versus Custom Objects
I’m a big advocate of using native Salesforce.com components whenever possible. It’s not because I’m lazy and don’t want to build out a custom object, it’s that if that you can use a native object, you’re probably going to get some additional benefit in terms of reporting, or some other native feature.
Here is a good example. I was working with a corporate real estate department and they want to track future rent liability on hundreds of properties. They want to track rent, insurance and CAM charges (Common Area Maintenance) the company would have to pay each month, this year, next year, etc. Additionally they wanted to load in any pre-negotiated increases against their properties so that their forecasts included these rates.
The solution I used leveraged Opportunities and Products. Surprised? What sealed the deal for me is the native ability to schedule revenue on products. You have the ability schedule a start date, a recurring amount and an end date. The products were Rent, CAM, and Insurance.