Force Platform Cookbook
The Force.com Cookbook
The Force.com Cookbook provides a set of recipes for implementing specific functionality in your Force.com applications. The recipes in the Cookbook provide expert methods, patterns, and solutions for building and improving on-demand apps, using all the technologies that contribute to the power of the platform.
This wide-ranging volume includes techniques for modifying standard Salesforce components, using workflow and approvals, searching and retrieving data in a number of ways, modifying default data actions and integrating applications through the use of Email or the Web services API. The book also contains helpful hands-on exercises to help you use a variety of tools that support the Force.com platform.
The examples in the book were contributed by Force.com experts, including some of the leading engineers on the Salesforce.com R&D team. The Cookbook brings together savvy, real-world advice from long-time Force.com experts.
Download the Book
- If you are a member of Developer Force, you have full access to the entire Cookbook in PDF format. Simply click through to download the PDF.
- If you are not a member of Developer Force, register to get FREE access. You'll then have full access to the book and much more.
- Anyone can also access the book online, in HTML format.
Table of Contents
Section 1: Searching and Querying Data
- Using the Enterprise WSDL and the AJAX Toolkit to Examine Your Data Model
- Using SoqlXplorer to Examine Your Data Model
- Choosing Between SOQL and SOSL
- Querying Multiple Related Objects Using Relationship Queries
- Finding a Contact, Lead, or Person Account
- Retrieving Data Based on a Relative Date
- Finding Search Data Based on Division
- Previewing Query Results
- Sorting Query Results
- Viewing Tags
- Viewing Records with Tags
- Writing Shorter Queries Using Outer Joins
- Making Apex Work in any Organization
Section 2: Managing Workflow and Approvals
- Managing Large Opportunities Using Time-Based Workflow
- Managing Lost Opportunities Using Workflow
- Using Workflow to Notify Case Contact for Priority Cases
- Using Workflow to Add Account Names to Opportunity Names
- Requiring Parallel Approvals for Large Campaigns
- Using a Matrix-Based Dynamic Approval Process
- Sending Outbound Messages with Workflow
- Tracking Outbound Messages from Workflow
- Updating a Field on a Parent Record
Section 3: Customizing the User Interface
- Overriding a Standard Button
- Creating a Button with Apex
- Creating a Consistent Look and Feel with Static Resources
- Formatting a Currency
- Building a Table of Data in a Visualforce Page
- Building a Form in a Visualforce Page
- Creating a Wizard with Visualforce Pages
- Creating Custom Help
- Creating a Custom Visualforce Component
- Overriding a Standard Page
- Redirecting to a Standard Object List Page
- Dynamically Updating a Page
- Overriding a Page for Some, but not All, Users
- Referencing an Existing Page
- Defining Skeleton Visualforce Templates
- Creating Tabbed Accounts
- Adding CSS to Visualforce Pages
- Editing Multiple Records Using a Visualforce List Controller
- Selecting Records with a Visualforce Custom List Controller
Section 4: Displaying Data and Modifying Data Actions
- Creating a Many-to-Many Relationship
- Storing and Displaying Confidential Information
- Averaging Aggregated Data
- Displaying Fields from a Related Record on a Detail Page
- Blocking Record Creation with Cross-Object Validation Rules
- Validating Data Based on Fields in Other Records
- Using Query String Parameters in a Visualforce Page
- Using AJAX in a Visualforce Page
- Using Properties in Apex
- Mass Updating Contacts When an Account Changes
- Bulk Processing Records in a Trigger
- Using Batch Apex to Reassign Account Owners
- Controlling Recursive Triggers
- Comparing Queries Against Trigger.old and Trigger.new
- Preventing Duplicate Records from Saving
- Creating a Child Record When a Parent Record is Created
- Using Custom Settings to Display Data
- Using System.runAs in Test Methods
- Integrating Visualforce and Google Charts
- Using Special Characters in Custom Links
Section 5: Creating Public Websites
- Registering a Custom Domain for Your Force.com Site
- Using Force.com Site-Specific Merge Fields
- Customizing the Look and Feel of Your Force.com Site
- Adding a Feed to Your Force.com Site
- Creating a Sitemap File
- Creating a Web-to-Lead Form for Your Force.com Site
Section 6: Integrating with Other Applications
- Retrieving Information From Incoming Email Messages
- Creating Records From Information in Incoming Email Messages
- Retrieving Email Attachments and Associating Them with Records
- Creating Email Templates and Automatically Sending Emails
- Email Recipes - Complete Code Example
- Updating Salesforce.com Data in the Mobile Application
- Retrieving a User's Location from a GPS-enabled Phone
- Enabling Single Sign-On with the Force.com Platform
- Implementing Single Sign-On for Clients
Section 7: Integrating Applications with the API and Apex
- Setting Up Your Salesforce.com Web Services API Applications
- Select a Development Language
- Create an Integration User
- Select a WSDL
- Generate a WSDL Document
- If You Use the Partner WSDL
- Log In to and Out Of the API
- Manage Sessions
- Change the Session Timeout Value
- Implementing the query()/queryMore() Pattern
- Batching Records for API Calls
- Using a Wrapper Class for Common API Functions
- Building a Web Portal with Salesforce.com Data
- Adding and Removing Tags on a Single Record
- Adding and Removing Tags on Multiple Records
- Updating Tag Definitions