You are on page 1of 21

Salesforce.com Certified Force.

com Developer

Study Guide
Spring ‘11

training & Certification

Salesforce.com Certified Force.com Developer – Study Guide (Spring ‘11)

Contents
About the Force.com Certification Program..............................................................................................1
Section 1.

Purpose of this Study Guide............................................................................................2

Section 2.

Audience Description: Salesforce.com Certified Force.com Developer......................2

Section 3.

About the Exam.................................................................................................................2

Section 4.

Recommended Training...................................................................................................2

Section 5.

Exam Outline.....................................................................................................................3

Section 6.

Sample Exam Questions...................................................................................................4

Section 7.

Answers to Sample Exam Questions...............................................................................6

Section 8.

Maintaining a Certification..............................................................................................6

Section 9.
Supplemental Study Material..........................................................................................6
Section 9-1.
Custom Objects.................................................................................................................................................6
Section 9-2.
Multiple Currencies..........................................................................................................................................8
Section 9-3. The Console.........................................................................................................................................................10
Section 9-4.
System Fields......................................................................................................................................................11
Section 9-5. Encrypted Custom Fields...............................................................................................................................11
Section 9-6.
Page Layouts.......................................................................................................................................................12
Section 9-7.
What is Force.com pages (Visualforce)?...................................................................................................13
Section 9-8.
Development Tools..........................................................................................................................................15
Section 9-9.
Creating Email Alerts for Workflow, Approvals, or Milestones.......................................................15
Section 9-10.
What is Force.com code (Apex)?.................................................................................................................17
Section 9-11.
Data Loader.........................................................................................................................................................18
Section 9-12. Troubleshooting Data Loader Operations..............................................................................................18
Section 9-13. Record IDs............................................................................................................................................................19
Section 9-14.
Process Visualizer..............................................................................................................................................19

training & Certification

A set of requirements and development parameters will be sent to the candidate.com Certified Force.com certification program is for individuals who want to demonstrate their knowledge. The Salesforce.com Advanced Developer exam will be given the opportunity to complete the second portion of the credential program: the programming assignment.com Certified Force. will be evaluated and scored as the final portion of the Salesforce. and the candidate will have a fixed amount of time to complete and submit the assignment.com Developer – Study Guide (Spring ‘11) About the Force.com Advanced Developer exam: A multiple-choice/multipleselect proctored exam.com Advanced Developer exam.com code (Apex) and Force. certification candidates who have passed the Salesforce. including Force. The Salesforce.com Developer exam. a candidate must successfully complete the exam. This study guide provides information about the Salesforce. The candidate will need to go to a testing center and complete the essay exam.com platform. The Advanced Developer essay exam: Upon submission of the programming assignment.com Certified Force.Salesforce. the programmatic capabilities of Force. training & Certification 1 .com Certified Force. The program encompasses the breadth of application development on the Force. and capabilities to build custom applications on the Force. in combination with the programming assignment.com Certified Force.com cloud platform. 3. and application development lifecycle management with cloud computing development as a service. To achieve this credential.com platform. there will be a deadline for assignment completion.com Certified Force. 2.com Certified Force.com Advanced Developer certification program. The programming assignment is completed at the candidate’s own pace and doesn’t require working at a proctored site.com platform. a candidate must successfully complete three activities: 1. including the declarative capabilities. The Salesforce.com pages (Visualforce). The essay exam. This exam is a prerequisite to the Salesforce. The Advanced Developer programming assignment: At scheduled times throughout the year.com code and Force. the candidate will be required to complete a short-answer proctored exam that covers the specifics of the programming assignment. ▪ ▪ The Salesforce. The candidate will be given the evaluation criteria and detailed instructions on how to complete and submit the final working application. However.com Certified Force.com Certified Force.com Developer certification exam encompasses the declarative capabilities of the Force.com pages.com Advanced Developer credential encompasses the programmatic capabilities of the Force.com Certification Program The Force. This portion of the credential program must be passed successfully to move on to the next portion: the programming assignment.com Advanced Developer credential will be granted to a candidate upon successful completion of all parts of the program. To earn this credential. skills.

com (DEV 401).com Training and Certification. candidates are not expected to be able to package or migrate applications. Salesforce. administer any standard Salesforce CRM application.Salesforce.com highly recommends a combination of course attendance and self-study to maximize your chances of passing the exam. a complete list of exam objectives. Audience Description: Salesforce.com platform.com/training Force. and several sample exam items—all with the intent of helping you achieve a passing score. Purpose of this Study Guide Section 2.com platform Has invested time in studying the materials from the course and the additional required study materials provided by salesforce.com Certified Force. including practical application of the skills and concepts noted in the exam objectives below. The candidate: ▪ ▪ ▪ ▪ ▪ ▪ May not necessarily manage or configure a standard Salesforce CRM application. supplemental study material. About the Exam The Salesforce.com Developer exam. can describe various use cases for this functionality. The Salesforce.com Fundamentals training & Certification 2 .com Developer exam is intended for an individual who has experience developing custom applications on the Force. Additionally.com IDE or Web Services API. and can use this functionality to create applications using the standard Salesforce interface Has a good understanding of the capabilities of the declarative functionality and can identify what application design specifications require the use of Force. or use the Force. Recommended Training Salesforce.com Developer This study guide is designed to help you evaluate whether you’re ready to successfully complete the Salesforce.salesforce.com pages Is capable of designing and developing reports/analytics Can identify appropriate solutions to specific business challenges/process requirements by applying knowledge of these features in the current version of the Force. but has experience with the Salesforce user interface and data model Has broad knowledge of the declarative functionality of the Force.com Certified Force.com course (DEV 401) from salesforce.com Certified Force.com platform. course attendance highly recommended Section 4.com Training and Certification recommends the following as preparation for this exam: ▪ ▪ Building Applications with Force.com code or Force.com A candidate for this exam is not expected to be able to develop code using the Apex programming language. go to: www. The candidate has successfully completed the Building Applications with Force.com or an Authorized Training Center or possesses equivalent experience and knowledge.com Developer exam has the following characteristics: ▪ ▪ ▪ ▪ ▪ Content: 60 multiple-choice/multiple-select questions Time allotted to complete the exam: 90 minutes Passing score: 68 percent References: No hard-copy or online materials may be referenced during the exam Prerequisites: None required. Section 3.com Certified Force. To register. This guide provides information about recommended training from Salesforce.com Certified Force.com Developer – Study Guide (Spring ‘11) Section 1.

