Force.com Platform Fundamentals

Get Started. It's Free
or sign up with your email address
Rocket clouds
Force.com Platform Fundamentals by Mind Map: Force.com Platform Fundamentals

1. author: Hans Pan

1.1. updated on 7/23/2012

2. 1. introduction

2.1. the technologies behind

2.1.1. multitenant architecture

2.1.1.1. `latest patches and functionalities

2.1.1.2. no worry on update / upgrade

2.1.2. metadata-driven development model

2.1.2.1. metadata in DB

2.1.2.2. not hard coded

2.1.2.3. higher productivity

2.1.3. web service API

2.1.4. Apex

2.1.5. Visualforce

2.1.6. salesforce mobile

2.1.7. sites

2.1.7.1. share apps installed on salesforce to users out of salesforce

2.1.7.2. no username and password needed

3. 2. about recruiting app

3.1. technologies offered by platform

3.1.1. custom objects

3.1.2. security and sharing rules

3.1.3. workflow and approval process

3.1.4. custom reports and dashboards

3.1.5. visualforce

4. 3. reviewing database concept

4.1. an object in force.com is more than a table

4.1.1. built-in user interface

4.1.2. security and sharing model applied

4.1.3. workflow and approval process activated and supported directly

4.1.4. reports supported directly

4.2. terms

4.2.1. object

4.2.1.1. standard object

4.2.1.2. custom object

4.2.2. field

4.2.2.1. standard field

4.2.2.2. custom field

4.2.3. data value

5. 4. building a simple app

5.1. an app

5.1.1. name

5.1.2. logo

5.1.3. set of tabs

5.1.4. default landing tab

5.1.5. profile assignments

5.1.5.1. {profile : is visible, is default}

5.2. in iterative way

5.3. an object

5.3.1. name

5.3.1.1. lable name

5.3.1.2. object name

5.3.2. record name field

5.3.2.1. data type

5.3.3. optional features

5.3.3.1. allow reports

5.3.3.2. allow activities

5.3.3.3. track field history

5.3.4. deployment status

5.4. a tab

5.4.1. for an object

5.4.2. color scheme and icon

5.4.3. profile assignments

5.4.3.1. {profile : option}

5.4.3.1.1. default on

5.4.3.1.2. default off

5.4.3.1.3. tab hidden

5.4.4. app assignments

5.4.4.1. {app : is accessible

5.5. a field

5.5.1. data type

5.5.1.1. text type

5.5.1.1.1. text

5.5.1.1.2. text (encrypted)

5.5.1.1.3. text area

5.5.1.1.4. text area (long)

5.5.1.1.5. text area (rich)

5.5.1.2. currency type

5.5.1.3. checkbox type

5.5.1.4. date type

5.5.1.4.1. build-in popup calendar dialog

5.5.2. field lable name

5.5.3. field name

5.5.4. field security setting on various profiles

5.5.4.1. {profile : is visible, is readonly}

5.5.5. layout field setting

6. 5. enhancing with advanced fields

6.1. advanced fields

6.1.1. picklist type

6.1.1.1. standard picklist

6.1.1.2. multi-select picklist

6.1.2. field dependency

6.1.2.1. controlling field

6.1.2.2. dependent field

6.1.3. custom formula field

6.1.4. dynamic default field value

6.2. validation rules

6.2.1. rule name

6.2.2. error condition

6.2.3. error message

6.2.4. where to display error message

6.3. page layout

6.3.1. section

6.3.1.1. section name

6.3.1.2. layout

6.3.1.2.1. one column

6.3.1.2.2. two columns

6.3.1.3. tab-key order

6.3.1.4. display section header on

6.3.2. field properties

6.3.2.1. required field

6.3.2.2. readonly field

7. 6. extending using relationships

7.1. a relationship custom field

7.1.1. a many-to-one relationship on referring and referred

7.1.2. put the relationship field onto the object which is one side on the many-to-one relationship

7.1.3. types

7.1.3.1. lookup relationship field

7.1.3.1.1. simplest

7.1.3.1.2. most flexible

7.1.3.1.3. optional

7.1.3.1.4. how

7.1.3.1.5. impact

7.1.3.1.6. implementation

7.1.3.2. master-detail relationship field

7.1.3.2.1. how

7.1.3.2.2. impact

7.1.3.2.3. when to use

7.1.3.2.4. implementation

7.1.4. examples

7.1.4.1. lookup

7.1.4.1.1. hiring manager relationship from position to user

7.1.4.1.2. job application between position and candidate

7.1.4.2. master-detail

7.1.4.2.1. review on job application

7.2. many-to-many relationship

7.2.1. junction object

7.2.1.1. two master-detail relationships

7.2.1.2. first master-detail relationship will be primary

7.2.1.3. junction object uses color scheme and icon of primary master

7.2.1.4. ownership and sharing rules of junction object is determined by primary master

7.2.1.5. in secondary master-detail relationship, detail objects are deleted as well once the master object is deleted.

7.3. data import

7.4. extra fields

7.4.1. external ID field

7.4.1.1. indexable

7.4.1.2. searchable

7.4.1.3. used for importing data

7.4.2. text field

7.4.2.1. length

7.4.2.2. is required

7.4.2.3. is unique

7.4.2.3.1. is case sensitive

7.4.2.4. is external ID

7.4.2.5. default value

7.4.3. email field

7.4.3.1. is required

7.4.3.2. is unique

7.4.3.3. is external ID

7.4.4. number field

7.4.4.1. length (left of decimal point)

7.4.4.2. decimal place (right of decimal point)

7.4.5. checkbox field

7.4.5.1. default: is checked

7.4.6. phone field

7.4.7. rollup summary field

7.4.8. formula field

7.4.8.1. cross-object formula

7.5. search layout

7.5.1. search results

7.5.2. lookup dialogs

7.5.3. tab

7.5.3.1. related list pay layout is determined by both parent object's related list properties (first) and child object's tab layout setting

7.5.4. search filter fields

8. references

8.1. functions in formula

8.1.1. TODAY()

8.1.2. HYPERLINK()

8.1.3. IFBLANK()

8.1.4. IFNULL()

9. 8. Collaborating with chatter

9.1. setting

9.1.1. enable

9.1.2. email notification

9.1.3. approval posts

9.1.4. coworker inviation

9.1.5. customer inviation

9.2. field tracking

9.2.1. {object : field}

10. 9.Using custom workflow and approval processes

10.1. workflow

10.1.1. workflow rule

10.1.1.1. implementation

10.1.1.1.1. related to an object

10.1.1.1.2. give rule name

10.1.1.1.3. define when evaluating

10.1.1.1.4. define rule criteria

10.1.2. workflow action

10.1.2.1. what we can do?

10.1.2.1.1. task

10.1.2.1.2. field update

10.1.2.1.3. alert

10.1.2.1.4. outbound message

10.1.2.2. when they can be done?

10.1.2.2.1. immediately

10.1.2.2.2. time dependent

10.1.3. associated with a single object

10.2. queue

10.2.1. impelementation

10.2.1.1. queue email

10.2.1.2. supported objects

10.2.1.3. queue members

10.2.1.3.1. by individual users

10.2.1.3.2. by roles

10.2.1.3.3. by roles and subordinates

10.2.1.3.4. by group

10.3. email template

10.3.1. types

10.3.1.1. text

10.3.1.2. html

10.3.1.3. custom

10.3.1.4. visualforce

10.4. approval process

10.4.1. apply approval process to all records or certain records matching criteria

10.4.2. concepts

10.4.2.1. initial submission

10.4.2.2. record locking

10.4.2.3. automatical approval

10.4.2.4. final approval

10.4.2.5. final reject

10.4.2.6. actions associated with iniitial submission, approval / rejection, final approval / rejection.

10.4.2.7. approval step (has)

10.4.2.7.1. approver(s)

10.4.2.7.2. filter criteria

10.4.2.7.3. approval action

10.4.2.7.4. rejection action

10.4.2.7.5. recall action

10.4.2.8. approval action

10.4.2.8.1. not associated with approval step

10.4.2.8.2. action associated with approval step

10.4.2.8.3. same types as workflow action

10.4.2.9. once approval process is activated, approval steps cannot be edited even process deactivated

10.4.3. best practice

10.4.3.1. notify approver through email once submission

10.4.4. implementation

10.4.4.1. target object

10.4.4.2. who can edit once it is locked

10.4.4.2.1. administrator only

10.4.4.2.2. administrator or assigned approver

10.4.4.3. 2 ways to config

10.4.4.3.1. jump star

10.4.4.3.2. standard

10.4.4.4. next automated approver determined by manager

10.4.4.4.1. record owner's manager

10.4.4.4.2. record submitter's manager

10.4.4.5. approver page layout

10.4.4.5.1. only can be configured / provided in approval process configuration process

10.4.4.5.2. fields displayed on the page layout

10.4.4.6. security setting

10.4.4.6.1. from where approver can access approval page?

10.4.4.7. who can submit

10.4.4.8. adding approval history related list to the target object all pay layout

10.4.4.9. allow submitter to recall

10.4.4.10. approval steps

10.4.4.10.1. step number

10.4.4.10.2. step name

10.4.4.10.3. step record filter criteria

10.4.4.10.4. select approver

10.4.4.10.5. allow approver's delegate to handle

10.4.5. process visualizer

11. 10. Analyzing data with reports and dashboards

11.1. the need of company managers and executive staff

11.2. report

11.2.1. is composed of

11.2.1.1. table of data

11.2.1.1.1. columns

11.2.1.1.2. records

11.2.1.2. records filter

11.2.1.3. one or multiple grouping

11.2.1.4. graph

11.2.2. 3 formats

11.2.2.1. tabular

11.2.2.1.1. simplest

11.2.2.1.2. no grouping

11.2.2.1.3. no graph

11.2.2.2. summary

11.2.2.2.1. grouping row of data

11.2.2.2.2. subtotal view

11.2.2.2.3. charts

11.2.2.2.4. when used

11.2.2.3. matrix

11.2.2.3.1. grouped by both row and column

11.2.2.3.2. graphs

11.2.2.3.3. when used

11.3. report tab

11.4. report folder

11.5. dashboard

11.5.1. show data from source reports as visual components

11.5.2. every dashboard has a running user

11.5.2.1. which data is displayed in the dashboard

11.5.2.2. access to the details depend on viewer's security setting

11.5.3. dynamic dashboard

11.5.4. 5 varieties

11.5.4.1. charts

11.5.4.1.1. bar

11.5.4.1.2. column

11.5.4.1.3. line

11.5.4.1.4. pie

11.5.4.1.5. donut

11.5.4.1.6. funnel

11.5.4.2. tables

11.5.4.3. metrics

11.5.4.4. gauges

11.5.4.5. visualforce pages

11.5.5. schedule a dashboard freshing

11.6. custom report type

11.6.1. primary object

11.6.2. related objects

11.6.3. relationship between primary and related

11.6.4. page layout

11.7. create a report

11.7.1. select a report type

11.7.2. select report format

11.7.3. define filters

11.7.3.1. standard filters

11.7.3.1.1. by owner

11.7.3.1.2. by date

11.7.3.2. custom filters

11.7.3.2.1. field filter

11.7.4. adding charts

11.7.5. varies

11.7.5.1. create a summary report

11.7.5.1.1. select grouping field(s)

12. 11. Moving beyond point-and-click app development

12.1. mash-up

12.1.1. web service

12.1.2. visualforce

12.2. visualforce pages

12.2.1. controller

12.2.1.1. the style of the page

12.3. mass update

12.4. custom buttons

12.4.1. detail page button

12.4.2. list button

12.5. sites

12.5.1. public access setting

13. 7. Security and sharing data

13.1. page layout setting

13.1.1. {object : page layout}

13.1.2. standard and custom objects

13.2. data administration

13.2.1. global data administration

13.2.1.1. View All Data

13.2.1.2. Modify All Data

13.2.2. app / object data administration

13.2.2.1. View All (on object level)

13.2.2.2. Modify All (on object level)

13.3. concepts

13.3.1. static

13.3.1.1. 3 levels of access

13.3.1.1.1. object level

13.3.1.1.2. field level

13.3.1.1.3. record level

13.3.1.2. profile

13.3.1.2.1. the following can be set through profile

13.3.1.2.2. define profiles as per job function

13.3.1.2.3. 6 standard profiles

13.3.1.2.4. app setting

13.3.1.2.5. tab setting

13.3.1.2.6. user/function permissions

13.3.1.3. field securities

13.3.1.3.1. 2 ways to define

13.3.1.4. record permission

13.3.1.4.1. level 1 - org-wide defaults, most restricted definition

13.3.1.4.2. level 2 - role hierarchy

13.3.1.4.3. level 3 - sharing rules

13.3.1.4.4. level 4 - manual sharing

13.3.1.5. record type

13.3.1.5.1. show ... to different users based on profiles

13.3.2. dynamic

13.3.2.1. create a user-object access matrix

13.4. best practices

13.4.1. create new profiles from standard profiles, then edit

13.4.2. whether role hierarchy is used to grant access can be defined / changed / set on each object

13.4.3. cannot define sharing rules on the detail object in master-detail relationship

13.4.4. sharing access to a junction object record is determined by

13.4.4.1. sharing access to both associated master records

13.4.4.2. Sharing Setting option on the relationship field

13.5. how-to-do

13.5.1. 1. create profile (thru cloning)

13.5.2. 2. set app access thru profile

13.5.2.1. {custom app : is visible}

13.5.2.2. which custom app is default

13.5.3. 3. set tab access thru profile

13.5.3.1. options

13.5.3.1.1. default on

13.5.3.1.2. default off

13.5.3.1.3. tag hidden

13.5.4. 4. set object security thru profile

13.5.4.1. {object : is able to C / R / U / D, is able to view / modify all}

13.5.4.1.1. view all - be able to ready all records

13.5.4.1.2. modify all - full access to all records

13.5.5. 5. set field-level security thru profile

13.5.5.1. {object : field security setting}

13.5.5.1.1. {field : is visible, is read-only}

13.5.6. 6. set org-wide defaults for record level security

13.5.7. 7. set role hierarchy

13.5.7.1. create a role

13.5.7.2. assign users to that role

13.5.8. 8. set sharing rules

13.5.9. 9. manually share records

13.5.10. 10. set record types

13.5.10.1. select an object

13.5.10.2. create a record type

13.5.10.3. profile setting

13.5.10.4. picklist value setting

13.5.10.5. define different page layouts for different record types and assign them to different profiles

13.5.11. 11. delegating data administration

13.5.11.1. 2 ways to do

13.5.11.1.1. object-level permission

13.5.11.1.2. delegated administration group

13.5.12. function permissions

13.5.12.1. administrative permissions

13.5.12.2. general user permissions

13.5.12.3. {function : is checked / enabled}