Professional Documents
Culture Documents
Contents
Software as a Service (SaaS) ................................................................................................................... 3 Ideas Overview:................................................................................................................................... 3 New Release Information ................................................................................................................... 6 Answers Overview: ............................................................................................................................. 7 CRM Content Overview: ..................................................................................................................... 8 Force.com (Platform as a Service) ........................................................................................................ 12 Force.com platform .......................................................................................................................... 12 The Cloud computing model ............................................................................................................. 12 Types of Applications suitable for Force.com ................................................................................... 13 Salesforce localization....................................................................................................................... 13 Application Essentials ........................................................................................................................... 15 Objects, Fields, Relationships ........................................................................................................... 15 Formula Overview: ............................................................................................................................ 17 Custom Buttons and Links ................................................................................................................ 18 Usage of Custom Buttons ................................................................................................................. 20 Button Overrides and Visualforce ..................................................................................................... 20 Security and Access ............................................................................................................................... 21 Sharing Model Overview:.................................................................................................................. 21 What are the salesforce.com audit levels? ....................................................................................... 23 Delegated Administration Overview:................................................................................................ 25 Delegating Administrative Duties ..................................................................................................... 25 Territory Management Overview: .................................................................................................... 25 Record Types versus Page Layouts ................................................................................................... 27 Implementing Business Processes ........................................................................................................ 29 Workflow rules.................................................................................................................................. 29 Approval Proces ................................................................................................................................ 31 In what order are automation rules and Apex triggers processed? ................................................. 34 Process Visualizer Overview ............................................................................................................. 34 Managing Data ...................................................................................................................................... 35 Data Loader Overview....................................................................................................................... 35 How can I identify the attachments in my Data Export? .................................................................. 35 How to Export attachments? ............................................................................................................ 36 Cees van der Sluis Winter12 1|Page
Winter12
2|Page
Winter12
3|Page
Winter12
4|Page
Winter12
5|Page
Winter12
6|Page
Winter12
7|Page
Winter12
9|Page
Winter12
11 | P a g e
Winter12
12 | P a g e
Salesforce localization
The concepts used when implementing Salesforce Localization includes: Implement the Locale in the client org, including changing defaults for Company and Users. o Timezone o Location o Language o Currency Work with Salesforce Support to enable Multiple Currencies Translate the customizations using the Translation Workbench Enter or translate any data, setup multiple currencies, change defaults for currencies Test the translation in a Sandbox or Developer Org How to support a global implementation: Delegated administration Advanced Currency Management Territory Management Regional Pricebooks Translation Workbench
Winter12
13 | P a g e
Winter12
14 | P a g e
Application Essentials
Objects, Fields, Relationships
Custom objects are custom database tables that allow you to store information unique to your organization. For example, your organization may want to create a custom object called Quotes to store data for your companys sales quotes. After you define a custom object, you can: Create custom fields. For the total number of custom fields you can create, see Salesforce Editions and Limits. Associate the custom object with other records and display the custom object data in custom related lists. For more information, see Overview of Relationships. Track tasks and events for custom object records Build page layouts Customize the search results and the custom object fields that display in them Create a custom tab for the custom object Create reports and dashboards to analyze custom object data Share your custom objects, custom tabs, custom apps, and any other related components with other Salesforce users on Force.com AppExchange. See Overview of Packages. Import custom object records Set up a queue to distribute ownership of custom object records Custom fields will enable you to store the information that is important to your organization. Before you begin, determine the type of custom field you want to create. You can create many different custom field types, including lookup, master-detail, and hierarchical relationships. Use relationships to associate an object with other objects in Salesforce. For example, a relationship can link custom object records to standard object records in a related list, such as linking a custom object called Bugs to cases to track product defects associated with customer cases. You can define different types of relationships by creating custom relationship fields on an object. Before you begin creating relationships, determine the type of relationship that suits your needs. There are different types of relationships between objects in Salesforce. Their differences include how they handle data deletion, record ownership, security, and required fields in page layouts: Master-detail This type of relationship closely links objects together such that the master record controls certain behaviors of the detail and subdetail record. For example, you can define a twoobject master-detail relationship, such as AccountExpense Report, the extend the relationship to subdetail records, such as AccountExpense ReportExpense Line Item. You can then perform operations across the masterdetailsubdetail relationship.
Winter12
15 | P a g e
Winter12
16 | P a g e
Creating a validation rule formula, for example, a user cannot save an Opportunity when the Opportunity Stage is Closed Lost and the field Reason Lost is empty AND(...)
Creating validation rule to prevent unwanted changes, for example the Amount of an Opportunity cannot be changed when an Opportunity is set to Closed Won AND(IsCloded, ISCHANGED(Amount))
Winter12
17 | P a g e
Creating a formula field that spans objects, for example show the Candidate details (first name, last name, phone number and education level) on the Job Application
Creating a custom summary formula, for example show how sales reps are performing month over month (growth percentage) Validating data against a table, for example match the Zip Code against the State entered
Namespace Prefix
Winter12
18 | P a g e
Protected Component
Behavior
Content Source
Content
Winter12
19 | P a g e
Link Encoding
4. Optionally, click Check Syntax to validate all Salesforce merge fields and functions. 5. Click Save when you are finished. Click Quick Save to save and continue editing. Click Preview to view the URL specified. Click Cancel to quit without saving your content. 6. Edit the page layout for the appropriate tab or search layout to display the new button or link. If you add a custom link for users, it is automatically added to the Custom Links section of the user detail page. Detail page buttons can only be added to the Button Section of a page layout. 7. Optionally, set the window properties if you prefer the link or button opening using different settings than the user's default browser settings.
Winter12
20 | P a g e
Winter12
21 | P a g e
Role Controls level visibility users have to the organizations data May have many users but a single user will only have one role
Role Hierarchy Controls data visibility Controls record roll up for reporting Allow users access to records owned by users below them in the hierarchy, regardless of OWD settings Does not necessary correspond to the companys employee organization chart
Record Types If your organization uses record types, edit the record type to modify which pick list values are visible for the record type. You can set default pick list values based upon the record type for various divisions.
Winter12
22 | P a g e
System Debug Log A debug log records database operations, system processes, and errors that occur when executing a transaction or while running unit tests. The system generates a debug log for a user every time that user executes a transaction that is included in the filter criteria. It will enable you to view a real-time trace of automated processes or up to 20 persisted logs Debug logs can contain information about: Database changes HTTP callouts Apex errors Resources used by Apex Automated workflow processes, such as: o Workflow rules o Assignment rules o Approval processes o Validation rules There are many different types of application logs collected. Server access is logged, network access is logged, firewalls log traffic, network intrusion detection systems log traffic, etc. Logs are typically reviewed daily. The logs are collected by various tools such as HP OpenView, CiscoWorks, etc., and alarms are configured to alert the systems engineering team to various activities. Firewalls and IDS systems are configured with automated syslog notifications for key events. Logs are archived and are currently stored for a minimum of 6 months. These logs are not available to customers. Limited forensic evidence, if needed, is available from the web or application logs and can be provided at salesforce.com for standard consulting fees. We offer a weekly export service for those customers that have a requirement to have a local backup copy of their data or a set of data they can import into another system such as an ERP system. The organization administrator for an organization which subscribes to the WES can request a copy of their organizations data. Once the data is assembled into a zip file, the organization administrator is notified via email that their data is ready for secure download (SSL) from within the application. The zip file contains a number of .csv files, each representing a major entity type from the application, and it includes primary and foreign keys so that the information can be reassembled in another relational system. If auditing needs to be verified and maintained for regulatory or advanced security environments the sforce API supports data replication, which allows you to store and maintain a local, separate copy of your organization's pertinent salesforce.com data including the META data (logins etc) for specialized uses, such as data warehousing, data mining, custom reporting, analytics, integration with other applications, and so on. Data replication provides you with local control and the ability to run large or ad hoc analytical queries across the entire data set without transmitting all that data across the network.
Winter12
24 | P a g e
ADM301 Exam Outline Details Delegated Administration Overview: Delegating Administrative Duties
Delegated administrators can perform the following tasks: Creating and editing users and resetting passwords for users in specified roles and all subordinate roles, including setting quotas, creating default sales teams, and creating personal groups for those users Unlocking non-portal users Assigning users to specified profiles Logging in as a user who has granted login access to their administrator Managing custom objects created by an administrator Notes on Delegated Administration of Custom Objects: Delegated administrators can customize nearly every aspect of the custom object, including creating a custom tab for it. However, they cannot create or modify relationships on the object or set organization-wide sharing defaults. Delegated administrators need to have access to custom objects if they need to access the merge fields on those objects from formulas.
Winter12
25 | P a g e
Winter12
26 | P a g e
Role Hierarchy
Is available by default Has no impact on forecasting when territory management is enabled Supports assigning a user to only one role Affects all other reports Grants access to records based on ownership. Users receive whatever access is most permissive across both hierarchies.
Winter12
27 | P a g e
The Record Types and Page Layout Assignments settings have some variations for the following objects or tabs. Object or Tab
Accounts
Variation
If your organization uses person accounts, the accounts object additionally includes Business Account Default Record Type and Person Account Default Record Type settings, which specify the default record type to use when the profile's users create business or person account records from converted leads. The cases object additionally includes Case Close settings, which show the page layout assignments to use for each record type on closed cases. That is, the same record type may have different page layouts for open and closed cases. With this additional setting, when users close a case, the case may have a different page layout that exposes how it was closed. You can't specify custom record types for the home tab. You can only select a page layout assignment for the --Master-- record type.
Cases
Home
6. Click Save.
Winter12
28 | P a g e
Winter12
29 | P a g e
Winter12
30 | P a g e
Winter12
32 | P a g e
Winter12
33 | P a g e
ADM301 Exam Outline Details In what order are automation rules and Apex triggers processed?
The order automation rules are processed is: System Validation Rules Custom Validation Rules Assignment rules Auto-response rules Workflow rules Escalation rules There is no way to control the order of execution within each group above. Workflow field updates that run based on an approval process or time-dependent action do not trigger any rules. Formula fields do not execute in this way. They calculate and display their results real-time whenever the field is accessed in any way. So for example if a Workflow Rule uses a Formula Field in its criteria or formula, the formula field is evaluated when the Workflow Rule criteria is checked.
Winter12
34 | P a g e
Managing Data
Data Loader Overview
Data Loader is a client application for the bulk import or export of data. Use it to insert, update, delete, or export Salesforce records. When importing data, Data Loader reads, extracts, and loads data from comma separated values (CSV) files or from a database connection. When exporting data, it outputs CSV files. You can use Data Loader in two different ways: User interfaceWhen you use the user interface, you work interactively to specify the configuration parameters, CSV files used for import and export, and the field mappings that map the field names in your import file with the field names in Salesforce. Command lineWhen you use the command line, you specify the configuration, data sources, mappings, and actions in files. This enables you to set up Data Loader for automated processing. Use Data Loader when: You need to load 50,000 to 5,000,000 records. If you need to load more than 5,000,000 records, we recommend you work with a Salesforce.com partner. You need to load into an object that is not yet supported by the import wizards. You want to schedule regular data loads, such as nightly imports. You want to export your data for backup purposes. Your organization can generate backup files of your data on a weekly or monthly basis depending on your edition. You can export all of your organization's data into a set of comma-separated values (CSV) files. Data Loader export wizard can be used to extract data from any Salesforce object. When you export, you can choose to include (Export All) or exclude (Export) soft-deleted records. You can use a SOQL relationship query to include fields from a related object.
Winter12
35 | P a g e
Winter12
36 | P a g e
Winter12
37 | P a g e
Retrieving Data
There are several ways to retrieve data out of Salesforce: Reports Weekly Data Exports Data Loader and other API-based applications Community tools such as the Excel Connector The simpler the method the less flexibility
De-duplicating data
There are three necessary steps required to deal with de-duplicating data. 1. Establish what qualifies as a duplicate: Get this criteria from the data expert. 2. Find a common identifier between duplicates. 3. Determine additional duplicate field info and method for de-duping. Once you have carried out the necessary steps the data should be scrubbed to remove formatting and the field data should be concatenated. AppExchange: DemandTools is a .NET client applications developed by CRMfusion Inc. it is a suite of tools for data maintenance, cleansing, discovery, and address verification. AppExchange: RingLead Declone is a tool which can identify duplicate leads, contacts, and accounts; it provides services for de-duplicating and reports from the tool can be linked to existing merge utilities in Salesforce. De-duplicating: Merging Using the Wizard The merge wizard merges duplicate accounts and can merge up to three accounts at a time. In order to use the merge wizard, the user must have the delete permission on their profile. Following the merger any non-surviving records are moved to the recycle bin. Entering Clean Data: There are a number of ways to minimize the entry of dirty data in your system: Users should be trained on established naming conventions Validation rules should be created to ensure that data is complete and obeys business rules before saving. Data quality standard can be enforced by using lookup fields, custom formula fields, and workflow field updates. Record types and page layouts can be modified to only display relevant fields and buttons. Visualforce can be implemented to manage data modifications. Cees van der Sluis Winter12 38 | P a g e
Validation Rules: Implement Validation Rules to validate data can prevent bad data from entering the system. (Validation rules do not scrub or modify existing bad data). Using data validation the admin can enforce business rules to ensure: Properly formatted data Correct data types Date Ranges Data Entry Rules should be tested before deployment to ensure that they do not contradict with other rules or existing business logic. Custom Lookup Fields: Custom lookup fields are used in situations when picklists are too limiting, need to be used in multiple places, or need to be added to very frequently. In these cases, a custom lookup object can be used to create an enumerated list of common data to share across multiple objects. Lookup Filters: Lookup filters are administrator settings that restrict the values and lookup dialog results for a field. The administrate settings on: Lookup Fields Master-Detail Fields Hierarchical relationship fields Record Types & Page Layouts: Record types allow the administrator to offer different business processes, picklist values, and page layouts to users based on their profiles. Page Layouts allow the administrator to define page layouts for objects and ensure that only relevant fields, picklist values and buttons that apply to the business scenario make sense.
Page layouts are driven by record types which are enable for the appropriate profile. Button Overrides and Visualforce: It is possible to override the action of a standard button on a record page to augment standard Salesforce behaviour. The action performed by the override is determined by a Visualforce page - usually in conjunction with a Visualforce controller (Apex code)
Winter12
39 | P a g e
Winter12
40 | P a g e
AppExchange: Document Tab Management Dashboard. This dashboard from the AppExchange can be used to monitor the documents tab capacity and track by file type, file size, folder name and document author.
Mass Delete:
The Mass delete records functionality is within the Salesforce Application and allows the user to delete up to 250 records at a time. It is limited to use with Accounts, Leads, Activities, Contacts, Cases, Solutions and Products. Records can also be deleted using API based solutions such as the Force.com Data Loader. Actions that cause Irreversible changes to data in Salesforce: Changing Field Data Type Using Import Wizard Mass Transfer of Records Mass Delete of Records Mass Reassign of Account Teams Mass Reassign of Opportunity Teams Mass Update of Addresses Performing an Update via the API Performing a Mass Delete via the API Methods for Backing Up Data in Salesforce: The Weekly Data Export Service Exporting Reports Extracting Object Data with the Data Loader Leveraging Data Replication capabilities of API o getUpdated retrieves a list of individual objects that have been updated o getDeleted retrieves a list of individual objects that have been deleted
Adoption Dashboards
There are three Adoption Dashboards, and their associated reports available on the AppExchange. Downloading this app will create an "Adoption Dashboards - AppExchange" Dashboard folder along with a Reports folder called "Dashboard Reports - Adoption."
Winter12
41 | P a g e
Winter12
42 | P a g e
Winter12
43 | P a g e
Winter12
44 | P a g e
When not to use Apex (Use the Web Services API Instead)
When you want to augment Salesforce behaviour without investing in Apex. When you want to add functionality to an S-Control or composite app to process one record at a time. When you want to integrate with a third party system.
Winter12
45 | P a g e
ADM301 Exam Outline Details How to access IDE Tools and Apps
IDE Tools can be downloaded / accessed via the menu: Your Name | Setup | Develop | Tools Apps can be downloaded from the App via the menu: Your Name | Setup | Deploy | AppExchange Marketplace
Winter12
46 | P a g e
With Visualforce: The UI is generated by the developer. There is full control of the UI behaviour. There is full pixel level control over the UI.
Winter12
47 | P a g e
Visualforce Controllers
A Visualforce controller is a set of instructions that specify what happens when a user interacts with the components specified in associated Visualforce markup, such as when a user clicks a button or link. Controllers also provide access to the data that should be displayed in a page, and can modify component behavior. A developer can either use a standard controller provided by the Force.com platform, or add custom controller logic with a class written in Apex: A standard controller consists of the same functionality and logic that is used for a standard Salesforce page. For example, if you use the standard Accounts controller, clicking a Save button in a Visualforce page results in the same behavior as clicking Save on a standard Account edit page. If you use a standard controller on a page and the user doesn't have access to the object, the page will display a insufficient privileges error message. You can avoid this by checking the user's accessibility for an object and displaying components appropriately. A standard list controller enables you to create Visualforce pages that can display or act on a set of records. Examples of existing Salesforce pages that work with a set of records include list pages, related lists, and mass action pages. A custom controller is a class written in Apex that implements all of a page's logic, without leveraging a standard controller. If you use a custom controller, you can define new navigation elements or behaviors, but you must also reimplement any functionality that was already provided in a standard controller. Like other Apex classes, custom controllers execute entirely in system mode, in which the object and field-level permissions of the current user are ignored. You can specify whether a user can execute methods in a custom controller based on the user's profile. A controller extension is a class written in Apex that adds to or overrides behavior in a standard or custom controller. Extensions allow you to leverage the functionality of another controller while adding your own custom logic. Cees van der Sluis Winter12 48 | P a g e
Winter12
49 | P a g e
Integrations
Salesforce - Web Services API
Introduction Web services are a set of related application functions that can be invoked from the internet. (Invocations are in the form of XML requests and responses between client and server) Clients and Servers can be implemented in different environments. The API is used in the following examples: Salesforce Data Loader Connect for Microsoft Outlook Connect for Microsoft Office Offline Edition Most Commonly Used API Calls: Query Executes against the specified object (SOQL) Retrieve Retrieves one or more objects based on the specified IDs Create Adds one or more records to an organizations data Update Updates one or more existing records Upsert Creates or updates an object based on a match of an ExternalID field Delete Deletes one or more individual objects Undelete Undeletes eligible records from the Salesforce recycle bin Metadata API The Metadata API allows for asynchronous creation, update, and deletion of custom objects and fields. Metadata tools on the AppExchange Marketplace can help you to take advantage of this powerful capability.
Winter12
50 | P a g e
Web to X Web To X can be used to drive data entry into Salesforce avoiding the need to re-key information. Salesforce Username and Password are stored in the web controls configuration file to ensure seamless integration. Force.com Sites Force.com sites are public and authenticated websites or portals that are built with various Visualforce pages from data and content in the Salesforce application. These sites can be accessed from branded domain names.
Winter12
51 | P a g e
Winning Over Sales In order to win over adoption from the sales department there are a number of simple areas that can be configured: Make simple information tracking easy. Automate advanced processes. Send the right message (If its not Salesforce it doesnt exist!). Soliciting Feedback There are a number of methods available for soliciting feedback from your users in order to update the system and maintain user adoption: Send surveys to understand system usage. Create a user group or inter-department committee to evaluate feedback. Conduct face-to-face interviews to understand future requirements. Leverage the Salesforce Community. Using Salesforce in Meetings In addition to improving user productivity, Salesforce can help share and display data quickly and efficiently. The user interface can also be customized to display data to the specific meeting audience. Some additional uses are: Project Salesforce data during the meeting. Review tasks and events in the app during the meeting. Help team members build views and reports for the meeting. Run exception reports to target missing information. Dashboards Dashboards can be used in meeting to display data from external systems side-by-side with Salesforce. A variety of dashboards are available for download from the AppExchange. Dashboard components can be managed to suit the needs of your target audience and dashboards can be cloned to suit the requirements of each meeting. Custom Links and URL Integrations You can use custom links and URL integrations to adapt the Salesfore UI to your users preferences. You can add useful links to the Salesfore sidebar and add parameters to the URL using Salesforce data at runtime.
Winter12
52 | P a g e
Winter12
53 | P a g e
Winter12
54 | P a g e
Force.com Sandbox
Salesforce gives you the ability to create multiple copies of your organization in separate environments for a variety of purposes, such as testing and training, without compromising the data and applications in your Salesforce production organization. These copies are called sandboxes and are nearly identical to your Salesforce production organization. For a list of differences, see Force.com Sandbox Setup Tips and Considerations.
Winter12
55 | P a g e
Winter12
57 | P a g e