profiles. multicurrency)   User Interface 15% List and describe the components of any Force. describe how to create relationships. encrypted fields.com pages can extend the user interface in the declarative framework and when to do so   Describe the capabilities and functionality of Force.com Certified Force.com Developer – Study Guide (Spring ‘11) Section 5.com Developer exam measures a candidate’s knowledge and skills related to the objectives listed below.com platform   Data Model 32% Describe how to create a functional data model for a business application   Given a scenario.com platform and have demonstrated the application of each of the following features/functions.g. defaults. determine whether sufficient information is available to plan/build/design an application   Overview of Force.Salesforce.. determine which Force. applications.com platform   List and describe the building blocks of an application provided by the Force. and determine which relationship should be recommended   List and describe the features used to set permission and data access in a custom app   Given a scenario. Exam Outline The Salesforce.g. select the appropriate feature (e.. select the appropriate features of Force. distinguish among object relationship types. determine the capabilities and constraints of the declarative framework for building a user interface (e.g. A candidate should have hands-on experience developing custom applications on the Force. tabs. roles) to provide appropriate permissions and data access in a custom app   List and describe optional (Salesforce-enabled) features for managing the application (e.com approval processes to satisfy business requirements   List and describe the features of the Force.com sites Business Logic 23% List and describe how to create formulas...com feature to use to solve a business requirement and/or describe how to apply the solution   List and describe the capabilities of the Force.g.com application user interface (e.com code   training & Certification 3 .com approval processes   Given a scenario.com Certified Force. Objective Weighting Application Design 5% List and describe components of an application   Describe the model-view-controller design paradigm   Given a scenario. select the features required to create a functional data model for a business application   Describe the properties and implications of choosing one object relationship type over another and distinguish among relationship types   Given a scenario. create audit fields. detail pages. list views)   Given a scenario. what can and can’t be done in a page layout)   Describe use cases for how Force.com Platform 5% List and describe the steps required to design and deploy a successful application built using the declarative capabilities of the Force.com platform for debugging and monitoring automated business processes   Describe use cases for extending business logic through Force. and workflow rules   Given a scenario. validation rules.

Positions expire 90 days after they have been approved. Sample Exam Questions The following questions are representative of those on the Salesforce.com Developer exam. many-to-many D. determine methods for analyzing and displaying data   Section 6. master-to-master 3. It can only be included in one application. An email will be sent 15 days before the original expiration date. It can only be included in standard applications. It can only be included in custom applications. What will happen if the expiration date of a position is extended by 30 days? A. 2.com platform   Given a scenario.com Certified Force. The actual exam questions may be more or less difficult than this set of questions. C. C. Within a custom recruiting application. An email will be sent on the original expiration date. child records are not deleted. training & Certification 4 . 1. D.com Developer – Study Guide (Spring ‘11) Data Management 10% List and describe the capabilities and constraints of import wizards   List and describe the capabilities and constraints of API-based tools for managing data   List and describe the functions of the Force. It can be included in as many applications as desired. determine appropriate uses of the GUI and command-line interface for the data loader   Describe the characteristics of Force. A Workflow Rule is in place to send an email to the hiring manager listed on a position 15 days before the expiration date.com Data Loader   Describe use cases and functions of external IDs and upsert   Given a scenario. Which relationship should the developer choose? A. D. B. Which statement is true about a custom tab? A.com record IDs   Reporting and Analytics 10% List and describe capabilities and constraints of reports and analytics of the Force. lookup B. An email will be sent 15 days before the updated expiration date. master-detail C. These questions are not designed to test your readiness to successfully complete the certification exam.Salesforce. An email will not be sent. but should be used to become familiar with the types of questions on the exam. A developer wants to ensure that when a parent record is deleted.com Certified Force. Universal Containers uses a custom position object to track positions. B.

When would a developer use upsert and external IDs? (Choose two answers. Create a series of daily recurring events providing the dashboard link. To use the Web Services API to query for data 5.Salesforce. To migrate customizations from sandbox to production C. How would a developer accomplish this goal? A. To integrate with an external system B. Set the users’ home page layouts to include a dashboard. training & Certification 5 . To load related records without knowing Salesforce record IDs D. C. A group of executives has requested a convenient way to see daily metrics without having to log into Salesforce. D.com Developer – Study Guide (Spring ‘11) 4.com Certified Force.) A. Create a Workflow rule that sends a link to the dashboard in an email. B. Schedule the dashboard for daily refresh and email distribution.

com Developer – Study Guide (Spring ‘11) Section 7. specify the gender of the label. A 3. Note: This material is supplemental only. Supplemental Study Material The following information is drawn from Help & Training in Salesforce and is provided as supplemental study material. Your personal language preference setting does not affect whether the field appears. All certifications include access to new release content for subsequent releases. Plural Label The plural name of the object. if the organization’s default language is English and your personal language is French.com Certified Force. Maintaining a Certification Maintaining a certification requires successful completion of release-level certifications for the major Salesforce CRM releases throughout the year. Group. 3. B Answers to Sample Exam Questions 2. Certified salesforce. C Section 8.com Certified Force. For the total number of custom objects you can create. for 1 year. please study the material in the “Force. training & Certification 6 . Enterprise. Unlimited.com Essentials” student manual. review the Force. A. User Permissions Needed To create and edit custom objects: “Customize Application” Define custom objects to track and store data unique to your organization. The materials mentioned above make up the full reference set. Enter the following: Field Description Label A name used to refer to the object in any user interface pages. C 4. In preparing for the Salesforce. It doesn’t include all topics or items on the exam. you are not prompted for gender when creating a custom object. there’s a maintenance fee of $100 to keep the certification current for the following year. Professional. C 5. Note that this material is complementary to the Force. 1. 2.com professionals will be notified automatically when new release content and exams become available.com Developer exam. see Salesforce Editions and Limits.Salesforce. Click New Custom Object. or click Edit to modify an existing custom object. and study this supplemental material. Custom Objects Available in: Contact Manager. This field appears if the organization-wide default language expects gender. To create a custom object: 1. After 1 year. For example. this name is used for the tab. Section 9-1. If you create a tab for this object.com Essentials course materials and doesn’t cover the same material. Section 9. along with the associated exams. and Developer Editions.com Fundamentals book or PDF. Click Your Name | Setup | Create | Objects. Gender If it is appropriate for your organization’s default language.

Record Name The name used in page layouts. and if the custom object is the master in a master-detail relationship. Note: The Help & Training link at the top of any page is not affected by this setting. reports. It always opens the Salesforce Help & Training window. and detail pages. edit. so users can easily create audit trail reports when this feature is enabled. and what the value of the field was before and after the edit. training & Certification 7 . Salesforce adds a Division field to the custom object. For more information. Choose Open the standard Salesforce Help & Training window if you want to display the basic Salesforce help available for any custom object record. Click Save. in much the same way that you can add a PDF or photo as an attachment to an email. see Deploying Custom Objects. For more details about display format options. when it was changed.Salesforce. Context-Sensitive Help Setting Defines what displays when users click the Help for this Page context sensitive help link from the custom object record home (overview). list views. this unique name prevents naming conflicts on package installations. It must be unique. Allow Reports Makes the data in the custom object records available for reporting purposes. begin with a letter. not include spaces. This option is only available when you are creating a new object. enter a display format. and not contain two consecutive underscores. select this option to enable the custom object for divisions. To create reports on custom objects. In managed packages. For more information. History data is available for reporting. and other areas within Salesforce. Add Notes & Attachments. check if your label should be preceded by "an" instead of "a. Records that have unique IDs instead of names use auto-numbers. Description An optional description of the object. list views. Enable Divisions If your organization has divisions enabled. A meaningful description will help you remember the differences between your custom objects when you are viewing them in a list. An auto-number is a unique number assigned automatically. Display Format For a Record Name of type auto-number. Divisions group records for simplified search results. and search results. When the custom object has a masterdetail relationship with a standard object.com Developer – Study Guide (Spring ‘11) Field Description Starts with a vowel sound If it is appropriate for your organization’s default language.com Certified Force.com page  or Open a window using a custom S-control to display the Force. as well as list views and related lists. any custom objects on the detail side also get the Division field and inherit their division from the master record. You can have up to two sets of curly braces. 4. or is a lookup object on a standard object. such as who changed the value of a field." Object Name A unique name used to refer to the object when using the Web Services API. Data Type The type of field (text or auto-number) for the record name.com page or S-control you select as the context-sensitive help link from any custom object record page. Starting Number For a Record Name of type auto-number. select the standard object for the report type category instead. related lists. Allows users to be able to attach notes and attachments to custom object records. see Custom Field Attributes. It is always a read-only field. The Object Name field can contain only underscores and alphanumeric characters. Custom S-Control The S-control you have defined that contains the help content for this custom object. This option allows you to attach external documents to any object record.. For more information on creating custom help. Choose Open a window using a Force. choose the Other Reports report type category unless the custom object has a relationship with a standard object.. Allow Activities Allows users to associate tasks and scheduled calendar events related to the custom object records. enter the number to use when creating your first record for this custom object. see Notes on Enabling Activities for Custom Objects. Deployment Status Indicates whether the custom object is visible to other users. Launch the New Custom Tab Wizard Starts the custom tab wizard after you save the custom object. see Custom Help Overview. not end with an underscore. Track Field History Enables your organization to track changes to fields on the custom object records.

com Certified Force. the “Read. and other data. training & Certification 8 . and Developer Editions. and Developer Editions. Designate your corporate currency. Tip: If enhanced profile list views are enabled for your organization. Professional. To use multiple currencies: 1. Group.” “View All. Section 9-2. you can delegate the administration of the custom object to other nonadministrator users. you can define queues to distribute ownership of custom object records to your users. Enterprise. b.com Developer – Study Guide (Spring ‘11) Notes on Custom Objects Object Permissions In Enterprise. users with standard profiles (except System Administrator) can’t access new custom objects—you must assign them custom profiles and edit the profiles. Multiple Currencies Available in: Group.” “Delete. Unlimited. Edit the users’ accounts.com to enable Multi-Currency for your organization. Unlimited.” “Edit. you can change permissions for multiple profiles from the list view. quotes. For more information. ▪ c. simply edit their profiles. Note: For large organizations. Edit the custom profiles. Delegating Custom Object Administration After you create a custom object. when you create a custom object. see Custom Object Security.” “Create. reports. For users with custom profiles. You can change these permissions in custom profiles. See Setting Corporate Currency. Multi-Currency might be enabled over the next weekend to avoid performance issues during the work week. Search Custom object records appear in search results only if they have a custom tab. assigning the appropriate cloned custom profiles. but not standard profiles. Queues After you create a custom object. do one of the following: ▪ For users with standard profiles: a. forecasts.” “Edit. when you create a custom object. To enable access to custom objects.Salesforce. Clone the profiles of the users whose object permissions you want to change. enabling the permissions you want.” and “Modify All” permissions for that object are disabled for any profiles in which “View All Data” or “Modify All Data” is disabled.” and “Delete” permissions for that object are enabled for all profiles. 2. Sharing Model The data sharing model for all custom objects is controlled by an organization-wide default setting. enabling the permissions you want. User Permissions Needed To view currencies: “View Setup and Configuration” To change currencies: “Customize Application” Your organization can set up the ability to use multiple currencies in opportunities. and Professional editions. the “Read. That is. Contact salesforce.” “Create. Note: In Contact Manager.

For managers. and reports.S. Unlimited. reports. which is used as the default currency in his or her own quotas. and Developer Editions. Dollars” so that the Annual Revenue shows in dollars for one of your American accounts. In forecasts. If your organization has set up the ability to use multiple currencies. Editing Dated Exchange Rates. Every lead. currency amounts are not converted. Importing Multiple Currencies Available in: Group. opportunity. it displays in the currency of the associated record. quotes. quotes. You cannot disable multiple currencies for your organization if the currency fields are referenced in an Apex script.com Apex Code Overview. their team’s opportunities. 5. they simply display with the new currency code. you can also choose to display the Converted column—for example. The administrator sets the “corporate currency. The default value for the drop-down is your personal currency.com Certified Force. you can import amounts in different currencies. and other currency fields.com Developer – Study Guide (Spring ‘11) 3. Every user also has a personal currency. Custom formula fields are not tied to any particular currency. For more information. forecasts. This setup is also true for cross-object formulas that reference merge fields with different currencies. forecasts. Set conversion rates for new currencies. Activate additional currencies for your organization. if a script references the Account Currency field (represented as CurrencyIsoCode in the code). For example. note that workflow rules and approval processes that use filters instead of formulas convert all currency values to the corporate currency. forecasts. if you have enabled advanced currency management. training & Certification 9 . All conversion and roll-ups happen automatically. Note: If your organization uses advanced currency management. contact. the opportunity close date determines which conversion rate to use when displaying currency amounts. you can set the Account Currency to “USD-U. and other data is converted and rolled up to the manager’s personal currency. 4. Enterprise. To use dated exchange rates. enable advanced currency management. You can change the currency used for report totals by selecting a currency from the Display Currencies Using dropdown list on the Select Criteria page of the report wizard. but can be displayed in any active currency. All currency amounts are displayed in the default currency of the record as well as in the personal currency of the user. account. see Force. For example. opportunities. Professional. Using Multiple Currencies International organizations can use multiple currencies in opportunities. Annual Revenue Converted—which will show amounts in the currency you select from the Display Currencies Using drop-down list. Amounts in reports are shown in their original currencies. and case has a field that specifies the currency to use for all amount fields in that record.Salesforce. quotes. Users can also create opportunities and enter amounts using other active currencies. and formulas in workflow rules and approval processes. The manager can also drill down to see the data in its native currency. multiple currencies cannot be disabled. If the result of a formula field is a currency amount. However. The active currencies represent the countries in which the organization does business. The administrator also maintains the list of active currencies and their conversion rates relative to the corporate currency. Only active currencies can be used in currency amount fields. See Editing Conversion Rates and. When you change the default currency of a record. For any amount. currency amounts are automatically converted to the user’s personal currency. See Activating and Deactivating Currencies.” which reflects the currency of the corporate headquarters.

S. contacts. Currency codes are three letter codes that follow an international standard. You cannot specify different currencies for associated accounts and contacts. A user can only view objects in the console’s list view frame if those objects are added to the console layout to which his or her profile is assigned. The Console The console is a tab that combines a list view and related records into one screen with different frames so users have all the information they need when interacting with Salesforce.S. the existing amount is not converted to the corresponding number in the new currency. if your file has 100 and your personal currency is U. you can specify the currency type for amount fields using the Currency ISO Code column in your import file. custom objects. if your personal currency is U. accounts. leads. your personal currency is used. The following rules apply: ▪ ▪ ▪ ▪ ▪ Entering currency codes – Enter a currency code in the Currency ISO Code column in your import file. dollars. Organization Import When importing accounts.S.Salesforce. Administrators choose the information displayed in the console to accommodate users’ varied and evolving business needs. and then assign that console layout to the appropriate user profiles. this amount is interpreted as EUR 100. When updating existing records via importing. this is imported as USD 100. all amounts in new accounts and contacts are imported in your personal currency. or solutions for your organization. assuming your personal currency is U. For example. Entering inactive currencies – If you enter an inactive currency in your import file. and your import file has 100 as the annual revenue of an existing account with Account Currency of euros.com Certified Force. dollars (currency code = USD). and contacts with fewer clicks and without switching back and forth between screens. if your file has 100 for a record that has a currency of EUR (the currency code for euros). then you would add both cases and contacts to a console layout. USD is the currency code for U. the amounts in your file are converted from your personal currency to the currency of the account or contact.92 and “EUR” as the currency code for euros. if you do not use the Currency ISO Code column or fail to map it. dollars. For example. Omitting the Currency ISO Code column – When creating new records via importing. the Currency ISO Code column applies to both an account and its associated contact. With the console. users can quickly find. Console layouts define what objects are available to users in the console’s list view frame. For example. any amounts are interpreted as having the existing currency of the record. your personal currency will be used instead. and edit records such as cases. then it is imported as USD 100. assuming a conversion rate of 0. For example. if your file has AUD 100 for 100 Australian dollars but AUD is an inactive currency for your organization. When import updates amounts in existing records. if you do not use the Currency ISO Code column or fail to map it. then the new Annual Revenue value of the account will be EUR 92. training & Certification 10 .com Developer – Study Guide (Spring ‘11) Import My Accounts and Contacts For personal imports. if you want users to see list views of cases and contacts in the console. Updating the currency code – When updating the currency code but not the currency amount for existing accounts and contacts. amounts will not be modified. Using one currency for accounts and contacts – If you are importing accounts and contacts.S. However. Click Your Name | Setup | Company Profile | Manage Currencies to see a list of valid codes for your organization. dollars. For example. For example. view. Section 9-3.

salesforce. you’ll only be able to set them on create. By setting these fields.com Certified Force. When you’re migrating data from an external system. In certain cases (such as routinely copying new data from an external system to Salesforce) this feature can be enabled permanently.com Support. numbers. LastModifiedByID. you can: ▪ ▪ ▪ ▪ Click New to create layouts Click Edit to modify a layout Click Del to delete a layout Click Console Layout Assignment to assign console layouts to profiles Section 9-4. or symbols but are encrypted.Salesforce. records will appear to have been created at their original created time from your old system. Once the feature is enabled. The feature must be enabled by Salesforce. CreatedDate. The objects that you can edit these fields on are: ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ Account Opportunity Contact Lead Case Task Event Custom Objects To enable this feature.com Support and requested by an administrator in the organization. and a number of other fields on most objects that were previously read-only. please contact Salesforce. Because these fields are intended to be audit fields. the API lets customers set the CreatedBy. or have default values. an external ID.com recommends that this feature only be enabled while you’re doing data migration. if this feature is enabled. review the following implementation notes and best practices: Implementation Notes ▪ ▪ To enable encrypted fields for your organization.com Developer – Study Guide (Spring ‘11) From the console layouts list page. training & Certification 11 . In general. Encrypted Custom Fields Encrypted custom fields are text fields that can contain letters.com. salesforce. Encrypted fields are encrypted with 128-bit keys and use the AES (Advanced Encryption Standard) algorithm. not update. you’ll be able to set these fields when creating the record. The value of an encrypted field is only visible to users that have the “View Encrypted Data” permission.com can’t guarantee that the records will have the correct data in these audit fields because they can be set on create. Before you begin working with encrypted custom fields. contact salesforce. LastModifiedDate. ▪ Encrypted custom fields cannot be unique. System Fields Salesforce has the ability to set system fields through the API. accessed by clicking Setup | Customize | Console | Console Layouts. Also. Section 9-5.

com Certified Force. Best Practices ▪ ▪ ▪ ▪ ▪ Encrypted fields are editable regardless of whether the user has the “View Encrypted Data” permission. Data for encrypted fields in the debug log is masked. reports. Use encrypted custom fields only when government regulations require it because they involve additional processing and have search-related limitations Section 9-6. Salesforce Connect for Lotus Notes. make sure your organization has secure connections using SSL (Secure Sockets Layer) enabled. To encrypt the values of an existing (unencrypted) field. To avoid this. create an encrypted custom field to store that data. Encrypted fields are not available for use in filters such as list views. see “Setting Session Security. Only users with the “View Encrypted Data” permission can clone the value of an encrypted field when cloning that record. You can use encrypted fields in email templates yet the value is always masked regardless of whether you have the “View Encrypted Data” permission. roll-up summary fields. field-level security settings. lead conversion.com code scripts. Both work regardless of whether the user has the “View Encrypted Data” permission. and rule filters. Page Layouts When customizing page layouts for tasks.Salesforce. Salesforce Connect for Outlook. or page layout settings to prevent users from editing encrypted fields. outbound messages. Encrypted fields cannot be used to define report criteria but they can be included in report results. see “Creating Tasks. and import that data into the new encrypted field. Encrypted fields are not searchable but they can be included in search results. you can select the following checkboxes: ▪ ▪ Show Task Email Notification – This checkbox controls whether the Send Notification Email checkbox displays when users create or edit a task. You can still validate the values of encrypted fields using validation rules or Force. export the data. Encrypted fields are not available in the following: Salesforce Mobile. contact your administrator for assistance. be aware that the other user will be able to see encrypted fields unmasked (in plain text). first clone your profile and remove the “View Encrypted Data” permission from the cloned profile.” training & Certification 12 .com Developer – Study Guide (Spring ‘11) ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ While other text fields can contain up to 255 characters. To enable this setting for your organization. Use validation rules to ensure that the data entered matches the mask type selected. Existing custom fields cannot be converted into encrypted fields nor can encrypted fields be converted into another data type. Note that a user’s personal preference for defaulting the state of the checkbox takes precedence over the organization-wide setting. Use validation rules. For more information.” If you have the “View Encrypted Data” permission and you grant login access to another user. encrypted text fields are limited to 175 characters due to the encryption algorithm. default values. Salesforce Connect Offline. then assign yourself to the cloned profile before granting login access to the other user. and Web-to-Lead and Web-to-Case forms. If you do not have the appropriate permissions to clone and change your profile. Mask Type is not an input mask that ensures the data matches the Mask Type. Select Task Email Notification – This checkbox by default controls whether the Send Notification Email checkbox is selected by default when users create or edit a task. If you have created encrypted custom fields. workflow rule criteria or formulas. formula fields.

but you can remove them by dragging them to the box on the right. custom links. create an account custom button for the detail page and a contact custom list button before putting them both on an account page layout. With Force. contacts.com pages. Enterprise. For example. an equivalent link appears if you add Other Address to the Address Information section.com pages tag corresponds to a coarse or fine-grained user interface component.com pages (Visualforce) uses a tag-based markup language to give developers a more powerful way to build applications and customize the Salesforce user interface. For example. you can’t add standard fields or related lists. custom links.com pages (Visualforce)? Force. a related list.” If you use the original page layout editor to view a page layout that was created in the new page layout editor.com pages framework includes a tag-based markup language similar to HTML. or a field.com platform. field-level security is only available for custom fields on the user object. However. each Force. Also.com pages markup language. For information on setting which fields display for users in search results. For more information. Also. custom buttons.com pages. and standard field customizations are not included on page layouts for the user object. custom UIs that can be hosted natively on the Force. see “Defining Mini Page Layouts.” When editing a person account page layout: ▪ ▪ If you add Shipping Address next to Billing Address in the Address Information section. Contact fields and related lists are available on person account page layouts. and Developer Editions. In the Force. individual users can customize which tabs and related lists display for their personal use. You can only move some items to certain sections on the page layout. You can’t move or add blank spaces in the original page layout editor. page layouts control which fields users can access in related lists.com pages is a framework that lets developers build sophisticated.” In Professional. In Enterprise. Group. such as a section of a page. S-controls. Create the appropriate buttons before editing your page layout. reports. The Force. the original page layout editor will show any blank spaces you added. In Personal. Tagging. a link will display on the person account edit page that lets you copy the billing address to the shipping address. efficient application interaction Force. contact custom links and custom buttons aren’t available. see “Custom Button Considerations. Unlimited. list views. you can: ▪ ▪ ▪ Create custom user interfaces (UIs) that easily leverage standard Salesforce styles Create custom UIs that replace the standard Salesforce styles Build wizards and other navigation patterns that use data-specific rules for optimal.” In the organization-wide import wizards for accounts. even if a field is hidden or read-only in their page layout or field-level security settings.Salesforce.com Certified Force. For implementation tips and best practices on custom buttons. however. Also. email and mail merge templates. and Professional Editions. you can drag a custom S-control to any field section on the page layout. Individual users can import only into the fields that are accessible to them via their page layout or field-level security settings. You can define mini page layouts for the user object. administrators have access to import into any field. related lists. this access is controlled by field-level security. Unlimited. What is Force. and when synchronizing data.com page training & Certification 13 . Salesforce Connect Offline. and Developer Editions. but not to a Related List Section or Button Section.com Developer – Study Guide (Spring ‘11) Page layouts for the user object only include custom fields. a customized mini page layout will not display in the console. and leads. and Force. Section 9-7. see “Customizing Search Layouts. The behavior of Force. see “Customizing Your Display. For more information.

Force. For example.com code that implements all of a page’s logic.com pages in ways similar to S-controls to: ▪ ▪ ▪ ▪ Override standard buttons. in which the object and field-level permissions of the current user are ignored. or developers can associate their own logic with a controller class written in Force. A custom controller is a class written in Force. A developer can either use a standard controller provided by the Force. You can specify whether a user can execute methods in a custom controller based on the user’s profile.com page? Developers can use Force. Because standard controllers execute in user mode—in which the permissions. such as when a user clicks a button or link. but you must also reimplement any functionality that was already provided in a standard controller.com platform or add custom controller logic with a class written in Force.com Pages Markup Force. The markup defines the UI components that should be included on the page and the way they should appear.com code that adds to or overrides behavior in a standard or custom controller.com page markup. such as the Accounts tab home page Define custom tabs Embed components in detail page layouts.com page results in the same behavior as clicking Save on a standard Account edit page.com code (Apex). If you use a custom controller.com page definition.com Page Controllers A Force.com page controller Force. you can define new navigation elements or behaviors. Extensions let you leverage the functionality of another controller while adding your own custom logic. without leveraging a standard controller.Salesforce. What is a Force. As with custom controllers.com page markup A Force.com pages be used? Developers can use Force.com page that respects user permissions. Although the extension class executes in system mode.com pages markup consists of Force.com pages tags.com code: ▪ ▪ ▪ A standard controller consists of the same functionality and logic used for a standard Salesforce page. the standard controller executes in user mode. and sharing rules of the current user are enforced—extending a standard controller lets you build a Force. A controller extension is a class written in Force. Controllers also provide access to the data that should be displayed in a page and can modify component behavior. custom controllers execute entirely in system mode.com page controller is a set of instructions that specify what happens when a user interacts with the components specified in associated Force.com Developer – Study Guide (Spring ‘11) components can either be controlled by the same logic used in standard Salesforce pages. JavaScript. A page definition consists of two primary elements: ▪ ▪ Force. HTML. clicking a Save button in a Force. such as the New button for accounts or the Save button for contacts Override tab overview pages. Like other Force. or any other Web-enabled code embedded within a single <apex:page> tag. Where can Force.com classes. you can specify whether a user can execute methods in a controller extension based on the user’s profile. if you use the standard Accounts controller.com pages to create a Force. similar to the way inline S-controls can be embedded training & Certification 14 . field-level security.com Certified Force.

begin with a letter.com pages that display your custom user interfaces S-controls – Upload content such as Java applets or Active-X controls for use in dynamic custom links or Web tabs Static Resources – Upload content you can reference in a Force. JavaScript programs. c. a milestone. These tools require some programming knowledge: Force. testing. and not contain two consecutive underscores. click Your Name | Setup | Customize | Entitlement Management | Entitlement Processes. provided they are defined for different objects. if you select Contract.com page components you can use in one or more Force.com platform includes the following tools in Setup | Develop. Enter a description for this email alert. You can have actions of the same type (for example. b. not end with an underscore. Click New Email Alert. 2.com Developer – Study Guide (Spring ‘11) Section 9-8. you can define training & Certification 15 . Creating Email Alerts for Workflow. and Developer Editions. debugging. and click Add Workflow Action. For milestones on entitlement processes. If available.com Certified Force.com code Section 9-9. click Your Name | Setup | Create | Workflow & Approvals | Email Alerts. or Milestones Available in: Enterprise. you can define the recipients of this email alert using contact and user lookup fields that are relevant to that object. choose an entitlement process. For example. Also. including archives (such as . two email alerts) with the same unique name. Salesforce uses this object when generating merge field values for email templates with workflow rules and approval processes. not include spaces. It must be unique within the selected object type. 3. images. Approvals.com classes you can use to add additional business logic to your custom applications API – Download WSDL files that let you integrate external applications with Salesforce Components – Define custom Force. User Permissions Needed To view currencies: “View Setup and Configuration” To change currencies: “Customize Application” To create email alerts: 1. and other files Tools – Download tools that can assist you with building. and deploying Force.zip and . Unlimited.Salesforce.com Classes – Define Force. such as one for Campaigns and one for Opportunities. Configure the email alert: a. stylesheets.jar files). Development Tools The Force. choose the object for this email alert. The Unique Name field can contain only underscores and alphanumeric characters. The requirement for uniqueness is only within the selected object type.com classes that can process inbound email Pages – Define Force.com page.com pages Email Services – Define Force. For workflow and approvals. Enter a unique name to refer to this component in the Web Services API and to prevent naming conflicts for managed package installations.

If you use the template for any other email alert action—in either workflow rules or approval processes—the merge fields will return a null value. ë Case Team – All users assigned to a particular case team role. f. opportunities. e. The options are: ë Account Owner – The user listed as the account owner of either the account itself or the account associated with the record. training & Certification 16 . plus all users in roles below that role. field_name}. ë Creator – The user who created the record. Email Field refers to the email field on the lead or contact that the campaign member is based on. d.com Developer – Study Guide (Spring ‘11) the contract signer as a recipient. you can select the Customer Signed By field for contracts that contain the name of the contract signer. contract records have an Activated By field that contains the name of the user that activated the contract. ë Related Lead or Contact Owner – A campaign member’s lead or contact owner. these fields will return values only when that email template is used as the approval assignment template. cases. Also. ë Customer Portal User – All users associated with a Customer Portal. Check the Protected Component check box to mark the alert as protected. and any custom object that is a child of the account object.Salesforce. For example. ë Public Groups – The users in a particular public group. If you select another type of object or the associated account does not have an account owner. For example. an account owner must be specified for the associated account. ë Portal Role and Subordinates – All users assigned to a particular portal role. however. ë Related User – An associated user on the record. ë Related Contact – An associated contact on the record. Select who should receive this email alert. Note: The Account Team option is always available. Tip: To create workflow rules for case comments so that comments added to cases send email alerts when a rule is triggered. contacts. Choose an email template. The object is read only if the new email alert is associated with an approval process or workflow rule for a particular object. ë Partner User – All users associated with a partner portal. Salesforce sends the email alert to the record owner instead. ë Portal Role – All users assigned to a particular portal role.com Certified Force.Note When creating email alerts for campaign members. select Case Comment in the Object drop-down list when creating a new workflow rule. This option only works for email alerts on accounts. ë Email Field – An email address field on the selected object. contracts. emails are only sent when the rule is associated with the account object or any of its immediate child objects. Note: If the email template you choose contains approval merge fields named {!ApprovalRequest. ë Owner – The record owner. ë Account Team – All users assigned to a particular account team role. such as the Email field on lead records or custom email fields.

training & Certification 17 . exception types. ë Users – A particular user. Section 9-10.com pages. This allows you to use a standard global email address for your organization (such as support@company. including button clicks. ë A previously configured and verified organization-wide address. queue members are notified as well. object-oriented programming language that lets developers execute flow and transaction control statements on the Force. You can still customize individual email alerts to use a different From Email Address. or entitlement process. the queue email receives the email alert. however.com) instead of the default From field. To set email alerts into action. Optionally. Force. which is the email address of the person who updates the record. Force. Note: If you select Make this the default From email address for this object’s email alerts. h. it overrides the From Email Address for all email alerts associated with that object. and static initialization code under Setup | Develop | Apex Classes. Note: If your email recipient is a record owner and the owner of the record is a queue. Upon saving. Only verified organization-wide email addresses display in the From Email Address picklist. Optionally. Force. variables. Salesforce clears the Selected Recipients list.Salesforce.com Developer – Study Guide (Spring ‘11) ë Role – All of the users assigned a particular role. it only works for email alerts configured for opportunities. Select the recipients who should receive this email alert in the Available Recipients list and click Add. Classes consist of other classes. enter up to five additional email addresses. What is Force.com code can be stored on the platform in two different forms: 1. It does not work for email alerts configured for child objects of opportunities. i. j. k.com code lets developers add business logic to most system events.com platform server in conjunction with calls to the Web Services API. a dialog box prompts you to confirm your selection. The recipients that match your search results appear in the Available Recipients list. excluding partner portal and Customer Portal users. A class – A template or blueprint from which developers can create Force. g. If the queue is set up so that email is sent to all members. only queue members are notified. ë Sales Team – A member of the sales team. change the From Email Address to: ë The email address of the default workflow user. associate them with a workflow rule.com code (Apex) is a Java-like. Note: If you change the object after selecting recipients.com Certified Force. Click Save.com code scripts can be initiated by Web service requests and from triggers on objects. ë Role and Internal Subordinates – All users in a particular role.com code objects. Using syntax that looks like Java and acts like database stored procedures. Note: The Sales Team option is always available. ë Role and Subordinates – All users in a particular role. and Force. If no queue email is specified. approval process. plus all users in roles below that role. user-defined methods.com code (Apex)? Force. plus all users in roles below that role. related record updates.

Triggers are stored as metadata in Salesforce at Setup | Customize | Standard_Object_Name | Triggers for standard objects and on the object detail page for custom objects at Setup | Create | Objects. You can quickly open these files by entering %TEMP%\sdl. sdl_out.000 or more records You need to load into an object that isn’t yet supported by Web-based importing You want to schedule regular data loads.log and %TEMP%\sdl_out.Salesforce.com Support. delete. Section 9-11. Log entries marked “INFO” are procedural items.com code scripts generally run in system context. Refer to the following guidelines to determine which method of importing best suits your business needs: Use the Data Loader when: ▪ ▪ ▪ ▪ ▪ You need to load 50. extracts. Data Loader The Data Loader is a client application for the bulk import or export of data. you can access log files that track the operations and network connections made by the Data Loader. or lead email address Section 9-12. and loads data from comma separated values (CSV) files.com Developer – Study Guide (Spring ‘11) 2. and sharing rules are not taken into account during script execution. contact email address. such as Microsoft Notepad. Force.000 records The object you need to import is supported by the Web-based import wizards You want to prevent duplicates by uploading records according to account name and site. that is. When exporting data. The Data Loader complements the Web-based import wizards that are accessible from the Setup menu in the online application. A trigger – A Force. Use it to insert. it includes log entries for the creation of proxy server network connections.log Contains a detailed chronological list of Data Loader log entries. The two log files are: sdl.com Certified Force. it outputs CSV files. or if requested by Salesforce. field-level security. Troubleshooting Data Loader Operations If you need to investigate a problem with the Data Loader. the Data Loader reads. such as before object records are inserted into the database or after records have been deleted. For example. training & Certification 18 .log A supplemental log that contains additional information not captured in sdl. update. such as nightly imports You want to save multiple mapping files for later use You want to export your data for backup purposes Use Web-based importing when: ▪ ▪ ▪ You’re loading less than 50. or extract Salesforce records. When importing data. Log entries marked “ERROR” are problems such as a submitted record missing a required field.com code script that executes before or after specific data manipulation language (DML) events occur. These files can be opened with commonly available text editor programs.log.log in either the Run dialog or the Windows Explorer address bar. the current user’s profile-based permissions. such as logging in to Salesforce.

com. SG_CertifiedDeveloper_Spring11_2011-03-16 . 94105 United States 1-800-NO-SOFTWARE www. Take the following example: 1. 3.com Global Offices Latin America Japan Asia/Pacific EMEA +1-415-536-4606 +81-3-5785-8201 +65-6302-5700 +4121-6953700 Copyright ©2011. The next day. or first submitted for approval For More Information Contact your account executive to learn how we can help you accelerate your CRM success. Other names used herein may be trademarks of their respective owners. The Solution with Record Type ID 50130000000L7s5 will be accessible in the Sandbox org as well.com. All rights reserved.com owns other registered and unregistered trademarks. where numbers added to the diagram correspond to details in a table. Acme creates a Full Copy Sandbox.com. A Solution with record id 50130000000L7s5 is created on Acme’s org on na2. Salesforce. salesforce.salesforce. Process Visualizer You can use the Process Visualizer to: ▪ ▪ ▪ Display a flowchart of each saved approval process ▪ Print an annotated version of the approval process.Section 9-13.com and the “no software” logo are registered trademarks of salesforce. 2. rejected. recalled. which is included in the printable view ▪ ▪ ▪ Improve communication about the approval process and gain buy-in from step owners Reinforce your company’s policies by documenting the decisions you reached when the approval process was designed Share approval process diagrams by saving annotated versions as PDF files (requires an Adobe PDF print driver) Help you quickly locate key details by searching multi-step or complex diagrams for matching text Help you visualize and understand graphically: • The steps necessary for a record to be approved • The designated approvers for each step • The criteria used to trigger the approval process • The specific actions to take when a record is approved. inc. CA. Corporate Headquarters The Landmark @ One Market Suite 300 San Francisco.salesforce. inc.. and salesforce. Record IDs The 15/18 character Record Ids in Salesforce are identical in an org and all its sandboxes. Section 9-14.