Total Pageviews

Saturday, 23 January 2016

A Quick Introduction to Salesforce

Welcome to Salesforce, your customer success platform!
Some might think Salesforce is CRM only, with a place to store your customer data, processes to nurture and convert prospective customers, and ways to collaborate and engage. Salesforce includes those things, but it also includes the platform, where customers and partners can use our suite of technologies to build amazing, connected apps.
Salesforce has everything you need to run your business from anywhere, with products and features to support your needs. Products and features available out-of-the-box are called “standard functionality,” and what you have access to depends on what you buy.
Here are some examples of standard functionality:
You need to be able to:So we offer you standard functionality:
Sell to prospects and customersLeads and Opportunities to manage the sales process
Help customers after the saleCases and Communities to engage with customers
Work on the goSalesforce1 Mobile App to power your mobile strategy
CollaborateChatter and Communities for employees, customers, and partners
Market to your audienceExactTarget Marketing Cloud to manage your customer’s journey
Again, this is standard functionality, and what you purchase determines what you have available for use. But what happens when you want to customize standard functionality or build something from scratch?
That’s where the platform comes in. With clicks or code, you can customize anything, and what you customize connects to your standard functionality in Salesforce. The platform is your secret sauce that can help you make your vision a reality.
Now, let’s take a look at that same table, but with a set of platform examples:
You need to be able to:So we offer you platform functionality:
Manage internal project requestsCustom objects for managing projects
Add custom fields to capture important dataCustom fields for standard and custom objects
Set up automatic email alertsProcesses with email alert actions
Build a custom internal appLightning Components and Lightning App Builder for creating an employee app
Build a custom customer-facing appHeroku for creating a customer-facing app
You might be reading that table and thinking, what does all of that mean? Rest assured, we’ll cover those topics in greater detail as you progress through Trailhead. The point is, when you add customizations, whether you’re building an automated email or a beautiful customer-facing app, it means you’re using the platform!
Before we go any further, we’re about to start using a bunch of terms you might not know, so let’s take a moment and define a few things.

Decoding the Terminology

