1.1 Getting Started With the Platform
1.1.1 Attention Trailblazer
There’s two Salesforce platforms—Lightning Experience and Classic. This is about Classic.
1.1.2 Learning Objectives
- Define what the platform is
- Explain difference bw declarative and programmatic development
- Sign up for Developer Edition organization
- Create a simple app
1.1.3 A quick Introduction to Salesforce
It’s more than a CRM. It’s also “the platform” where you can build “amazing, connected apps”. There’s standard, OOTB functionality, which varies depending on what package you buy. Examples include:
- Managing sales process / leads / opportunities
- Support via cases / Communities
- Mobile app – Salesforce1
- Collaboration tools (Chatter / Communities)
- Marketing – ExactTarget Marketing Cloud
Custom functionality can be built using the platform. Examples include:
- Manage internal project requests using custom objects
- Custom fields for standard and custom objects
- Automatic email alerts
- Custom internal apps
- Custom customer-facing app (w/Heroku)
1.1.4 Decoding the Terminology
- Record: item tracked in database; if data in spreadsheet, then a record is a row.
- Field: place where value stored, like name or address; if a spreadsheet, it’d be a column.
- Object: a database table, or spreadsheet worksheet.
- Org: organization; an instance of Salesforce; where all data, config, and customization lives
- Force.com: suite of config tools, programming languages, native APIs including Apex and Visualforce
- App: a set of fields, objects, permissions, and functionality to support a business process
1.1.5 Using the Platform
Whenever you customize something with clicks or code in Salesforce, you’re using the platform. The example they give is let’s say we have a lead record in Salesforce. So it’d be like:
Name: Stephen Phone: 1234567890 Mobile: 0987654321
And the problem is that we want to show which phone number is preferred, and also make it easier to find the phone numbers. Using point and click tools you could do this:
Name: Stephen --- Phone Numbers Phone: 1234567890 Mobile: 0987654321 Preferred Phone: Mobile
In short, there’s a lot of point and click functionality to build solutions without the need for coding it.
1.1.6 Clicks and Code
Declarative development is point and click functionality in Salesforce, i.e., customization without coding. Here’s some examples:
- UI: create forms and layouts using drag-and-drop tools in Page Layout editor
- Lightning Process Builder: create rules, time-dependent actions, multi-step processes using Workflows. Process for approving records using Approvals.
- Schema Builder: Customize objects and relationships
- Reports and Dashboards: present data using Report Builder, show data from source reports with visual components in Dashboard.
Programmatic development is code-driven, using tools like Apex, Visualforce, Lightning, as well as JS and CSS. Here’s some examples:
- Apex: object-oriented, Java-like language optimized for working with Salesforce objects
- Visualforce: similar to HTML, for defining / constructing visual components that allow users to interact with / modify data in database
- SOQL: similar to SQL, object database query language
- Lightning Components: develop web apps for mobile/desktop using a component-based UI framework
Whenever possible, use declarative development, as it’s more sustainable and maintainable. When that’s not enough, programmatic development gives you more granular control.
1.1.7 Signing up for a Developer Edition Org
Yay I can sign up and practice. They’re free and come with all customization features. Here: https://developer.salesforce.com/signup
Done. Now it’s time to build an app.
1.1.8 Wait…what’s an app?
In Salesforce, an app refers to a set of objects, permissions, and functionality to support a business process.
It could be as simple as a sign-up sheet for an event, where the signup sheet would be the object, the columns (name, email) would be fields on the object.
Of course, the benefit of using Salesforce for the signup sheet is that you can access data in real-time, analyze the data, follow up with users, market to users, engage with users, data storage and scalability. Essentially, Salesforce is a cloud-based relational data store.
1.1.9 Building a fundraising App
Basically, it takes like 10 seconds. You click new app, fill in details and you’re done. And lots of benefits listed again.
1.1.10 Hands-On Challenge
Not as easy to do it a second time. I’m poking around and can’t find how to create a new app. And now it alerts me that there’s a whole bunch of critical updates I need to review. Like disabling or enabling Microsoft IE functionality and…!?
Okay, so to get back to that easy screen, click the
Setup link at the top right.
1.2 Discovering Use Cases for the Platform
1.2.1 Learning Objectives
- Describe sample uses cases for platform
- Discover resources for using platform across multiple departments
You can build all sorts of stuff on the platform for your organization. So target the big wins with low effort first. How do you determine what these are? Here’s some indicators:
- Reliance on spreadsheets
- Email collaboration
- Documents shared on local drives
- Time-intensive, multi-step processes
- Multi-department impact
1.2.3 How HR can use the platform
They could use it, for instance, with new hire onboarding. i.e.,
– Training plans
– Equipment orders
– Software/hardware installation/setup
– Automated tasks and reminders for employee, manager, hiring manager
– Time-off tracking
1.2.4 How IT can use the platform
IT can be on the same platform as the CRM, and now internal service requests and collaboration can be run on Salesforce also. Some possibilities: email automation, reports, service request queuing, and a knowledge base.
1.2.5 How can I use it?
A chart of possibilities for inspiration for every department, followed by links of even more.
1.3 Understanding the Salesforce Architecture
1.3.1 Learning Objectives
- Define key terms re: Salesforce architecture
- Find information re: trust
- Explain at least one use case for Salesforce API
The platform allows you to “customize standard functionality and create custom pages, components, apps, and more.”
1.3.3 Architecture Basics
This is something of marketing fluff rather than anything usable. The way they want you to think of it is as a number of layers, onion-style. I’ll write them out in order of outermost to core:
- CRM (i.e., sales, service, marketing, community, analytics, apps)—end-user visible stuff.
- Partner Apps
- Metadata platform (i.e., database, UI, collaboration, analytics, workflow, identity)—developer/admin stuff.
1.3.4 Trust, Multitenancy, and the Cloud
More marketing. Begins with “we swear we take data security seriously” followed by “welcome to the cloud!”—which I have no problem with, but it must frighten many people, which is worth remembering. They go on to describe how the architecture silos tenants but also allows them to share resources, i.e., a SAAS. Upgrades are automatic and occur thrice annually.
1.3.5 What is Metadata?
Sure this is a word with an established definition, but we use it to mean something totally different! In Salesforce, metadata refers to the structure of your org. Essentially, it’s everything except the data itself: configuration, code, standard and custom functionality, etc.
1.3.6 How the Secret Sauce Helps You Go Faster
The secret sauce is that it’s a SAAS, with all the benefits any SAAS brings to the table.
1.3.7 All About That API
Everything in Salesforce—everything—is API enabled.
1.4 Navigating Setup
1.4.1 Learning Objectives
- Identify and use key elements of DE UI
- Use context-sensitive help
- List key elements of setup menu
- Locate menus to create custom objects and apps
- Use Quick Find / Advanced Setup Search to locate/access lower-level menus
- Use SalesforceA (or is that 1??) mobile app for some basic setup / monitor org trust status
1.4.2 Introducing Setup
Setup is where you customize and configure the org, support users, build functionality, etc.
There’s many ways to get to the same places in Setup—it’s more about knowing paths to reach your goal rather than memorizing click paths.
1.4.3 Finding Setup
It’s in the header, next to your name.
1.4.4 Meet Setup
The tab bar is the top nav bar. It has the same tabs as the regular app itself, and by clicking on any of the tabs, you’ll exit Setup.
The setup menu is the sidenav, which is where you can set up, maintain, and customize the org, as well as build, extend, and manage apps.
1.4.5 Setup Search
There’s a search box on the top left sidenav—it uses typeahead to filter the menu items below in real-time. This occurs just by typing in the box.
If you type in this box and hit
enter, it searches beyond this menu to objects, users, fields, etc. – so you could actually type in someone’s name and it’d find it. An example that works well is typing
case, which brings up fields and templates.
1.4.6 Take Setup on the Go
SalesforceA IS NOT Salesforce1. Salesforce1 is for end-users, and SalesforceA is for backend folk.
You can freeze users’ accounts from the mobile app.
1.4.7 Customize, Create, and Develop
There’s a bunch of places you’ll use to develop, customize, and create. One is the
Build section of sidenav.
1.4.8 Top 10 “You Can’t Miss” Pages in Setup
- Company Information
- overall org view, get org ID, see license usage, monitor usage of API requests, data and file usage.
- CRUD users, reset passwords, manage licenses, permissions, profiles
- Profiles, Permission Sets
- Assign permissions, view standard profiles and permission sets, create custom ones
- View Setup Audit Trail
- 6mo history on org changes, user/timestamps per change, for troubleshooting and finding root cause of issues
- Login History
- 6mo history, including timestamps, IP, browser, application, etc. for security and adoption
- List of sandboxes, last refresh date, CRUD
- Scheduled Jobs
- View/delete future jobs, Apex jobs, dashboard refreshes, reporting snapshots, monitor in-progress jobs
- Apex Jobs
- Monitor/abort jobs, create custom list views
- Schema Builder
- visual, interactive display of objects, create/modify objects and relationships
- Storage Usage
- monitor file/data usage, breakdown by object and user
1.5 Developing an AppExchange Strategy
1.5.1 Learning Objectives
- Develop your own AppExchange strategy
- Navigate AppExchange
- Install an app from AppExchange
AppExchange is the SalesForce app marketplace
1.5.3 AppExchange Strategy
Rather than just installing a bunch of apps, go about it like this:
- Identify which departments are or will use Salesforce / primary stakeholders
- Interview primary stakeholders to gather requirements and research relevant apps. Consider timeline, budget, number of users, pain points, business problems
- Test in sandbox or DE org.
- Let stakeholders try it out or demo it in sandbox
- Execute and document, prep users via training and documentation
1.5.4 Navigating the AppExchange
It looks and feels like any other app store.
1.5.5 Installing an App
Use the “Get It Now” button for a wizard. Apps come with custom fields, objects, Apex classes, and more—any of which may interfere with things you’ve given the same names to. Determine who should have access to these customizations.
1.5.6 Accessing Installed Packages
Search for Installed Packages.
1.5.7 Other Considerations
Salesforce Labs produces free apps. Also, don’t forget you have all sorts of limits in place that you should keep in mind as you use apps.