Preface......................................................................................................1
Welcome to the Cloud!....................................................................................................1 Platforms for Cloud Computing...........................................................................2 About This Book..............................................................................................................2 Intended Audience................................................................................................3 Chapter Contents.................................................................................................3 Choosing Your Development Environment.........................................................4 Sending Feedback.................................................................................................5 About Developer Force.....................................................................................................5 Salesforce.com Training & Certification..........................................................................5
Introducing the Force.com Platform..........................................................7
Chapter 1: Introducing the Force.com Platform.................................7
The Basics of an App's User Interface..................................................................9 The Benefits of a Force.com Platform App........................................................11 Data-Centric Apps.................................................................................11 Collaborative Apps..................................................................................12 The Technologies Behind a Force.com Platform App.......................................13 A Multitenant Architecture....................................................................14 A Metadata-Driven Development Model...............................................15 APIs........................................................................................................16 Apex........................................................................................................16 Visualforce...............................................................................................16 Mobile Access.........................................................................................17 The AppExchange Directory..................................................................18
Chapter 2: About the Sample Recruiting App...........................................19
About Universal Containers...........................................................................................20 Considerations for the Recruiting App...........................................................................20 Building the App: Our Design.......................................................................................21
Custom Objects..................................................................................................21 Security and Sharing Rules.................................................................................22
Table of Contents
iii
Table of Contents
Workflow and Approval Processes.....................................................................22 Custom Reports and Dashboards.......................................................................24 Visualforce..........................................................................................................24
Chapter 3: Reviewing Database Concepts.................................................25
What's a Database?.........................................................................................................27 What's in a Database?.....................................................................................................28 What's a Relational Database?........................................................................................29 Summary of Database Concepts.....................................................................................31
Chapter 4: Building a Simple App............................................................33
Becoming Familiar with the Setup Area.........................................................................34 Introducing Apps............................................................................................................36 Try It Out: Define an App.................................................................................36 Look at What We've Done.................................................................................39 Introducing Objects........................................................................................................40 The Position Custom Object..............................................................................40 Try It Out: Define the Position Custom Object................................................40 Introducing Tabs............................................................................................................44 Try It Out: Define the Positions Tab.................................................................44 Look at What We've Done.................................................................................46 Becoming Familiar with Setup Detail Pages and Related Lists......................................48 Introducing Fields...........................................................................................................50 Try It Out: Add Text Fields...............................................................................51 Try It Out: Add Currency Fields........................................................................54 Try It Out: Add Checkbox Fields.......................................................................54 Try It Out: Add Date Fields...............................................................................55 Look at What We've Done............................................................................................55 Taking Our Simple App Mobile....................................................................................56
Chapter 5: Enhancing the Simple App with Advanced Fields, Data Validation, and Page Layouts...............................................................59 Adding Advanced Fields................................................................................................60 Introducing Picklists...........................................................................................60 Try It Out: Add Picklists....................................................................................60 Introducing Field Dependencies.........................................................................63 Try It Out: Create a Dependent Picklist............................................................64
Look at What We've Done.................................................................................67 Introducing Custom Formula Fields..................................................................68 Calculating How Long a Position Has Been Open............................................69 Try It Out: Define a “Days Open” Custom Formula Field................................70 Try It Out: Give Fields Dynamic Default Values...............................................74 Look at What We've Done.................................................................................75
Introducing Validation Rules..........................................................................................76 Try It Out: Define a Validation Rule for Min and Max Pay..............................76 Try It Out: Define a Validation Rule for Close Date.........................................78 Look at What We've Done.................................................................................80
Check It Out in Mobile..................................................................................................82 Introducing Page Layouts...............................................................................................83 Becoming Familiar with the Page Layout Editor...............................................84 Try It Out: Group Fields into a New Section.....................................................85 Try It Out: Add Spaces Between Fields.............................................................88 Try It Out: Edit Field Properties........................................................................89 Look at What We've Done.................................................................................90 Taking Your Page Layouts Mobile.....................................................................92 Introducing Compact Layouts........................................................................................96
Chapter 6: Expanding the Simple App Using Relationships.....................101
Introducing Relationships.............................................................................................102 Introducing Relationship Custom Fields......................................................................103 Try It Out: Relate Hiring Managers to Positions.............................................104 Look at What We've Done...............................................................................104 Adding Candidates to the Mix.....................................................................................106 Try It Out: Create the Candidate Object.........................................................106 Try It Out: Add Fields to the Candidate Object..............................................107 Try It Out: Modify the Candidate Page Layout Properties..............................108 Look at What We've Done...............................................................................110 Try It Out: Customize the Candidate Record Highlights................................111 Look At What We've Done.............................................................................111 Bringing Candidates and Positions Together with Job Applications...........................115 Try It Out: Create the Job Application Object.................................................113 Try It Out: Add Fields to the Job Application Object......................................114 Try It Out: Customize the Job Application Record Highlights.......................115 Look at What We've Done...............................................................................116
Table of Contents
iii
iv
Table of Contents
Introducing Search Layouts..........................................................................................117 Try It Out: Add Fields to the Candidate Lookup Dialog................................119 Try It Out: Update Additional Search Layouts................................................120
Managing Review Assessments....................................................................................121 Try It Out: Create the Review Object..............................................................122 Try It Out: Add Fields to the Review Object...................................................123 Introducing Roll-Up Summary Fields..............................................................129 Try It Out: Create Roll-Up Summary Fields...................................................129 Try It Out: Customize the Review Object's Page and Search Layouts.............131 Try It Out: Customize Record Highlights for Reviews....................................132 Look at What We've Done...............................................................................133
Creating a Many-to-Many Relationship......................................................................134 Try It Out: Create the Employment Website Object.......................................136 Try It Out: Add the URL Field to the Employment Website Object..............137 Try It Out: Create the Job Posting Object.......................................................137 Try It Out: Add Fields to the Job Posting Object............................................138 Customizing Related Lists in a Many-to-Many Relationship..........................140 Try It Out: Customize the Positions and Employment Websites Related
Lists.............................................................................................................140 Try It Out: Customize Record Highlights for Employment Websites and
Job Postings.................................................................................................142 Look at What We've Done...............................................................................142 Putting it All Together.................................................................................................143 Try It Out: Download Sample Data.................................................................145 Try It Out: Use the Import Wizard..................................................................146
Chapter 7: Securing and Sharing Data....................................................149
Controlling Access to Data in Our App.......................................................................151 Required Permissions for the Recruiter............................................................151 Required Permissions for the Hiring Manager.................................................152 Required Permissions for the Interviewer.........................................................154 Required Permissions for the Standard Employee............................................155 So Where Are We Now?..................................................................................156
Data Access Concepts..................................................................................................157 Controlling Access to Objects......................................................................................158 Introducing Profiles..........................................................................................159 Standard Profiles...............................................................................................159
Introducing Permission Sets.............................................................................160 Profiles and Permission Sets in Our Recruiting App........................................161 Try It Out: Create the Recruiter Profile...........................................................162 Try It Out: Create the Standard Employee Profile...........................................166 Try It Out: Create the Hiring Manager Permission Set...................................167 Try It Out: Create the Interviewer Permission Set...........................................172
Controlling Access to Fields.........................................................................................174 Introducing Field-Level Security......................................................................175 Field-Level Security in Our Recruiting App....................................................175 Try It Out: Limit Access to Fields in the Standard Employee Profile.............176 Try It Out: Check Field-Level Security in Permission Sets.............................179
Controlling Access to Records......................................................................................180 Introducing Organization-Wide Defaults........................................................180 Org-Wide Defaults in Our Recruiting App.....................................................180 Try It Out: Set Org-Wide Defaults..................................................................183 Introducing Role Hierarchies............................................................................185 Comparing Roles, Profiles, and Permission Sets..............................................186 Role Hierarchies in Our Recruiting App..........................................................186 Try It Out: Create a User.................................................................................187 Try It Out: Define a Role Hierarchy................................................................188 What's Left to be Shared?.................................................................................192 Introducing Sharing Rules................................................................................192 Sharing Rules in Our Recruiting App..............................................................192 Try It Out: Define a Public Group...................................................................193 Try It Out: Define Sharing Rules.....................................................................195 Introducing Manual Sharing.............................................................................197 Try It Out: Define a Manual Sharing Rule......................................................198
Displaying Field Values and Page Layouts According to Profiles................................199 Try It Out: Create a Record Type....................................................................200 Putting It All Together.................................................................................................203 Try It Out: Create More Users.........................................................................203 Try It Out: Verify that Everything Works........................................................207 Delegating Data Administration..................................................................................208 Overriding Sharing with Object Permissions...................................................209 Delegated Administration Groups....................................................................210 Try It Out: Define the Recruiting Manager Administration Group................210
Table of Contents
v
vi
Table of Contents
Try It Out: Verify that Delegated Administration Works................................212 Summing Up................................................................................................................213
Chapter 8: Collaborating with Chatter....................................................215
Introducing Chatter......................................................................................................216 Tracking Fields on Your Objects..................................................................................216 Try It Out: Enable Feed Tracking on Positions and Job Applications.............216 Look At What We’ve Done.............................................................................218 Following Records........................................................................................................220 Try It Out: Follow a Job Application Record...................................................220 Starting a Group or Two..............................................................................................221 Try It Out: Create a Group..............................................................................221 Introducing Notifications.............................................................................................222 Try It Out: Enable Notifications......................................................................223 Look At What We’ve Done.............................................................................223 Introducing Publisher Actions......................................................................................224 Try It Out: Create a Global Action..................................................................225 Introducing Action Layouts..................................................................226 Try It Out: Add Predefined Field Values.............................................227 Try It Out: Create More Global Actions..............................................228 Introducing Global Publisher Layouts..............................................................229 Try It Out: Customize a Global Publisher Layout...............................229 Look At What We’ve Done..................................................................230 Introducing Object-Specific Actions................................................................231 Try It Out: Create an Object-Specific Action......................................232 Try It Out: Create More Object-Specific Actions................................233 Try It Out: Assign Object-Specific Actions to Page Layouts...........................234 Look At What We’ve Done.............................................................................237 Summing Up................................................................................................................238
Chapter 9: Using Custom Workflow and Approval Processes...................239
Introducing Workflow..................................................................................................240 Introducing Workflow Rules............................................................................241 Introducing Workflow Actions: Tasks, Field Updates, and Alerts...................241
Workflow in Our Recruiting App................................................................................242 Creating Workflow Rules That Assign Tasks..............................................................243 Try It Out: Create the “Send Rejection Letter” Workflow Rule......................244
Try It Out: Create the “Send Rejection Letter” Workflow Task......................247 Try It Out: Create the “Extend an Offer” Workflow Rule and Task...............249 Look at What We've Done...............................................................................250
Creating a Workflow Rule That Updates Fields..........................................................252 Introducing Queues..........................................................................................252 Try It Out: Create a Queue for Positions.........................................................252 Try It Out: Create a Workflow Rule That Updates Fields...............................255 Introducing Time-Dependent Workflow Actions............................................256 Try It Out: Create the “Notify Recruiting Manager” Time-Dependent
Workflow Task...........................................................................................256 Look At What We've Done.............................................................................258 Creating a Workflow Rule That Sends Email Alerts...................................................260 Introducing Email Templates...........................................................................260 Try It Out: Build an Email Template...............................................................261 Try It Out: Create the New Position Workflow Rule and Alert......................264 Introducing Approvals..................................................................................................266 Planning for Approval Processes.......................................................................267 Try It Out: Create an Email Template for Approvals......................................268 Try It Out: Create an Approval Process...........................................................268 Try It Out: Create Approval Steps...................................................................272 Try It Out: Create Approval Actions................................................................276 Try It Out: Activate Our Approval Process......................................................279 Look At What We've Done.............................................................................279 Summing Up................................................................................................................283
Chapter 10: Analyzing Data with Reports and Dashboards......................285
Introducing Reports......................................................................................................286 Report Formats.................................................................................................287 Setting Up the Recruiting App for Reports......................................................291
Try It Out: Add the Reports Tab.........................................................291
Try It Out: Create a Recruiting Reports Folder...................................291 Creating a Summary Report.............................................................................293 Try It Out: Create a Summary Report..................................................293 Try It Out: Add Columns and Filters...................................................297 Try It Out: Add a Pie Chart.................................................................299 Creating a Matrix Report..................................................................................301 Try It Out: Create a Matrix Report......................................................301
Table of Contents
vii
viii
Table of Contents
Try It Out: Add Summary Fields.........................................................302 Try It Out: Add Columns and Filters...................................................304 Try It Out: Add a Chart and Conditional Highlighting......................306
Introducing Dashboards...............................................................................................309 Try It Out: Create Additional Reports.............................................................310 Try It Out: Create a Dashboard.......................................................................313 Adding Dashboard Components......................................................................315
Try It Out: Add a Chart Component...................................................316 Try It Out: Add a Gauge Component..................................................317 Try It Out: Add a Table Component...................................................318 Try It Out: Add a Metric Component..................................................319
Refreshing Dashboards.....................................................................................321
Introducing Mobile Dashboards.......................................................................322 Introducing Custom Report Types...............................................................................323 Try It Out: Create a Report Type.....................................................................324 Look At What We've Done.........................................................................................328
Chapter 11: Moving Beyond Point-and-Click App Development............331
Introducing Mash-Ups and Web Services....................................................................333 Introducing Visualforce................................................................................................334 Introducing Visualforce Development Mode....................................................336 Try It Out: Enabling Visualforce Development Mode.....................................337 Implementing the Candidate Map ..............................................................................337 Try It Out: Create a Visualforce Page..............................................................337 Try It Out: Write Visualforce Markup.............................................................339 Try It Out: Add the Map to Our Visualforce Page..........................................342 Try It Out: Add the Candidate Map to Position Page Layouts.......................343 Try It Out: Enable the Candidate Map for Mobile..........................................344 Try It Out: Test the Candidate Map................................................................345 Implementing the Mass Update Status Button............................................................346 Planning the Mass Update Status Feature........................................................347 Try It Out: Create the Mass Update Status Page.............................................348 Understanding the MassUpdateStatus Visualforce Markup.............................350 Try It Out: Create a Custom List Button.........................................................353 Try It Out: Add a Custom List Button to a Page Layout................................355 Try It Out: Test the Mass Update Status Feature............................................356
Chapter 12: Learning More....................................................................359
Developer Force............................................................................................................360 Help and Training Options..........................................................................................360 Multimedia...................................................................................................................361 AppExchange Partner Program....................................................................................361 What Do You Think?...................................................................................................361
Glossary................................................................................................363 Index.....................................................................................................387
· · · · · · (
收起)