So we use a lot of terms. And acronyms. We especially like those.
Here are a few you’ll see as you go through this module.
When we sayWe mean thisNot this
RecordAn item you are tracking in your database; if your data is like a spreadsheet, then a record is a row on the spreadsheetThis round thing that plays music #vinyl
FieldA place where you store a value, like a name or address; using our spreadsheet example, a field would be a column on the spreadsheetA green meadow with flowers and grass and hopping bunnies
ObjectA table in the database; in that spreadsheet example, an object is a tab on the spreadsheetSomething unidentified in the sky, with green creatures inside
OrgShort for “organization,” the place where all your data, configuration, and customization lives. You and your users log in to access it. You might also hear this called “your instance ofSalesforceShort for organ, meaning your heart, liver, kidneys, or possibly a big musical instrument
Force.comThe suite of configuration tools and programming languages andAPIs native to Salesforce, including Apex andVisualforceSomething related to a galaxy far, far away
AppA set of fields, objects, permissions, and functionality to support a business processA thing you download onto your phone
Now that we’ve got that down, let’s walk through a simple platform example in detail.
Using the Platform
The first rule of the platform is don’t be intimidated by the term “platform,” especially if you’re coming from a non-programmatic background. Think about it like this: any time you’re customizing in Salesforce, with clicks or code, you’re using the platform.
Let’s look at a quick example.
This is a standard Lead record in Salesforce. You use a record like this to track people you want to do business with. You’ll see fields for the Name, Industry, Annual Revenue, Rating, and other key information, plus fields to track contact information, like addresses and phone numbers.
A Lead record.
Now, let’s pretend your sales team comes to you for help. They’re having trouble finding the phone number fields at a glance, and they want a place to mark which phone number is preferred.
Think you need to write code to solve for this request? Think again. InSalesforce, you can customize the user interface to meet the needs of your sales team with point-and-click tools.
The solution for this scenario is simple. With point-and-click tools, you can create a custom field for preferred phone number, and add a new section on the page layout [1] just for phone numbers and your new custom field.
Custom fields on a Lead record.
Guess what? We just used the platform!
Now, if you don’t know how to update page layouts or make custom fields yet, don’t worry, we’ll get there (check out theModifying Page Layouts unit and Creating Custom Objects and Fields when you’re ready).
The platform makes database and user interface customizations simple, like in this Lead example, and also makes complex backend logic and completely customized pages possible with programmatic tools likeApexVisualforce,Lightning Components, and more.
Whether you’re an administrator, developer, or power user, and whether you’re using clicks or code, the platform has tools for you.
Clicks and Code
Now is probably a good time to define declarative and programmatic development, and make sure that you understand the difference between the two.
Declarative refers to point-and-click functionality in Salesforce. It means that you can configure and customizeSalesforce without writing code.
Programmatic refers to code-driven functionality in Salesforce. It means that you can customize Salesforce using programmatic tools likeApexVisualforce, and Lightning, and standard web technologies like JavaScript, CSS, and more.
Check out this table, highlighting some (but not all) of the declarative and programmatic options in Salesforce:
Declarative
User InterfaceCreate forms and page layouts using drag-and-drop tools in the Page Layout editor.
LightningProcess BuilderCreate rules that take time-dependent actions and automate multi-step processes using Workflows. Automate the processes your organization uses to approve Salesforce records using Approvals.
Schema BuilderCustomize objects and create relationships between them using drag-and-drop tools in Schema Builder.
Reports and DashboardsPresent data quickly and comprehensively using Report Builder. Show data from source reports as visual components using Dashboards.
Programmatic
ApexDevelop with an object-oriented, Java-like programming language that’s optimized and tuned for accessing Salesforce database objects.
VisualforceDefine user interface components and construct visual elements using a markup language similar to HTML, thus allowing the user to interact with and modify data from the database.
SOQLLook at a specific set of data, like all contacts in a geographic region, using Force.com’s object database query language, similar in syntax to SQL. SOQL is used in many of the SalesforceAPIs.
LightningComponentsDevelop dynamic web apps for mobile and desktop devices, using a modern, component-based UI framework.
Now, as you start thinking about platform features, resist the temptation to think Declarative = Administrator and Programmatic = Developer. The best developers understand their declarative options, and the best admins know when their use case requires a programmatic solution.
To this end, it’s important to note that most things can be done with clicks, and the golden rule is to always try to build with clicks before going to code, as it is more sustainable and maintainable moving forward. Code is meant to give you more granular control of customization when clicks aren’t enough.
In the Salesforce community, some admins learn to code, and some developers learn how to fully administer Salesforce. This doesn’t mean that every admin has to aspire to becoming a developer, or vice versa. It just means that the best admins and developers have a good understanding of both worlds, even if they only choose to live in one.
Let’s put this theory to practice and get you started with your first platform project. But first, we need to set you up with a practice environment. If you’ve already created a Developer Edition for use in Trailhead, you can skip this next section.
Signing Up for a Developer Edition Organization
A Developer Edition (DE) org is a safe environment where you can practice the skills you’re learning, and you’ll definitely need one as you work through the challenges here on Trailhead.
DE organizations are free. They also come with all the app builder customization tools enabled, like Lightning or Apex, so you can use this org as your own personal playground for app development. Let’s get you set up with a new DE organization so you can log in and start working with the platform.
  1. Navigate to developer.salesforce.com/signup. Fill out the form using an active email address. Your username must also look like an email address and be unique, but it does not need to be a valid email account. For example, your username could be yourname@myDE.test, or you can put in your company name.
    The signup page for a DE organization.
  2. Check for an activation email and click the login link to complete your registration.
  3. Create your password and challenge questions.
  4. Click Save.
  5. You will be redirected to your DE organization Setup area.
    Take a tour of the Setup area.
  6. Since this is your first time using your DE org, you can take the tour if you want. Just be sure to leave your browser window open. And remember, this is your login and you can use it anytime! Just go to login.salesforce.com to log in and play. You can load sample data, try out features, write code, use the mobile app, and more. It’s all yours.
