Salesforce Features
Extended Data Model Customization
More Power for Your On-Demand Database
- Customize or extend the Salesforce data model with clicks, not code
- Leverage the full power of standard objects in your custom objects
- Enforce policies through smart defaulting and enhanced security
- Drive better decisions and exercise business control through formulas
Custom objects and fields are essential tools for customizing your Salesforce application or building entirely new custom applications for your organization. They abstract database tables into business entities and encapsulate a rich set of built-in functionality so that you can customize with clicks—not code—and upgrade with ease. Salesforce.com calls this meta customization, and Winter ’07 delivers significant innovations that expand the breadth and depth of applications that you can create on the Apex platform.
This feature is available in all Editions except where noted.
- Sharing Rules on Custom Objects: You can create sharing rules and manual sharing overrides on custom objects, to model complex record-level security requirements. (Enterprise and Unlimited Editions Only)
- Field History Tracking on Custom Objects: Meeting Sarbanes-Oxley (SOX) and other compliance requirements is easier with the ability to audit changes to any fields on custom objects and maintain a history from which you can report or extract to an external archive.
- Queues on Custom Objects: Do you find yourself using cases repeatedly for various purposes because of its queuing and assignment rule capabilities? With Winter ’07, custom objects support the same rich functionality, giving you greater flexibility in your custom development.
- Recursive Relationships: Create “Self” lookup relationships to model a relationship between two records of the same object type (e.g., a project and its related projects).
- Smart Defaulting of Field Values: Increase user productivity by providing default field values for text, number, date, and date-time fields. You can use static value defaults or use the powerful Apex formula language to implement dynamic user, role, or profile-specific defaults.
- Formula Field Enhancements: New formula field capabilities in Winter ’07 include:
- Maximum formula field size is increased from 1,000 to 1,300 characters.
- You can perform advanced text, number, and date-time handling with the new FIND, SUBSTITUTE, DATEVALUE, MIN, and MAX functions.
- Formulas can reference record type and user, role, and profile fields for the current user.
- Using new workflow capabilities, you can update other standard or custom fields on the record with the results of your formula computations.
- Custom Hierarchy Fields: Adding this custom lookup field to the user object identifies each user’s manager and allows you to utilize this relationship for routing approval requests.
- Restricted Editing of Custom Fields on the User Object: When you create custom fields on the user object (e.g., “Approval Authority Amount”), you can set the “Restricted Field” flag to prevent users from editing this value in their own user records.

6 Comments
December 14
How will recursive relationships look in reports?
If i have a master contract with some subsidiary contracts will i be able to get out a structured report?
December 15
Recursive relationships are only possible on custom objects, so enabling this for Contracts will not be possible with Winter '07.
The reporting engine allows you to get a report that includes all fields for the current record and all fields on the related record of the same object type.
December 28
Still not possible to reference fields in related objects in a custom field?
(e.g. opportunity product fields in a formula field on the opportunity level)
December 29
Will we be able to summarize fields from child tables into a custom field in a master relationship? Will we be able to reference field in a related table now?
January 2
what is the expected date of release?
May 2
How can I create a picklist and enable history tracking? I want the same "stage" functionality on an Opportunity put on the contact page?