Force Platform Developer Guide
The Force.com Developer Guide
The Force.com Developer Guide presents a complete picture of the capabilities of the Force.com platform. Aimed at developers with its concise coverage, the Guide provides a framework for understanding the Force.com platform with a narrative journey through the entire platform.
The Developer Guide covers both native capabilities, implemented through wizards, and procedural capabilities, created with tags and code. The Guide also provides an introduction to many of the tools you will use in your development efforts, as well as a description of deployment options for your Force.com applications. The Developer Guide also includes coverage for Email Services and Force.com Sites, designed for interaction with the world outside of the Force.com platform.
Sample chapter
Chapter 7, on security, and Chapter 12, on advanced use of Visualforce, of the Developer Guide are freely available via this download.
Download the entire book
If you are a member of Developer Force, you have full access to the entire Developer Guide in PDF format . If you are not a member, register to get FREE access.
Table of Contents
Chapter 2: Starting Your Force Platform Application
- Laying the Groundwork
- Welcome to the Force Platform
- The Sample Application
- The Data
- Building Blocks of a Force Platform Application
- Creating a Force Platform Application
- Creating an Object
- Custom Object Definition
- Record Name
- Optional Features
- Deployment Status
- Object Creation Options
- Creating a Tab
- Adding Fields to Your Object
- Entering Data
- Modifying Page Layout
- Filling Your Object With Data
- Using Import Wizard
- Using Data Loader
Chapter 3: Relationships
- Types of Relationships
- Creating a Relationship
- Adding Fields
- Loading Your Data
- Refining the User Interface
- Many to Many Relationships
- Creating a Junction Object
- Implementing a Many-to-Many Relationship
- Many-to-Many Relationships at Work
- Roll-up Summary Fields
Chapter 4: Expanding data options
- Picklists
- Picklist Usage
- Adding Picklists
- Multi-select Picklists
- Dependent Picklists
- Using Dependent Picklists
- Record Types
- Formula Fields
- Formula Fields for Calculation
- Formula Fields for Related Object Display
- Formula Fields for Integration
- Formula Fields for Data Realization
- Validation Rules
Chapter 5:Workflow and Approvals
- Workflows
- A Simple Workflow for Alerts
- Modifying the Simple Workflow
- Workflow Field Updates
- Timed Workflows
- Approvals
- Designing Your First Approval
- Implementing Your First Approval
- Your Approval in Action
- Modifying Your Approval
- Email Approvals
- Parallel Approval Steps
- Approvals and Beyond
Chapter 6: Reaping Value Through Reports
- Searching
- Adding Search to the Sidebar
- Using Search
- Filters
- Tagging
- Reporting
- Force Platform Reporting Concepts
- Creating a Standard Report
- Saving Your Report
- Creating a Summary Report
- Creating a Matrix Report
- Custom Report Types
- Defining a Custom Report Type
- Using a Custom Report Type
- Analytic Snapshots
- Creating an Analytic Snapshot
- Scheduled Reports
- Dashboards
- Creating a Dashboard
- Creating a Dashboard Component
- Your Dashboard at Work
- Multiple Levels of Dashboards
Chapter 7: Protecting Your Data
- Force Platform Security
- Organization Security
- User Security
- User Authentication
- Network-based Security
- Session Security
- Auditing
- Force Platform Security Framework
- Administrative Security
- Profiles
- Administrative permissions
- Component-based Security
- Application Permissions
- Tab Permissions
- Record Type Permissions
- Apex Class and Visualforce Page Permissions
- Object Permissions
- Field Level Security Permissions
- Record-based Sharing
- Record Ownership
- Organization-wide defaults
- Sharing
- Ways to share
- Sharing Recipients
- Changes Which Affect Sharing
- Apex-managed Sharing
- Roles
- Designing Security
Chapter 8: The Force Platform IDE
- Metadata & the Metadata API
- Files and Types
- Metadata Interaction
- The Force.com IDE
- Installing the Force.com IDE
- Overview of the Force.com IDE
- Exploring the IDE
- Working with the Force.com IDE
- Creating a Project
- Using the Schema Explorer
- Working with Metadata Files
- Team development and the Force.com IDE
- Resolving Change Conflicts
- Team development with a Revision Control System
- Install subversion
- Create a Repository
- Installing the Subclipse Plug-in
- Configuring Subclipse with a Repository
- Save your Project to the Repository
- Adding a Second Developer
- Making and Saving Changes
- Comparing Versions
Chapter 9: Visualforce Pages
- Why Visualforce?
- Visualforce Concepts
- Visualforce Pages
- Visualforce Controllers
- Developing Visualforce Pages
- Creating Your First Page
- Displaying Related Records
- Using Links to Standard Force Platform Pages
- Adding a Related Detail View to a Visualforce Page
- Partial Page Refreshes
- Get Some Action
- Visualforce Pages and Data Sets
- Standard Set Controller Basics
- Records Per Page
- View Selection
- Overriding Views with Visualforce Pages
- Mass Actions with Visualforce Pages
Chapter 10: Apex
- Introducing Apex
- What is Apex?
- How Can You Use Apex?
- Why Required Testing?
- How Is Apex Different?
- Working With Apex
- How Do You Create Apex Code?
- Apex Code and Security
- Apex Code and Web Services
- Apex Code in the Runtime Environment
- Apex Basics
- Apex Statements
- Apex Variables
- Apex Expressions and Operators
- Apex Data Objects
- Apex Collections
- Apex Lists
- Apex Sets
- Apex Maps
- Apex Conditional Logic
- Apex Loops
- Future
- Apex Exception Handling
- Apex Classes
- Defining a Class
- Variables
- Class Methods
- Properties
- Writing Apex code
- Using the Force Platform IDE
- A Simple Script
- Adding Repetition
- Creating a Method
- Passing Values
- Adding A Class To Your Project
- Adding More Methods
- Test Methods
Chapter 11: Apex and Data
- Triggers
- Trigger options
- Trigger Context Variables
- Exceptions in Triggers
- Creating a Trigger
- Force Platform Query Languages
- SOQL
- SOQL syntax
- Relationship Queries
- SOQL in Action
- SOSL
- SOSL Syntax
- Dynamic SOQL and SOSL
- Data Manipulation with Apex
- Apex DML Syntax
- Data integrity
- Writing data
- Bulk data operations with Apex
Chapter 12: Extended Visualforce Components and Controllers
- Visualforce Components
- Creating a Visualforce Component
- Adding Attributes to a Component
- Using a Visualforce Component
- Controller Extensions
- Modifying Your Force Platform Database
- Creating a Controller Extension
- Populating a List of Options
- Your Visuaforce Page with Controller Extension
- Adding an apex:selectList
- Repopulating the selectList
- Saving the Record
- Integrating the page
- The Next Step
- Conditional Display of Fields
- Adding a Value to the selectList
- Conditionally Displaying Fields
- Holding the New Value
- Saving the New Value
- Checking For a New Position Type
- Adding a New Position Type
- Setting the New Position Type Lookup Value
- Saving the Position Record
- Catch Those Errors
- Visualforce Custom Controllers
- Creating a Custom Controller
- Saving the Data
- Integrating Your Wizard
Chapter 13: Email Services with the Force Platform
- Handling Inbound Emails
- Implementing the InboundEmailHandler Interface
- Parsing the Inbound Message
- Loading the Position
- Checking for the Candidate
- Creating the Job Application
- Handling Attachments
- Setting up Email Services
- Testing Inbound Emails from Applicants
- Sending Email
- Basics of Sending Email
- Sending Email with Attachments
- Sending an Automatic Email Response Back to the Applicant
- PDFs with Visualforce Pages
- Creating a PDF with Visualforce
- Attaching a Visualforce PDF to an Email
- Visualforce Email Templates
- Creating an Email Template
Chapter 14:Taking Your Application Public with Force Platform Sites
- What Are Force Platform Sites?
- Registering for and Creating Your First Force Platform Site
- Overview: Creating the Public Recruiting Application
- Creating the Public Job Postings Page
- Creating the Custom Controller
- Creating and Enabling the Job Postings Page
- Granting Public Access Settings
- Setting Your Active Home Page
- Customizing the Look and Feel of Your Force Platform Site
- Creating the Job Detail Page
- Enabling Users to Submit Job Applications Online
- Extending the Standard Apex Controller
- Creating the Confirmation Page
- Creating the Application Page and Linking to Job Details
- Testing the Online Application Process and Verifying the Results
- Configuring Registration and Login for Your Force Platform Site
- Configuring the Customer Portal
- Associating the Customer Portal with Your Site
- Creating an Account and Updating the Account ID
- Associating a Role with the Account User Record
- Testing Your Force Platform Site
Chapter 15: Deployment
- Application Development Methodology and Architecture
- Simple Deployment with the Force Platform IDE
- Preparing For Deployment
- Using the Force Platform Deployment Wizard
- Deployment Using the Force Platform Migration Tool
- Packages
- What is a Package?
- Creating a Package
- Adding Components to a Package
- Uploading a package
- Installing the Package
- Managed Packages
- Sandboxes
- Sandbox Comparisons