Now that you have a DE environment, let’s build a simple app.
Wait…What’s an App?
The term “app” means different things to different people, so let’s pause here and make sure you understand what we mean when we say app, and then we’ll move on and build one together.
In Salesforce, an app refers to a set of objects, permissions, and functionality to support a business process. For example, if you’re having an event and you want people to sign in, you could have a paper sheet with columns for Attendee Name, Title, Company, and Email, and you could have attendees sign in with a pen. Or you could create an Event app in Salesforce. The sheet becomes an object (‘Event’), and those columns become fields (‘Attendee Name’, ‘Title’, ‘Company’, ‘Email’) on the object.
Why use paper when you can use a custom Salesforce app?
So why would you want to use Salesforce instead of a paper sign-in sheet? If the data is in Salesforce, you can:
  • Get real-time access to data as it’s entered, via mobile or desktop.
  • Create reports and dashboards to analyze attendees.
  • Send follow up emails to attendees after the event.
  • Relate attendees to marketing campaigns and sales information, including order and purchase information.
  • Engage with attendees in a community.
  • Create automated processes to engage with the attendees over time.
  • Take advantage of instant scalability, instant mobile access, secure data storage and backups.
  • And much, much more
In fact, Salesforce is a massive, relational data store in the cloud. Let’s try it out.
Building a Fundraising App
At Salesforce, we pioneered the 1:1:1 model, which donates one percent of our time, equity, and product to non-profit organizations. Philanthropy and the Salesforce Foundation are important parts of our company culture. So what better use case for our app than charitable fundraising? Let’s create a fundraising app that can be used to track events for a charitable organization.
When you complete this tutorial, you’ll have a working app with its own menu, a tab, and a custom object that tracks your fundraising events. Additionally, you’ll have screens that allow you to view and edit all of this information. And we’ll get it done faster than you expect — in fact, let’s time it! Check your watch and let’s get started!
  1. Click the green Add App button [1] in the Getting Started section to launch the App Quick Start Wizard.
    Quickly create an app using the Add App button.
  2. For App, type Charitable.
  3. For Label, type Fundraiser, and for Plural Label, typeFundraisers.
  4. Click Create. Right away you’ll see some of the functionality that’s automatically added.
    The app success screen.
  5. Click Go To My App to see your new app. You can now add custom fields, automated processes, and more to your app, depending on your needs.
    Note
    You can always navigate to your app using the Quick Access Menu in the upper right corner, by selecting your app from the App Picker.
    Your new fundraiser app.
Now check your watch again. How long did that take you? Now ask yourself, how long would it take you to build that using another tool, and then integrate it with Salesforce?
As you explore your app, witness the full power of the platform as you check out everything that you just got by building your app on theSalesforce platform:
  • A trusted, scalable, performant cloud database to store all your data.
  • A fully customizable user interface to interact with your data.
  • Chatter feed for your app, allowing for user collaboration, and sharing comments, files, and more, all in the context of your app.
  • A full-featured reports engine and dashboards to summarize your most important data
  • An out-of-the-box set of APIs to interact with the data. If you don’t know what an API is, we’ll get to that in just a bit.
  • A mobile-ready experience with the Salesforce1 Mobile App.
Wait a second, did someone just say “mobile-ready experience”? That’s right! What you just built is ready to go for mobile. If you don’t believe me, stop what you’re doing right now and go to Google Play or the App Store and download the Salesforce1 Mobile App, and log in with your DE credentials.
You just learned about Salesforce standard functionality and the key benefits of building on the platform, including scalability, security, mobile access, and more. You’ve also now gotten some practice building an app and learned how to emulate the mobile experience right from your desktop.
Now that you see how easy it is to get started with the platform, we’ll spend the next unit sharing ideas for how to useSalesforce for every department.

No comments: