Professional Documents
Culture Documents
Salesforce Practical File
Salesforce Practical File
Chirag Jain
19BCON430
https://trailblazer.me/id/cjain146
1
Create Report and Dashboard Folders
You've received a lot of requests from various stakeholders to analyze data in Salesforce.
How do you keep it all organized? Start by creating the necessary folders that can be shared
with various team members.
1. If you're not currently in the Sales app, click the App Launcher and select
Sales.
2. Click the Reports tab.
3. Click New Folder and enter the details.
Note: If the New Folder button is not present, it is recommended you create a new
Trailhead Playground.
4. For Folder Label, enter Global Sales Reports .
5. Click in the Folder Unique Name text box to auto-populate
the unique name. Don't worry, the unique name of this folder isn't checked.
6. Click Save.
7. Repeat steps 3-6 to create the following folders as subfolders under the Global Sales
Report folder:
2
o Admin Lightning Experience Reports
o Marketing Reports o Adoption
Reports
3
6. Click Done to close the Share Folder pop-up.
7. Click the Reports tab, and click Created by Me under Folders.
8. Repeat steps 2-6 to share the Global Sales Reports folder. Note that the subfolders
Admin Lightning Experience Reports, Marketing Reports, and Adoption Reports will
automatically be shared with the same teams as their parent folder.
4
Adjust Settings
Before creating the first report, you'll need to associate the role of CEO with your profile
so all report data is viewable.
Next, edit the Close Dates for all of the existing opportunities. This is done so the
correct data appears when you run the current fiscal quarter report later in this project.
Note: If you don't see checkboxes next to the opportunities, it may be because
you've applied opportunity record types in this org. If so, apply the following
filter to the all opportunities list view: Within the filter menu, click Add Filter >
Field = Opportunity Record Type, Operator = equals, Value = 0 options selected
> Click Done > Click Save.
5
5. With all opportunities selected, rollover the Close Date for one of the
opportunities and click the pencil icon.
6. Type in today's date.
7. Select the checkbox to Update 31 selected items.
8. Click Apply.
Note: All of the opportunities should now have today's date as their
Close Date.
9. Click Save at the bottom of the screen.
1. Click Reports.
2. Click New Report.
3. Under Recently Used on the left, click All.
4. In Search Report Types, enter Opportunities and select Opportunities.
5. Click Start Report.
Next, you'll use the Lightning Report Builder—a visual editor for reports. The report
builder screen lets you work with report fields and filters, and shows you a preview of your
report with just some of the data.
6
• The Fields pane (1) displays fields from the selected report type, organized by
folder. Find the fields you want using the Quick Find box and field type filters,
then drag them into the Outline pane or double click them to add them to your
report.
• The Outline pane (2) makes adding, removing and arranging columns a breeze
with a simple drag and drop feature. You can also add Bucket Columns and
Summary Formula Columns in the Outline pane.
• The Filters pane (3) allows you to set the view, time frame, and custom filters
to limit the data shown in a report.
• The Preview (4) offers a dynamic preview that makes it easy for you to
customize your report. Add, reorder, and remove columns, summary fields,
formulas, groupings, and blocks. The preview shows only a limited number of
records. Run the report to see all your results.
1. Click the Outline pane and click the X next to the following column headers
to remove them: o Owner Role o Fiscal Period o Age o Created Date o Next
Step o Lead Source
o Type
Save the report as Opportunities by Rep in the Global Sales Reports folder.
7
o Clickin the Report Unique Name text box to auto-populate the unique
name. Don't worry, the
unique name of this What opportunities do reps have in the pipeline?
He would like to see a list of all customer accounts based in Texas, North Carolina,
Illinois, and New York that have either a rating of Hot or Warm or an annual revenue of
$2 million and up.
1. Click Reports.
2. Click New Report.
3. Under Recently Used on the left, click All.
4. In Search Report Types, enter Accounts and select Accounts.
5. Click Start Report.
6. Ensure Update Preview Automatically is enabled in the upper-right of
the Report Builder.
7. Click the Filters pane.
8. Click Show Me and select All accounts, then click Apply.
9. Click Created Date, select All Time from the Range picklist, then click
Apply.
10. Click the Outline pane and select the X next to the following fields to
remove these columns from the report:
o Last Activity o Last
Modified Date
11. Click the Fields pane to expand the list of fields.
8
12. Double-click Annual Revenue to add it to the report.
13. Click the X to close the Fields pane.
14. Click and drag the Annual Revenue column so it is placed between the
Account Name and Billing State/Province columns.
6. Repeat steps 2-5 above to create the following three additional filters:
7. Note: Annual revenue is two million (six zeros).
8. In the Filters pane, click the arrow next to Filters and click Add Filter
Logic.
Field Operator
Billing State/Province equals
Rating equals
Annual Revenue greater or equal
9
9. In the Edit Filter Logic field, change the logic to 1 AND 2 AND (3 OR 4)
and click Apply.
Save the report as Central and Eastern Target Accounts in the Marketing
Reports folder:
2. Click Select Folder, select Marketing Reports from the Global Sales
Reports folder and click Select Folder.
3. Click Save.
10
Use Relative Dates
Instead of filtering data by calendar dates, such as Close Date > Jan 1, 2020, filter
your report by a relative date: Close Date = THIS YEAR. Yes, Salesforce will understand
this value!
Our CEO is very focused on user adoption of Salesforce and wants to ensure the
company is getting the most out of its user licenses. He wants a weekly report of all
users who have not logged into Salesforce in the last seven days as well as when
their login access is set to expire. How would you accomplish this?
Customize the Users Report Type to display users who have not logged in during the last
seven days:
1. Click Reports.
2. Click New Report.
3. Under Recently Used on the left, click All.
4. In Search Report Types, enter Users and select Users.
5. Click Start Report.
6. Ensure Update Preview Automatically is enabled in the upper-right of
the Report Builder.
7. Click the Outline panel.
8. In the Add column... search box, enter login access , and then select
Login
Access Exp. Date.
9. Click the Filters pane.
10. Click the Last Login Filter.
11. Under Date, click Last Login and select Login Access Exp. Date from
the dropdown list.
12. Leave Range as All Time and click Apply.
13. In the Add filter... search box, enter Last Login , then select Last Login.
14. Create the filter with these details:
o For operator, select not equal to
o Click Use relative date and enter LAST 7 DAYS
o Click Apply
11
15. Click Save & Run.
16. For Report Name, enter Users Not Logged in Last 7 Days .
17. Click in the Report Unique Name text box to auto-populate the unique
name. Don't worry, the unique name of this report isn't checked.
18. For Report Description, enter Who hasn’t logged in the last 7 days?
19. Click Select Folder, choose Adoption Reports from the Global Sales
Reports folder, and click Select Folder.
20. Click Save.
12
Group Data in Reports
One of the things that makes the Report Builder super easy to use is the ability to easily
drag groupings to move them between rows and columns in reports. We use a matrix
style report to display summaries from two or more levels of groupings in a grid. This
allows you to display more data in a smaller space and makes quick comparisons
across groups.
Let’s get back to your VP of Sales who would like the Opportunities by Rep report to show
opportunities additionally grouped by Close Date and displayed in a table. No problem!
We’ll modify the Opportunities by Rep report to group by the calendar month of the Close
Date:
8. At the bottom of the Preview pane slide the toggle next to Detail Rows
and Stacked Summaries to deselect them.
9. Click the arrow next to Save, and click Save As, then complete the
Save Report details: o Report Name:
o Click in the Opportunities by Rep and Close Month Report Unique Name text
box to auto- populate the unique name.
Don't
Report Description: What opportunities do your sales reps have in the
worry, the
unique
name of
pipeline and when do they close?
this report
isn't checked.
13
o
10. Ensure that this report is being saved in the Global Sales Reports.
11. Click Save.
12. Click Run.
Let’s check out how bucketing works and fulfill one of your VP of Sales’ reporting needs.
We’ll create a matrix report again, but this time show opportunities by owner, stage,
and size in the pipeline this Fiscal Quarter.
1. Click Reports.
2. Click New Report.
3. Under Recently Used on the left, click All.
4. In Search Report Types, enter Opportunities and select Opportunities.
5. Click Start Report.
6. Ensure Update Preview Automatically is enabled in the upper-right of
the Report Builder.
7. Click the Filters pane.
8. Ensure Close Date is set to Current FQ.
9. Click Opportunity Status, select Open then click Apply.
10. Click the Outline pane and click the X next to the following column
headers to remove them: o Owner Role o Fiscal Period o Age o Created
Date o Next Step o Lead Source o Type
1. In the Outline pane, click the arrow next to Columns and click Add
Bucket Column.
2. Remove current selection within the Field box, then search for and select
Amount.
3. For Bucket Name, enter Size .
14
4. Complete the first range as follows: o Range: <= o Name:
5. Click Add, then 50000 complete the second range:
o Range: > 50,000 Small 100000
to o Medium Name:
6. For the third range (> 100,000), in the Name field enter Large .
8. Click Apply.
1. In the Preview pane, click the arrow next to Opportunity Owner and
select Group Rows by This Field.
2. In the Preview pane, click the arrow next to Stage and select Group
Rows by This Field.
3. Click the arrow next to Size and select Group Columns by This
Field.
4. At the bottom of the Preview pane, slide the toggle next to Detail Rows,
Subtotals, and Grand Total to deselect them.
15
5. Click Save & Run and complete the
report details: o Pipeline Matrix Report Current FQ Report Name:
o Click in the Report Unique Name text box to auto-populate the unique name.
Don't worry, the unique name of this report isn't checked.
16
o
Report Description: How big are the deals at each stage in the pipeline
this FQ?
6. Click Select Folder, choose Global Sales Reports, and click Select Folder.
7. Click Save.
Modify the Opportunities by Rep report to display closed opportunities by sales rep:
Add a custom summary formula to display the win rate by sales rep:
17
o
18
o
o
Place the cursor in the formula after SUM and enter . /
In the Search Fields menu, type and select Closed, then
select Sum and Insert.
19
o
Save the report as a new report called Sales Rep Win Rates in the Global Sales Report
folder:
20
o
21
Export a Report as CSV
As good as Salesforce reports and dashboards are, it’s sometimes still helpful to
export your data and manipulate it in spreadsheet software. No problem! Salesforce
allows you to export report details in .CSV or .XLS formats. Use your favorite
spreadsheet software to further manipulate the data as needed. Note that the export
will not have formatting, groupings, or subtotals.
Your CEO would like a printable, adjustable output of the Users Not Logged in Last 7
Days report.
22
Report Charts
When it comes to reports and analyzing what seems like endless data, it can be
information overload. What if there was an easy way to get a visual summary of all
that information? Enter report charts and dashboards.
The Lightning Experience offers enhanced data charts to summarize reported data.
You can adjust the chart type without making changes to the report itself.
Let’s see charts in action. Your CEO is so impressed with the work you’ve done, he’s
asked for something special. He wants a way to display sales rep performance
graphically.
Dashboards
Let’s take visualizing data a step further. The VP of Sales would like a Global Sales
dashboard that lets her see the key information at a glance. A dashboard is a visual
representation of data from multiple reports and does the following:
23
• Displays data from custom source reports
• Has a running user to determine what data is visible
• Displays data as of the last time the dashboard was refreshed
• Can be scheduled to be refreshed and emailed automatically
The dashboard editor in Lightning Experience gives you a responsive way of creating
or editing dashboards using drag-and-drop. Let’s take a look.
4. Click Select Folder, choose the Global Sales Dashboards, then click Select
Folder.
5. Click Create.
1. Click +Component.
2. In the report search bar, enter Opportunities , click Opportunities by Rep, then
click Select.
3. From the Display As menu, click the Vertical Bar Chart option.
4. Ensure the Y-Axis is set to Record Count.
5. Ensure the Show Values box is selected.
6. Complete the text areas: o Title: o Subtitle:
7. Click Add. Sales Pipeline
1. Click +Component.
2. In the report search bar, enter Opportunities , click Opportunities by Rep, then
click Select.
1000000
24
4. Ensure Measure is set to Sum of Amount and Display
Units is set to Shortened Number. In the Segment Range,
3000000
replace the default value of 33 with (that's 1 million, as in six
zeros after the one) and replace 67 with (three million).
5. Complete the text areas: o Title: o Footer:
6. Click Add. Total Open Opportunities
7. Drag the metric component to the Value of open opps in sales pipeline
right of
the Opps by Rep vertical bar chart.
8. Click Save.
1. Click +Component.
2. In the report search bar, enter Sales Rep , click Sales Rep Win Rates, then click
Select.
3. Select Lightning Table from the Display As menu.
4. In the Columns section, click the following columns to remove them from this
component: o Account Name o Stage o Close Date
Note: Opportunity Name and Amount should be the only remaining
25
columns.
26
Add Sales Rep Win Rates gauge component:
1. Click +Component.
2. In the report search bar, enter Sales Rep , click Sales Rep Win Rates, and then
click Select.
6. Click Add.
7. Drag the Company Win Rate gauge to the right of the Opportunities Won
component, to create a fourth dashboard column.
o You will need to resize the chart components to create four columns.
Don't worry, component arrangement on your dashboard is not
checked when verifying this step.
8. Click Save.
9. Click Done.
Congrats! You made it easier for your stakeholders to review their Salesforce data
with ease and efficiency. You harnessed the power of Report Builder to customize
Salesforce objects and fields into meaningful information. Filters, report types, charts,
and dashboards further segmented your data so only the most important
information was presented. Great job—you just saved your executive team a lot of
time and energy!
27
PRACTICAL 2: QUICK START: PROCESS BUILDER
In this Quick Start, you'll do exactly that: create a new process that updates Contact
records whenever the Account billing address changes. As you'll see, it's quite easy,
and doesn't require a shred of code.
28
Create a New Process on the Account Object
You first create a process and then select the object on which the process runs. You
also make sure the process kicks off whenever a record is edited, because you’re
going to change the business address in a moment.
29
In plain language, this all means "run this process when the Billing Street changes."
30
powerful stuff, so pause and take note. Process Builder allows you to choose not just
fields on Accounts, but fields that are related to Accounts.
5. For Criteria for Updating Records, keep it set at No criteria—just update the
records!.
6. Under Set new field values for the records you update, click Find a field..., and
then scroll down and select Mailing Street.
7. Select Field Reference for the Type.
8. For Value, select Billing Street as the Account field and click Choose.
9. Click Save.
10. Click Activate and then click Confirm.
31
4. On Tim Barr’s detail page, note the mailing address [1] and account name [2].
5. Click the account name, Grand Hotels & Resorts Ltd. This opens the account for
Grand Hotels & Resorts Ltd.
6. On the Grand Hotels & Resorts Ltd. account record, click Details.
7. Click Edit.
8. Change the billing street address and click Save.
9. Click Related.
10. Scroll down to Contacts and click Tim Barr. Click Details. On his detail page, notice
that his mailing address has been updated.
32
PRACTICAL 3: QUICK START: Lightning App Builder
33
To install the package, launch your playground by scrolling to the bottom of this
page and clicking Launch. If you see a tab in your org labeled Install a Package,
great! Follow the steps below.
If not, click the App Launcher, then click Playground Starter and follow the steps. If
you don’t see the Playground Starter app, copy this package installation link and
check out Install a Package or App to Complete a Trailhead Challenge on Trailhead
Help.
1. From Setup, type External Data into the Quick Find text box. Click External Data
Sources
and OrderDB for External Data Source and name the data source OrderDB select New
External
Data Source.
2. Enter , and select Salesforce Connect:
https://orderdb.herokuapp.com/orders.svc OData 2.0 as the type.
3. Enter as the URL. Leave the other fields with
their default values, and click Save.
4. On the next screen, click Validate and Sync. Salesforce Connect retrieves the schema
from the external system.
5. Select both the Order and OrderDetail tables, and click Sync.
Scroll down to see the new external objects. Click them to see their fields.
34
Create an Indirect Lookup Relationship Add
an Indirect Lookup Field
An indirect lookup relationship is a new field type introduced with Salesforce
Connect. It links an external object to a standard or custom object in the same way
that a regular lookup relationship links standard or custom objects. In this task, you
link Order to Accounts based on their Customer ID fields, resulting in a new related
list on the Account page.
1. From Setup, type External Objects into the Quick Find text box. Select External
Objects. Select Order.
2. Next to the customerID field, click Edit and then click Change Field Type.
3. Select Indirect Lookup Relationship as the data type, and click Next.
4. For the Related To value, select Account and then click Next.
5. For the Target Field value, select Customer_ID__c and and click Next.
6. Enter 18 as the field length. Leave the other options with their defaults. Click Next.
7. To make the field visible to all profiles, select the checkbox next to Visible and click
Next.
Note: In a real production setting, you would carefully analyze who should have
access to order data.
8. Leave all the checkboxes in their default state and click Save. A new Orders related list
is added to the Account page layouts.
9. Check your work!
o From the App Launcher , select Sales and then select the
Accounts tab. Select All Accounts to view all accounts.
o Click any sample account to see its details. Scroll to the bottom to view
a list of orders.
35
10. In the External ID column, click an order number to see that order's data. Note that
only metadata—the layout or schema of the external tables—is synchronized into
Salesforce. The data itself is read dynamically in real time. It is never duplicated into
the Salesforce environment.
1. From Setup, type External Objects into the Quick Find text box. Select External
Objects and select OrderDetail.
2. Next to the orderID field in Custom Fields & Relationships, click Edit and then click
Change Field Type.
3. Select External Lookup Relationship as the data type, and click Next.
4. For the Related To value, select Order and then click Next.
5. Enter 18 as the field length. Leave the other options with their defaults. Click Next.
6. To make the field visible to all profiles, select the checkbox next to Visible and click
Next.
7. Leave all the checkboxes in their default state and click Save. A new OrderDetails
related list is added to the Order page layouts.
8. Check your work! Navigate back to the account that you were looking at before. Click
an order number to view a new related list below the order data.
36
PRACTICAL 4: Build a Battle Station App
6. Click Next.
37
7. Select the Advanced Formula tab, and add the formula in the box under
Candidate Name (Text) =
Job_Application__r.Candidate__r.First_Name__c &" "&
Job_Application__r.Candidate__r.Last_Name__c
Copy
8. Ensure your screen looks like this.
Now create a cross-object formula field to display Position Title on the Review object.
Job_Application__r.Position__r.Name
Copy
4. Ensure your screen looks like this.
38
5. Click Check Syntax to verify there are no errors.
6. Click Next.
7. Ensure the Visible checkbox is checked so all profiles are selected, and click
Next.
8. Click Save.
Finally, modify the Review page layout with a new section called Position &
Candidate.
1. While still viewing the Review in Object Manager, click Page Layouts.
39
or “False.” They can also include an error message to display to the user when the
rule returns a value of “True” due to an invalid value.
You can use validation rules to improve data integrity, make a field conditionally
required, prevent the entry of invalid data values directly by users and other systems,
and enforce role-specific, profile-specific, or user-specific constraints.
Ling Wu wants to be sure AW Computing recruiters list a hiring manager every time
they set up a position in the recruiting app. It’s also come to Ling’s attention that
some candidates’ zip code and state don’t match. She’d like a fix for both these
issues, which you can accomplish by creating validation rules.
40
Create Custom Objects
Ling’s mismatched state and zip code issue requires a little work before setting up
the validation rule. First, you create custom objects for zip code and state, and add
fields to each of them.
Field Value
1. From Setup, click Object Manager, click Create, then select Custom Objectand enter
the details.
2. Click Save.
1. While still viewing the Zip Code in Object Manager, click Fields & Relationships, then
click New.
2. Select Text as the Data Type, click Next, and enter the details. o Field Label:
o Length: 2 State
3. Click Next.
4. Set the field visible for the Recruiter: Nontechnical, Recruiter Technical, and System
Administrator profiles, and click Next.
5. Click Save & New.
1. Select the Text as the Data Type, click Next, and enter the details:
2. Enter the details for the new custom field. o Field Label:
o Length: 80 City
3. Click Next.
4. Set the field visible for the Recruiter: Nontechnical, Recruiter Technical, and System
Administrator profiles, and click Next.
41
5. Click Save.
Next, modify the Zip Code page layout so that the fields are displayed in a logical
order.
1. While still viewing the Zip Code in Object Manager, click Page Layouts.
1. From Setup, enter Tabs in the Quick Find box, then select Tabs.
2. In the Custom Object Tabs section, click New.
3. From the Object picklist, select Zip Code.
42
Set Up the Second Rule
Now create a validation rule that checks the zip code entered against a table to
validate that the zip code and state match.
VLOOKUP($ObjectType.Zip_Code__c.Fields.State__c,
$ObjectType.Zip_Code__c.Fields.Name, LEFT( Zip_Postal_Code__c ,5) ) <>
State_Province__c
Copy
6. Ensure your screen looks like this:
43
Create Formula and Roll-Up Summary Fields
HR recruiters and interviewers have entered lots of data about their candidates into
their recruiting app. But for that review data to be useful, they need it calculated and
scored. Use rollup summary fields and formulas to accomplish this.
A rollup summary is kind of the reverse of a cross-object formula (which you created
in the first step of this project). Instead of getting data from a parent (or
grandparent) object, it gets data from records on a child object and stores that
data—results are recalculated and stored whenever any record on the detail record is
saved.
Formula fields take input from other fields, values, functions, and operators to
produce results. They can reference standard fields, custom fields, and other formula
fields. Formula results are not stored—the formula expression is stored as metadata.
But the result of that expression is calculated on the fly whenever a user views a
record or runs a report containing the formula field.
Create a Formula
Create a custom formula field that calculates the overall score from the Review
object.
( VALUE(TEXT(Core_Competencies__c)) + VALUE(TEXT(Experience__c)) +
VALUE(TEXT(Leadership_Skills__c)) + IF( Recommend_for_Hire__c , 5, 0) ) / 4
Copy
7. Ensure your screen looks like this:
44
8. Click Check Syntax to verify that there are no errors.
9. Click Next, Next, then Save.
Next, create a roll-up summary field for Review Scores on the Job Application object.
45
8. Click Next, Next, then Save & New.
Create a formula field to show a green, yellow, or red light on a job application
record, depending on the Average Review Score.
46
0,IMAGE("/img/samples/light_red.gif", "Red"),"No Reviews")))
Copy
Now move the new fields to a Candidate Rating Section on the Job Application page
layout.
1. While still viewing the Job Application in Object Manager, click Page Layouts on the
left navigation bar.
5. Click OK.
6. Drag the Number of Reviews, Total Review Score, Average Review Score, and
Review Indicator fields from the Information section into the Candidate Rating
section.
7. Click Save.
47
PRACTICAL 5: BUILD A DATA MODEL FOR A RECRUITING
APP
• Create custom objects, site objects, and junction objects to make an existing app
more efficient.
• Customize page layouts, create relationships, and add filters to give app users easy
access to the information they need.
• Add custom fields to the app to capture information critical to the hiring process.
Introduction
Since implementing Salesforce 6 months ago, AW Computing has been on an
upward trajectory in sales and revenue. And with that comes the need to beef up the
staff across a number of departments. Ling Wu, the vice president of human
48
resources, has asked you to help her recruiting team more efficiently handle the
hiring process.
In this project, you use your awesome admin skills to create custom objects,
relationships, page layouts, and more, to give the HR team easy access to the data
they need on their existing Recruiting app. Before you get hands-on, let’s install an
unmanaged package in your Trailhead Playground. It will add metadata and
customizations that make your hands-on work more realistic and meaningful.
Field Value
Label Review
49
If not, Starting Number 1
click
to launch the App Launcher, then click Playground Starter and follow the steps.
If you don’t see the Playground Starter app, copy this package installation link and
check out Install a Package or App to Complete a Trailhead Challenge on Trailhead
Help.
When the package is finished installing, you see a confirmation page and get an
email to the address associated with your playground.
50
2. Click Create, select Custom Object, and fill in the details.
3. In the Optional Features section, select Allow Reports and Track Field History.
4. In the Deployment Status section, ensure Deployed is selected.
5. In the Search Status section, select Allow Search.
6. In the Object Creation Options section, select these options:
o Add Notes and Attachments related list to default page layout o
Launch New Custom Tab Wizard after saving this custom object
7. Leave everything else as is, and click Save.
8. Use these criteria to configure the New Custom Object Tab:
Don't see the custom wizard setup screen? You might have missed the step above to
launch the new custom tab wizard. To create the tab, enter Tabs in Quick Find and
select Tabs. Then click New under Custom Object Tabs. Then follow the instructions
below.
Field Value
51
1. Click Next.
2. Leave the profile as is and click Next.
3. In the Add to Custom Apps section:
o Deselect Include Tab.
o Select Append tab to users’ existing personal customizations.
4. Click Save.
1. While still viewing Job Posting Site in Object Manager, click Fields & Relationships
and then click New.
2. Select URL as the Data Type.
3. Click Next.
4. For Field Label, enter Job Posting Site URL .
5. Click Next, Next, and click Save & New.
52
4. Select Enter values, with each value separated by a new line and enter these
values:
o Active
o
5. Click Next, Next, and click Save & New.
Inactive
A job posting fits into the space between positions and employment websites. One
position can be posted many times, and one employment website can have many job
postings, but a job posting always represents a single position on a single
employment website.
In essence, the Job Posting object has a many-to-one relationship with both the
Position and the Job Posting Site objects. Through those many-to-one relationships,
you create a many-to-many relationship between the Position and Job Posting Site
objects.
53
3. Leave everything else as is, and click Save.
Next, Value
Field
create
the Label Job Posting
Starting Number 1
1. While still viewing Job Posting in Object Manager, click Fields & Relationships, then
New.
2. Select Master-Detail Relationship as the Data Type.
3. Click Next.
4. For Related to, select Position.
5. Click Next.
6. For Field Label, enter Position .
7. Click Next, Next, Next and Save & New.
Now fill in the details for a master-detail relationship between Job Posting and Job
Posting Site.
54
3. Click next to Position Layout and select Edit.
4. Scroll down to the Job Postings related list, and click in the header to edit it.
5. From the Available Fields section, select o Job Posting Site: Status o Job
Posting Site: Technical Site
6. Click Add.
7. From the Selected Fields section, select Job Posting: Job Posting Number and click
Remove.
8. Click OK, then click Save.
Finally, add fields to the Position related list on the Job Posting Site page layout.
Value
Field
55
Department Sales
Field Value
Location US
Job Description Sales rep to join the AW Computing team serving the eastern region of AMER
Field Value
Status Active
Remove.
8. Click OK, then Save.
Now let’s test what you’ve just done by creating a Job Posting record.
56
11. Click Save.
You can set this up for her by creating a lookup relationship. Lookup relationships
link two objects together. You can link an object with another standard or custom
object, or you can link an object with itself—that’s called a self relationship.
3. Click and select Related Position from the first column, Department from the
second column, and click Insert.
57
4. For Operator, select equals.
5. For Value/Field, select Field.
6. Click and select Current Record: Position, then select Position: Department.
1. Click and select Position from the first column, Record ID from the second
column, and click Insert.
2. For Operator, select not equal to.
3. For Value/Field, select Field.
4. Click and select Current Lookup: Related Position, then select Related
Position: Record ID.
For If it doesn’t, display this error message on save, enter The related position
must be in the same department. You cannot relate a position to itself .
5. For Filter Type, ensure Required is selected.
6.
7. Click Save.
Now let’s test what you’ve just done by viewing a position in the Recruiting App.
58
2. Click Positions, then New, then enter the details of the new position.
3. Click the Related Position field and select Super Sales Rep.
4. Click Save.
5. Notice that that Super Sales Rep appears as a related position for Awesome Sales
Rep. (You may need to refresh the page.)
Value
Field
Department Sales
Location US
Job Description Sales rep to join the AW Computing team serving the western region of AMER
59
Create Custom Recruiting Fields
In this step, you help HR recruiters monitor the interview process by adding custom
fields to capture interview outcome information. Ling Wu wants interviewers to rate
and comment on each candidate in the areas of core competencies and leadership
skills and give feedback on whether they recommend a candidate for hire. To do this,
set up some custom fields on the Review object.
60
4. For Field Label enter Core Competencies .
5. Select Enter values, with each value separated by a new line
and enter these values:
o o 1
o o
o 2
6. For 3 Help Text, For this category, rate candidate on a scale of 1 (lowest) to
enter
4
. 5 (highest)
8. Follow steps 3 through 7 and create two more picklists with Leadership Skills and
Experience as the field labels.
1. Select the Text Area as the Data Type, then click Next.
2. For Field Label, enter Core Competencies Comments .
3. Click Next, Next, then Save & New.
4. Follow steps 1 through 3 and create two more text areas with Leadership Skills
Comments and Experience Comments as the field labels.
Now create a text field allowing interviewers to give reasons they recommend a
candidate.
1. Select the Text Area as the Data Type and click Next.
2. For Field Label, enter Reason Recommended .
3. Click Next, Next, then Save & New.
61
4. Click Next, Next, Next, then Save & New.
Finally, create a master-detail relationship field for Job Application.
62
PRACTICAL 6: Data Security
1. From Setup, enter Tabs in the Quick Find box, then select Tabs.
2. In the Custom Object Tabs section, click New.
3. From the Object picklist, select Review.
63
Next, customize what users see by reordering the tabs for the Recruiting app.
1. From Setup, enter App Manager in the Quick Find box, then select App
Manager.
Sites and Reviews, then click to add the tabs to the Selected Items list
5. In the Selected Items section, rearrange the tabs by clicking on each and using
the up or down arrows to put the tabs in this order: o Home
o Positions o Candidates o Job
Applications o Interviewers o
Reviews o Job Posting Sites o
Reports o Dashboards o
Chatter
Quick actions share qualities with custom buttons and links, with a key difference:
simplicity. They create a more streamlined experience between mobile and desktop.
And action creation can be completely declarative.
Object-specific actions can update existing records and create ones that are
automatically associated with related information. In the Recruiting app, set up an
object-specific quick action to create a job application from a candidate record.
64
2. Click New Action and fill in the details.
3. Click Save.
Next,
Value
Field
Description Action to create a job application from a Candidate record. This description is not visible to
1. Drag the Status field from the palette and drop it on the layout below, to the right of
the Candidate field.
2. Click Save.
1. Click New in the Predefined Field Values list on the action detail page.
2. In the Field Information section, select Stage from the Field Name picklist.
3. In the Specify New Field Value section, select New from the picklist.
4. Click Save.
1. While you’re still viewing Candidate in the Object Manager, click Page Layouts.
65
4. Click Mobile & Lightning Actions in the palette.
5. Drag the New Job App action to the Salesforce Mobile and Lightning Experience
Actions section of the page layout and place it after POST.
6. Click Save.
66
First, create a new section for Core Competencies on the page layout.
6. Click OK.
7. Drag the Core Competencies and Core Competencies Comments fields from the
Information section into the Core Competencies section.
1. Drag Section from the palette to fall below the Leadership Skills section.
2. For Section Name, enter Experience .
3. Under Layout, select 1-Column.
4. Click OK.
5. Drag the Experience and Experience Comments fields from the Information section
into the Experience section.
67
7. Hover over one of the highlighted fields and click to edit them all.
8. For Field Properties, select Required for all three fields.
9. Click OK.
10. Click Save.
4. Click to reveal the Setup menu, then select Edit Page. This is a shortcut to
get into App Builder and clone the default record page for the Candidate object.
Notice the headings on this page: Lightning App Builder and Candidate Record Page.
5. Drag the Recent Items Lightning component from the list of standard components to
the top of the Page Canvas, above the component featuring the Related and
Details tabs.
68
6. Click Save, Activate, Assign as Org Default.
8. Click Next.
9. Click Save.
Now view the new record page. Click Back to return to the Candidate record.
The Recent Items component, showing recently added candidates, appears at the top
of the record page. If you don’t see it, refresh your browser.
Field Value
69
You Value
Field
can do
this Selected Fields Candidate Number
with a First Name
Last Name
custom record type. Record types determine which features are available on page
layouts, including fields, location, and properties; and they limit picklist options. The
record type you create here limits the picklist choices available to hiring managers.
Create Profiles
Before diving in to creating record types, however, there’s a bit of prework to do. The
recruiting team needs a couple of profiles to assign to users, depending on whether
they do technical or nontechnical recruiting. Let’s set those up.
1. From Setup, enter Profiles in the Quick Find box and select Profiles.
2. From the list of profiles, select Standard User. (Choose S from the alphabet list to
narrow the list of options.)
3. Click Clone next to Standard User.
4. For Profile Name, enter Recruiter: Technical .
5. Click Save.
6. On the Recruiter: Technical profile page, click Clone.
7. For Profile Name, enter Recruiter: Nontechnical .
8. Click Save.
4. Deselect the checkbox next to Make Available and select these profiles:
o Recruiter: Technical o
System
Administrator
5. Click Next, then Save.
6. Under Picklists Available for Editing, click Edit next to Department.
7. Remove all but IT and Engineering from the Selected Values column.
70
8. Click Save.
Now create a Nontechnical Position record type and make it accessible to different
profiles.
Field Value
Active Select
1. While you’re still viewing the Position object in the Object Manager, choose Record
Types.
2. Click New and fill in the details.
3. Ensure the checkbox next to Make Available is deselected, then select these profiles:
o Recruiter: Nontechnical o
System Administrator
4. Click Next, then Save.
5. Under Picklists Available for Editing, click Edit next to Department.
6. Remove all but Finance, Support, and Sales from the Selected Values column.
7. Click Save.
Next, add the Record Type field to the Position page layout.
Field Value
Active Select
1. While you’re still viewing the Position object in the Object Manager, choose Page
Layouts.
71
4. Click Save.
To accomplish this, you can create a few new fields and a new page layout to reflect
differences between technical and nontechnical positions.
1. If you’ve navigated away from the Position object, from Setup, click Object Manager
and click Position.
2. Click Fields & Relationships, then New.
3. Select Picklist as the Data Type and click Next.
4. For Field Label enter Operating Systems .
5. Select Enter values, with each value separated by a new line and enter these
values
o Windows o Unix
o Mac
6. Click Next.
7. Select and deselect the Visible checkbox to clear the column, then select these
profiles:
o Recruiter:
Technical o
System
Administrator
8. Click Next.
9. Deselect any checked page layouts, then click Save & New.
Now create a second new field.
72
o COBOL o FORTRAN
o .Net o Java o PHP
o Perl o Python
4. Click Next.
5. Select and deselect the Visible checkbox to clear the column, then select these
profiles:
o Recruiter:
Technical o
System
Administrator
6. Click Next.
7. Deselect any checked page layouts, then click Save.
1. While you’re still viewing the Position object in the Object Manager, choose Page
Layouts.
2. Click New.
3. In the Existing Page Layout picklist, select Position Layout.
4. Enter Technical Position Layout as the Page Layout Name.
5. Click Save.
6. Drag Section from the palette and drop it just below the Position
Detail section. Technical Skills
7. For Section Name, enter .
8. For Layout, select 1-Column.
9. Click OK.
10. Drag the Operating Systems and Programming Languages fields from the palette
into the new Technical Skills section.
11. Click Save.
Finally, edit the page layout assignments for the Position object so the Recruiter:
Technical and System Administrator profiles always use the Technical Position page
layout.
73
7. Click Save.
By enabling feed tracking on objects, recruiters can track changes to records for key
fields. They can see updates for records they follow in their Chatter feed, go to a
specific record, and @mention other Chatter users to get their attention. It’s an ideal
way for the HR team to communicate about candidates.
1. From Setup, enter Feed Tracking in the Quick Find box, then select Feed Tracking.
2. In the list of available objects, click Review.
3. Select Enable Feed Tracking.
4. Select these fields:
o Core Competencies o
Experience o Interviewer o
Job Application o
Leadership Skills o Reason
Recommended o
Recommend for Hire
5. Click Save.
74
Create Custom Profiles Learning
Objectives
In this project, you’ll:
• Update field-level security and create permission sets in an HR recruiting app so that
sensitive data can be viewed only by those who need it.
• Further restrict data access in the app by changing sharing settings.
Introduction
For this project, you continue customizing AW Computing’s Recruiting app, which the
HR team uses as they work to place applicants into open positions in the company.
Ling Wu, the vice president of HR, wants to be sure that those who are using the app
only see the data they need to see.
The first step is creating an HR Recruiter profile and setting up the required data
access according to Ling’s specifications. It’s best practice to not assign standard
profiles to users. Instead, even if you’re not making any changes, clone the Standard
Profiles and assign the clones to users. That way, if a user needs permissions or
access to a custom object in the future, the cloned profiles can be updated easily.
75
Before you can do this project, you must complete the Build a Data Model for a
Recruiting App, Customize the User Interface for a Recruiting App, and Improve Data
Quality for a Recruiting App projects. The work you do here builds on the work you
complete in those projects.
Create Profiles
Before creating the new profile, customize how profiles are viewed.
1. From Setup enter User Management Settings in the Quick Find box, and select User
Management Settings.
76
Candidate
✓ ✓ ✓
2. Set Enhanced Profile User Interface to Disabled (if it’s not already).
1. From Setup enter Profiles in the Quick Find box, and select Profiles.
2. From the list of profiles, find Standard User.
3. Click Clone.
HR Recruiter
77
Object Read Create Edit
Interviewers ✓ ✓ ✓
Job Applications ✓ ✓ ✓
Job Postings ✓ ✓ ✓
Positions ✓ ✓ ✓
Reviews ✓ ✓ ✓
1. From Setup, enter Permission Sets in the Quick Find box, and select Permission
Sets.
2. Click New, and enter the details. o Field Label: o
Description: Hiring Manager
Temporary permission set for those Hiring Managers that need to
interview candidates for positions in their department
Copy
o License: Salesforce
3. Click Save.
4. Click Assigned Apps in the Apps section, then click Edit.
5. Select Recruiting from the Available Apps list and click Add.
Interviewers Visible
✓ ✓
Job Visible ✓
Applications
Job Postings ✓
78
6. Click Save.
79
Object Tab Setting Read Create
Positions Visible ✓ ✓
Reviews ✓ ✓
1. From Setup, enter Permission Sets in the Quick Find box, and select Permission
Sets.
2. Select Hiring Manager.
3. Click Object Settings in the Apps section.
4. Click Positions from the list of object names, and click Edit.
5. Under Field Permissions, select Read Access and Edit Access for Salary
80
Range.
6. Click Save.
Ling Wu would like job postings to be the only HR custom object with public access.
Achieve this by changing the organization-wide default sharing
settings.
1. From Setup, enter Sharing Settings in the Quick Find box and select Sharing
Settings.
2. Click Edit in the Organization-Wide Defaults section.
3. Select Private for the Candidate object.
4. Select Private for the Interviewer object.
5. Select Private for the Job Application object.
6. Select Public Read Only for the Job Posting Site object.
7. Select Private for the Position object.
8. Click Save.
81
PRACTICAL 8: Reports & Dashboards for Lightning
Experience
Introduction
As AW Computing grows, you continue to look for new talent. You’ve already taken
care of a number of requests from Ling Wu, the vice president of Human Resources,
82
to improve her team’s recruiting app. Now she’d like you to add automation to the
mix.
Ling would like to automate the creation of interviewer records for hiring managers.
She’d like to establish an approval process for new positions. And she wants a more
user-friendly process for candidate scoring.
Before you can do this project, you must complete the Build a Data Model for a
Recruiting App, Customize the User Interface for a Recruiting App, Improve Data Quality
for a Recruiting App, and Keep Data Secure in a Recruiting App projects. The work you
do here builds on the work you complete in those projects.
Once your criteria are in place, immediate or time-dependent actions are set in
motion. These actions can include creating a record, updating a record, sending an
email, posting to Chatter, initiating a quick action, submitting for approval, launching
a flow, or calling an Apex class.
1. From Setup, enter Process Builder in the Quick Find box and select Process Builder.
2. Click New, then click Continue with Process Builder. o
Name: Create Interviewer Record
83
o Field: Position:
Hiring_Manager__c o
Operator: Does Not
Equal o Type: Global
Constant
o Value: $GlobalConstant.Null
84
ID
16. Click .
1. From Setup, enter Users in the Quick Find box and select Users.
2. Click New Userand fill in the details.
3. Deselect Generate new password and notify user immediately.
85
Field Value
4. Click Save.
4. Click Save.
Value
Field
Title
Super Support Supervisor
Status New
Department Support
Location US
86
Lay the Groundwork for an Approval Process
The next item on Ling Wu’s list is creating a system to approve positions before
posting them. She wants the recruiter’s manager and two other people to approve all
positions. She would like an additional approver to sign off on senior-level positions.
And she wants these approvers tracked on each position record.
You set up the approval process in the next step. First, you have some prep work to
take care of.
1. From Setup, enter Classic Email Templates in the Quick Find box, then select Classic
Email Templates.
2. Click Create New Folder.
3. Fill in the folder information: o Email Template
Folder Label: Position Request Responses
Now create the necessary templates. First, set up a Position Approved email
template.
3. Click Save.
87
Next, set up a Position Rejected email template.
1. Navigate back to the initial Classic Email Templates page, then click New Template.
2. Ensure Text is selected, then click Next and fill in the details.
3. Click Save.
Create Fields
Now build a few fields on the Position object to use in the approval process.
1. From Setup, enter Approval Processes in the Quick Find box and select Approval
Processes.
2. Select Position from the Manage Approval Processes For picklist.
3. Click Create New Approval Process and select Use Standard Setup Wizard from
the picklist, then fill in the details.
4. For Process Name, enter New Position Approval .
5. For Description, enter:
All positions must be approved by the recruiter's manager and two to three
other approvers. These approvers are tracked in approver fields on the
Position object.
Copy
6. Click Next
7. At the picklist for Use this approval process if the following, select criteria are met.
8. Click Next.
9. In the Next Automated Approver Determined By picklist, select Manager.
10. Select Use Approver Field of Position Owner.
11. Select Administrators OR the currently assigned approver can edit records
during the approval process.
12. Click Next, then Next.
89
o Department o
Education o
Job Description
o Location o
Pay Grade o
Salary Range o
Skills Required
90
6. As Submitter Type, select Owner from the Search picklist.
7. Ensure Position Owner is visible in the Allowed Submitters box.
8. Select Allow submitters to recall approval requests.
9. Click Save.
10. Select I'll do this later. Take me to the approval detail page to review what I've
just created.
11. Click Go!
1. Under the Initial Submission Actions related list, click Add New, then select Field
Update.
2. For Name, enter Approval Status to Pending .
3. For Field to Update, select Approval Status from the picklist.
4. Under Specify New Field Value, select A specific value, then select Pending.
5. Click Save.
91
7. Select Related User from the picklist that appears, then select Approver 1 from the
secondary picklist.
8. For When multiple approvers are selected, select Approve or reject based on the
FIRST response.
9. For What should happen if the approver rejects this request? select Perform all
rejection actions for this step AND all final rejection actions (Final Rejection).
10. Click Save.
11. Select No, I'll do this later. Take me to the approval process detail page to
review what I've just created.
12. Click Go!
1. Select New Approval Step under the Approval Steps related list and complete the
details.
2. For Name, enter Position Approver 3 .
3. Click Next.
4. Select Enter this step if the following criteria are met and enter the criteria.
o Field: Position: Salary Range. o Operator: equals
92
Create the Final Actions
Now create the final actions: approval or rejection, along with their associated email
alerts.
5. In the Available Recipients column, select Position Owner then click to move it
to the Selected Recipients column.
6. Click Save.
1. Under the Final Rejection Actions related list, click Add New, select Email Alert, and
fill in the details.
2. For Description, enter Email position owner about rejection .
3. For Email Template, select Position Rejected.
5. In the Available Recipients column, select Position Owner then click to move it
to the Selected Recipients column.
6. Click Save.
1. Under the Recall Actions related list, click Add New, and
select Field Approval Status to Recalled Update.
2. For Name, enter .
3. For Field to Update, select Approval Status from the picklist.
4. Under Picklist Options, select A specific value, then select Recalled from the picklist.
5. Click Save.
6. On the Approval Processes page, click Activate.
7. Click OK on the popup that appears.
1. From Setup, enter Process Builder in the Quick Find box, then select Process
94
Builder.
2. Click New.
3. Select Continue in Process Builder when
prompted Submit New Positions for Approval
4. For Process Name, enter .
5. Under The process starts when, select A record changes from the picklist.
6. Click Save.
7. Click + Add Object and select Position from the Object picklist. (Do not worry if you
see a warning message that Position already has active record-change processes.)
8. For Start the process, select when a record is created or edited.
9. Click Save.
10. Click + Add Criteria.
11. For Criteria Name enter Position Ready for Approval .
Operator Type Value
Field
Field Value
Object Position__c
12. For Criteria for Executing Actions, select Conditions are met.
13. Click + Add Row four times and set the conditions.
17. Click .
95
Create a Candidate Rating Flow
Right now, the AW Computing hiring managers have to manually input a number
when they rate candidates. Ling Wu wants this process to be more user friendly, with
radio buttons.
To set this up for her, create a flow. Flows, which you build using Flow Builder,
automate business processes by executing logic, interacting with the Salesforce
database, and collecting data from users.
1. From Setup, enter Flows in the Quick Find box and select Flows.
2. Click New Flow.
3. Under Flow Types, select Screen Flow.
4. Click Create.
5. On the Canvas, click the Auto-Layout button, and select Freeform.
6. Add a screen element to prompt for the Review information by dragging Screen from
the palette onto the flow window.
7. For Label, enter New Review .
1. Click Radio Buttons from the Input section of the palette on the left.
2. Enter Experience in the Label field. (The API Name field will default.)
Field Value
Fiel Value
API dName Excellent
API Name VeryGood
Choice Label Excellent
Choice Label Very Good
Data Type Number
Data Type Number
Choice Value 5
Choice Value 4
Field Value
Choice Value 3
Field Value
Choice Value 2
9. Click Done.
10. Click inside the third Choice field and select +New Choice Resource.
11. Select Choice as the Resource Type, and fill in the details.
Field Value
Choice Value 1
97
18. Click Done.
19. Click Text from the Input section of the palette on the left.
20. For Label, enter Experience Comments . (The API Name field will default.)
You’ve got your first set of radio buttons, but don’t click Done on the screen just yet.
There’s one more set of radio buttons to add—don’t click Done yet.
98
Add Screen Elements
Finally, add screen elements to the flow to create a checkbox and textbox so
recruiters can recommend a candidate for hire.
1. Click Checkbox from the Input section of the palette on the left.
2. For Label, enter Recommend for Hire . (API Name field will default.)
3. Click Text from the Input section of the palette on the left.
4. For Label, enter Reason Recommended . (API Name field will default.)
5. Click Done to close the screen.
Your New Review window should look like this. You can double-click the Screen
element to see the details and edit the Screen.
99
Set a Start Element
Now that you’ve created the flow, set its start element.
1. Connect the Start element to the New Review Screen element by clicking and holding
the Start circle and then dragging your cursor to the New Review element.
2. You will see that the two elements are connected by a solid line.
Field Value
Core_Competencies_Comments__c Core_Competencies_Comments
Core_Competencies__c Core_Competencies
Experience_Comments__c Experience_Comments
Experience__c Experience
Leadership_Skills_Comments__c Leadership_Skills_Comments
Leadership_Skills__c Leadership_Skills
Reason_Recommended__c Reason_Recommended
101
Recommend_for_Hire__c Recommend_for_Hire
7. For Value, click in the box, select +New Resource, and fill in the information.
8. Click Done.
9. Confirm that the Value that aligns with the Job_Application_ _c field now contains
{!varJobAppId}.
10. Click +Add Field 8 times, then map the rest of the values according to the chart
below. (Hint: Type the first few letters of the Field or Value name, then click it when
you see it.)
Verify that your screen looks something like this.
Field Value
102
11. Click Done.
12. Connect the New Review screen element to the createReview element by
clicking and holding the New Review circle and then dragging your cursor to
the createReview element.
103
9. Click Save.
10. For Flow Label, enter New Review .
11. Let the Flow API Name field default.
12. Click Save.
13. Click Activate.
1. While still viewing Job Application in Object Manager, click Page Layouts.
104
5. Click Save.
105