Salesforce Admin Book
Salesforce Admin Book
Salesforce Admin Book
Salesforce Admin 1
Multi Tenant Architecture 5
How to create and manage user accounts 5
Discuss user profiles and roles 5
Objects in Salesforce 5
Fields in Salesforce 8
Global Picklist in Salesforce 8
Dependent Fields 8
Formula Field in Salesforce - Calculated Field, 1 OR More fields 8
Relationships in Salesforce 11
Questions 13
Junction Object [ Many - Many Relationship ] 15
Questions 16
Self Lookup [ Lookup with Same Object ] 18
Hierarchy Lookup 18
External Objects in Salesforce 18
External Lookup in Salesforce 19
Indirect Lookup in Salesforce 19
Lookup Filters in Salesforce 19
Cross Object Formula fields in Salesforce 19
Rollup Summary fields in Salesforce 19
Schema Builder 21
Validation Rules in Salesforce 21
Validation Rule Continue 23
Page Layout 25
Compact Page Layout 25
List View 25
Security Model in Salesforce 25
Profile 25
Permission Set 26
Permission Set group 26
Login IP Ranges 27
Login History 27
Login Hours 28
Network Access 28
Activations 28
Universal IP Range 28
Organisation Wide Defaults (OWD) 29
Questions to Ask 32
Group ( Public Group ) 32
Queues in Salesforce 32
Queues vs Group 33
Behind the Scene of Sharing 35
Sharing Rules in Salesforce 37
Questions related to Sharing Rules 39
Share Records Using Teams in Salesforce 40
Lead Process 41
Record Type in Salesforce 43
Lightning App Builder 45
Feed Tracking in Salesforce 47
Dynamic Forms in Salesforce 49
Quick Actions in Salesforce 50
Global Actions 50
Dynamic Actions 51
Duplicate Management in Salesforce 52
Limitations of Duplicate Rules 53
Email Templates in Salesforce 54
Email Communication 55
Automation Processes in Salesforce 59
Screen Flows in Salesforce 59
Input Components in Salesforce Flows 59
Screen Flow Scenarios 60
Screen Flow Scenario #2 60
Record Triggered Flows 62
Types of Record Trigger Flows 63
Email Alerts in Salesforce 66
Flow Session Error handling 67
Auto Launched Flows 69
Asynchronous Flows 70
Approval Processes 72
Simple Approval Process 73
Multi-Step Approval Process 74
Lead Management 77
Web-to-Lead 78
Lead Assignment Rules 80
Rule 1: Geography-Based Assignment 81
Rule 2: Industry-Based Assignment 81
Rule 3: Large Deal Assignment 81
Rule 4: Round-Robin Assignment 82
Rule 5: Hot Leads Assignment 82
Lead Auto Response Rules ( Acknowledge ) 86
Lead Conversion Process 92
Lead Field Mapping 92
Case Management 94
Web-to-Case 94
Email-to-Case 97
Case Auto Response Rules 101
Case Assignment Rules 106
Business Hours 110
Case Escalation Rules 112
Activity Management in Salesforce 120
OWD Email in Salesforce 123
Email Deliverability 123
Setup OWD Email 124
Associate Contacts to Multiple Accounts 127
Person Accounts 128
Multi Currency 129
Reports & Dashboards 130
Types of Reports 130
Tabular 130
Summary 130
Matrix 131
Joined Report 131
Relative Date Filters in Reports 132
Report Folders 132
Dashboard Folders 132
Formula in Reports 132
Filters in Reports 132
Report Sharing 132
Email Reports 132
Lead Convert Report 132
Dashboards 132
Dynamic Dashboards 132
Email Dashboards 132
Reports and Dashboards Limits and Allocations 132
Audit Trail 133
Data Import & Export 133
Import Wizard 133
Export Wizard 133
Data Loader 135
AppExchange 135
Google Chrome Extensions 135
Salesforce Inspector reloaded 135
Salesforce Booster 135
Salesforce Show field API Names 135
Salesforce Logins 135
Salesforce Admin Certifications 135
Multi Tenant Architecture
https://cdn.sanity.io/images/nosafynr/pf-
production/611437d637c03368bf182d034147772bd361179f-999x422.png
Objects in Salesforce
John Doe
Barbara
Jack
Fields in Salesforce
Dependent Fields
● Controlling Field
○ Picklist [Single - Select]
○ Checkbox
○ Standard Picklist Field Can be used
● Dependent Field
○ Picklist [Single - Select]
■ Picklist [Multi - Select]
IF(
Would_you_recommend__c > 8,
IMAGE("/img/samples/light_green.gif", "GREEN"),
IF(
AND(
Would_you_recommend__c > 6,
Would_you_recommend__c < 9
),
IMAGE("/img/samples/light_yellow.gif", "YELLOW"),
IMAGE("/img/samples/light_red.gif", 'RED' )
)
)
CASE( Priority,
"Low", IMAGE("/img/samples/stars_100.gif", "1 Star"),
"Medium",IMAGE("/img/samples/stars_300.gif", "3 Star"),
"High",IMAGE("/img/samples/stars_500.gif", "5 Star"),
"")
IF (
CASE(
Status ,
"Open",1,
"Waiting for approval",1,
0
)=1,
IF(
SLA_Date__c =
TODAY(),IMAGE("/img/samples/flag_yellow.gif","Yellow"),
IF(
SLA_Date__c <
TODAY(),IMAGE("/img/samples/flag_red.gif","Red"),
IF(
SLA_Date__c >
TODAY(),IMAGE("/img/samples/flag_green.gif","Green"),
"")
)
)
,
IF(
ISPICKVAL( Status , "Closed"),
IF(
Close_date_complaint__c = SLA_Date__c ,
IMAGE("/img/samples/flag_yellow.gif","Yellow"),
IF(
Close_date_complaint__c < SLA_Date__c,
IMAGE("/img/samples/flag_red.gif","Red"),
IF(
Close_date_complaint__c > SLA_Date__c,
IMAGE("/img/samples/flag_green.gif","Green"),
"")
)
),
IMAGE("/img/samples/flag_green.gif","Green")
)
)
IF(
TEXT( Priority ) == 'Low',
IMAGE("/img/samples/light_green.gif", "GREEN"),
IF(
TEXT( Priority ) == 'Medium',
IMAGE("/img/samples/light_yellow.gif", "YELLOW"),
IF(
TEXT( Priority ) == 'High',
IMAGE("/img/samples/light_red.gif", 'RED' ),
IMAGE("/img/samples/light_red.gif", 'RED' )
)
)
)
Relationships in Salesforce
[https://www.pantherschools.com/types-of-relationship-in-salesforce/ ]
● Lookup
○ Used to connect two objects with each other in Parent to Child
fashion
○ Lookup field will always be on the Child Object
○ One parent can have multiple child
○ Parent field on child object will always be optional
○ If a Parent gets deleted, the child record will still remain inside
Salesforce. Only the lookup field will get cleared on Child
Record.
○ If we restore the parent record from Recycle Bin then the lookup
field on the Child Object re-populated with the Parent Record.
● Master-Details
○ Used to connect two objects with each other in Parent to Child
fashion
○ Master-Detail field will always be on the Child Object
○ One parent can have multiple child
○ Customer
■ Order
■ Invoice
■ Payment
■ Refund
○ Parent field will always be required on the child object. i.e.
child can not exist without parent
■ Invoice
■ Invoice Line Item
○ If Parent gets deleted child record will also get deleted from
Salesforce
○ If we restore the parent record from Recycle Bin then the child
record will also get restored
○ In case of Master details, the child object/record will not have
any owner. Ownership will always be decided from the parent
record/object.
○ Questions to ask for Master-Details
■ Invoice
■ Invoice Line Item
■ Can a child exist without a master? - YES [ Lookup
]
■ Can Child have their own Owner? - YES [ Lookup ]
■ Do we require a roll-up summary field on the
parent object? - YES [ Master-Detail ]
■ Can Rollup-Summary be done via code? -
YES [ Lookup ]
Questions
Questions
Question
Hierarchy Lookup
● Phone No validation
● Email Validation
● Required field validation
● Zip Code Validation
● Name Can not Contain “Test” [ Test Employee (Proper Case) ]
○ If name contains test/Test/TEST/teST/ tEsT
■ test employee [ lower case ] - CONTAINS(Name, "test")
■ TEST EMPLOYEE [ Upper Case ] - CONTAINS(Name,
"TEST")
● Employee Name Can not Contains the keywords “test & employee”
○ Contains Test ( OR, II )
○ Contains Employee
■ CONTAINS(LOWER(Name), "test") ||
CONTAINS(LOWER(Name), "employee")
OR(
CONTAINS(LOWER(Name), "test"),
CONTAINS(LOWER(Name), "employee"),
CONTAINS(LOWER(Name), "abc"),
CONTAINS(LOWER(Name), "xyz")
)
● Employee Name Can not Contains the keywords “test & employee”
only when we are creating new record
○ A new Employee Record is being created [ New Record ] -
ISNEW()
■ AND , &&
○ The Name field contains either ( test OR employee )
AND(
IsNEW(),
OR(
CONTAINS(LOWER(Name), "test"),
CONTAINS(LOWER(Name), "employee"),
CONTAINS(LOWER(Name), "abc"),
CONTAINS(LOWER(Name), "xyz")
)
)
● Employee Name Can not Contains the keywords “test & employee”
only when we are updating the existing records
AND(
IsNEW() == false,
OR(
CONTAINS(LOWER(Name), "test"),
CONTAINS(LOWER(Name), "employee"),
CONTAINS(LOWER(Name), "abc"),
CONTAINS(LOWER(Name), "xyz")
)
)
AND(
NOT IsNEW(),
OR(
CONTAINS(LOWER(Name), "test"),
CONTAINS(LOWER(Name), "employee"),
CONTAINS(LOWER(Name), "abc"),
CONTAINS(LOWER(Name), "xyz")
)
)
Assignments
● Contact Account, First Name & Email should not be blank while
creating the record
● Contact related account industry must be Education for creating any
contact record.
● Opportunity stage must be selected.
● Opportunity amount must be greater than zero.
● Opportunity close date must be greater than or equal to today's date.
● Account Shipping Address Can not be blank
● Ensure that the opportunity close date is within 90 days of the
opportunity creation date.
● While Changing the Opportunity Stage to Closed Won, make sure
amount is greater than 0
● Field Required
○ ISBLANK(FirstName) || ISBLANK(AccountId)
● ISPICKVAL
○ Works with Picklist field
○ TEXT(StageName) == 'Qualification' && Amount <=15000
○ ISPICKVAL(StageName, "Qualification") && Amount <=15000
■ Qualification OR
■ Needs Analysis OR
■ Value Proposition
○ AND Amount > 15000
○ ( ISPICKVAL(StageName, "Qualification") ||
ISPICKVAL(StageName, "Needs Analysis") ||
ISPICKVAL(StageName, "Value Proposition") ) && Amount
<=15000
● CASE
○ Text
○ Number
○ Picklist
● BLANKVALUE
● TODAY
● DATETIMEVALUE
○ Field with data type Date
○ Field with data type Date Time
● DATEVALUE
○ Field with data type Date
○ Field with data type Date Time
● ISCHANGED
○ ISCHANGED(fieldAPiName)
● PRIORVALUE
○ Returns the previous value for the field
○ PRIORVALUE(fieldApiName)
○ Used in case of update DML
● The Opportunity Stage can not be updated to Closed Won or Closed
Lost if the Previous Value of the Opportunity Stage is Prospecting
○ Check if Stage is Changed AND
○ ( Check if Stage is Changed to Closed Won OR Closed Lost )
AND
○ Check if the Previous value of Stage field is Prospecting AND
AND(
ISCHANGED( StageName ),
OR(
ISPICKVAL( StageName , "Closed Lost") ,
ISPICKVAL( StageName , "Closed Won")
),
TEXT(PRIORVALUE( StageName )) == "Prospecting"
)
● ISBLANK
● TRIM
● ISCLONE
Page Layout
● Record Type
● Default Record Type - [ Master ]
● Highlight Panel
● Only 1 Primary Layout
List View
○ https://help.salesforce.com/s/articleView?id=sf.filter_dates_rel
ative.htm&type=5
Profile
Permission Set
Login IP Ranges
5. Profile Level
6. To Restrict the unauthorised login into Salesforce Org from an
unknown IP Address/Location.
Login History
9. Profile Level
10. To restrict the User to Login into Salesforce from outside the
Company Working Hours
11. Audit Purpose
Network Access
12. To Prevent the Verification code being sent while login from unknown
device, browser or IP Address
Activations
13. Stores all the IP Ranged and Browsers Clients to check when to send
the notification
Universal IP Range
Organisation Wide Defaults (OWD)
● Public Read/Write/Transfer
○ Case
○ Lead
○ The User having Read/Edit Permission at Object Level can
Change the Record Owner as Well.
Questions to Ask
Queues in Salesforce
2 Can be the owner of the record Can not be the owner of the
records
3 Users who are part of the Users who are part of the Group
Queue can change the record can not change the record
owner. owner if they are not the record
owner.
4 Queue can be created for any Groups can be created and used
Custom objects and for some across any objects in Salesforce.
of the Standard objects like -
Case and Lead
● Sharing Rules
○ Used for sharing the record with the users, roles or group of
users ( public group )
● Types of Sharing Rules
○ Criteria Based Rules
■ Executes based on certain criteria
● Owner Based Rules
○ Bases on Record Owners
■ For Example, Record created by CEO needs to be shared
with COO, CFO
■ Record created by External Users need to shared with
Certain Internal Users
● Teams in Salesforce
○ Case Team -
■ SR Number
● Payment Transfer
○ Target Bank -
○ Source Bank -
○ Transaction Number - Unique Id
○ Date -
○ Status - they will check from the bank
○ Amount - 894 Rs
○ Settlement Time - 3 Days ( approx. )
■ Will add the user as Team
● Read
● Edit
■ Group of Users
○ Account Team
■ Group of Users
● Account Access
● Contact Access
● Case Access
● Opportunity Access
■ PantherSchools - Company
● Amit Singh - John Doe
● Aman Tiwari - Barbra Levi
○ Will add a team under account
○ Opportunity Team
■ Group of Users
● Solar Panel Install
○ Solar Plant - Not My expertise
■ Will add the user as a Team
○ Home - My Expertise
Lead Process
● Marketing Campaign
○ Lead Generate
● Ads
○ Lead Generate
● Referral
○ Lead Generate
● Delhi - Mumbai
○ Option 1
○ Option 2
○ Option 3
● Used to Create the Record Type for the Lead Object
● Controls the Picklist values for the Lead Status Object
● Sales Process
○ Used to Create the Record Type for the Opportunity Object
○ Controls the Picklist values for the Opportunity Stage Object
● Support Process
○ Used to Create the Record Type for the Case Object
○ Controls the Picklist values for the Case Status Object
Record Type in Salesforce
● Invoice Management
● Expense Management
Global Actions
● + ( sign )
● Can not be associated with any parent record by default.
● Global actions need to be added into the Publisher Layouts to be
visible.
Dynamic Actions
○
○ Student Object OWD is private
■ User A has created the Student record Amit Singh -
[email protected]
■ User B is having access to the above student.
■ User B is trying to create the record with the same value
Amit Singh - [email protected].
Limitations of Duplicate Rules
Dear {{{Student__c.Name}}},
Important Contacts:
Best Regards,
{{{Sender.Name}}}
Email Communication
● Classic
○ Text ( normal email template )
<messaging:htmlEmailBody >
<html>
<body>
<p>Dear {!recipient.Name},</p>
<p>An Opportunity requires your approval. Please
review the details below and take action:</p>
<p>
<b>Opportunity Name:</b>
{!relatedTo.Name}<br/>
<b>Account Name:</b>
{!relatedTo.Account.Name}<br/>
<b>Amount:</b> {!relatedTo.Amount}<br/>
<b>Close Date:</b> {!relatedTo.CloseDate}<br/>
<b>Stage:</b> {!relatedTo.StageName}<br/>
</p>
<p>
To review the full details and take action,
please click on the following link:<br/>
</p>
<p>Thank you for your attention to this
matter.</p>
<p>Sincerely,<br/>
Your Salesforce Team</p>
</body>
</html>
</messaging:htmlEmailBody>
<messaging:attachment renderAs="PDF"
filename="YourProducts.pdf">
<html>
<body>
<p>You can display your {!relatedTo.name}
Products as a PDF</p>
<table border="0" >
<tr>
<th>Name</th><th> Description </th>
<th> Quantity </th><th>ListPrice</th>
</tr>
<apex:repeat var="cx"
value="{!relatedTo.OpportunityLineItems}">
<tr>
<td><a href =
"https://pantherschools-c-dev-
ed.develop.lightning.force.com/{!cx.id}">{!cx.Name}</a></td>
<td>{!cx.Description}</td>
<td>{!cx.Quantity}</td>
<td>{!cx.UnitPrice}</td>
</tr>
</apex:repeat>
</table>
</body>
</html>
</messaging:attachment>
</messaging:emailTemplate>
Automation Processes in Salesforce
Create a flow that will take the input from the User and will create a new
case. This screen flow will sit inside the Contact Record Page so whenever
the case is being created it should get created under that contact only and
the user can not change the contact from the flow. Below are the fields
that should be there in the Screen flow while creating the Case
1. Subject
2. Description
3. Priority
4. Status - Default to New
5. Case Reason
● Fault Path
● Success Message with Link
Your company PantherSchools is looking for a solution which will take the
Case # as input and then If the case is present in the System Display the
following details of the case and if case is not present display the error
message “Case Not Found”.
Note:- Store the Error Message in a custom Label and use it.
● Edit Record
● Get Record
● Delete Record
Screenflow
Rollback the Records if there is any error while creating any other object.
Record Triggered Flows
● Create
● Update
● Delete
Global Variable -
$Record.Name → Google.com
$Record.Industry ← Education
[ Assignment ]
Dear User,
Email - {!$Record.Email}
Company - {!$Record.Company}
Industry - {!$Record.Industry}
Status - {!$Record.Status}
Regards,
PantherSchools
Object - Opportunity
Event - Update
Lead/Contact
Activity → Task/Event
Who(WhoId)
→ Send Email
● Email Template Id
Assignments -
● DataTable
● Reactive
● Validation
● Dynamic Show/Hide
● Flow Orchestration
● Scheduled Flows
● Callouts From Flows
○ NA
Approval Processes
● Email Templates
○ Approval Assigned →
○ Approval Approved → Record Owner
○ Approval Reject → Record Owner
Simple Approval Process
○ Prerequisite
■ Discount Field on Opportunity
■ Discount Status Picklist on Opportunity
■ Discount Approval
Discount Approval
1. Discount < 2 % - User can Self Approve - Step Not Needed
2. Discount >=2 % && < 4 - Manager Approval Needed Approval is
needed
a. Done
3. Discount >=4 && < 6% - Manager & Sr. Manager Approval is needed
a. Manager Approval Pending
b. Manager Approved
c. Done
4. Discount >=6 && < 8 % - Manager & Sr. Manager & VP Approval is
needed
a.
5. Discount >= 8 % - Manager, Sr. Manager, VP Approval, CEO is needed
→ Approve From Email
<!-- ------------------------------------------------------------
---------- -->
<!-- NOTE: Please add the following <META> element to your page
<HEAD>. -->
<!-- If necessary, please modify the charset parameter to specify
the -->
<!-- character set of your HTML page.
-->
<!-- ------------------------------------------------------------
---------- -->
<!-- NOTE: Please add the following <FORM> element to your page.
-->
<!-- ------------------------------------------------------------
---------- -->
<form
action="https://webto.salesforce.com/servlet/servlet.WebToLead?enc
oding=UTF-8&orgId=00D5j00000DP3HG" method="POST">
<!-- ------------------------------------------------------------
---------- -->
<!-- NOTE: These fields are optional debugging elements. Please
uncomment -->
<!-- these lines if you wish to test in debug mode.
-->
<!-- <input type="hidden" name="debug" value=1>
-->
<!-- <input type="hidden" name="debugEmail"
-->
<!-- value="[email protected]">
-->
<!-- ------------------------------------------------------------
---------- -->
<label for="first_name">First Name</label><input id="first_name"
maxlength="40" name="first_name" size="20" type="text" /><br>
Lead assignment rules are used to assign the leads to the Users or Queues
based on the Certain Criterias.
Always develop the error proof Assignment Rules by adding a Last Entry in
the Rule with no criteria that will assign the Leads to Fallback Queue.
Note:- There will be only 1 rule Active at a time and one rule can have
multiple entries for the same Rule.
Rule 1: Geography-Based Assignment
Criteria:
Assignment:
Criteria:
Assignment:
Criteria:
Criteria:
No specific criteria
Assignment:
3 → Sales Rep
Criteria:
Assignment:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-
scale=1.0">
<title>Lead Assignment Notification</title>
<style>
body {
font-family: 'Arial', sans-serif;
background-color: #f4f4f4;
margin: 0;
padding: 0;
}
.container {
max-width: 600px;
margin: 20px auto;
background-color: #fff;
border-radius: 5px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.header {
background-color: #3498db;
color: #fff;
padding: 20px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
}
.content {
padding: 20px;
}
.footer {
background-color: #ecf0f1;
padding: 10px;
border-bottom-left-radius: 5px;
border-bottom-right-radius: 5px;
}
.button {
display: inline-block;
padding: 10px 20px;
font-size: 16px;
color: #fff;
text-decoration: none;
background-color: #3498db;
border-radius: 5px;
}
</style>
</head>
<body>
<div class="container">
<div class="header">
<h2>Lead Assignment Notification</h2>
</div>
<div class="content">
<p>Hello {!Lead.OwnerFullName},</p>
<p>Congratulations! A new lead has been assigned to you.
Please review the details below:</p>
<ul>
<li><strong>Lead Name:</strong> {!Lead.Name}</li>
<li><strong>Email:</strong> {!Lead.Email}</li>
<li><strong>Phone:</strong> {!Lead.Phone}</li>
<!-- Add more lead details as needed -->
</ul>
<p>Take action now and start nurturing this lead to
conversion. Thank you for your prompt attention!</p>
</div>
<div class="footer">
<p>Best Regards,<br>Your Salesforce Team</p>
<a href="{!Lead.Link}" class="button">View in Salesforce</a>
</div>
</div>
</body>
</html>
Lead Auto Response Rules ( Acknowledge )
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-
scale=1.0">
<title>Thank You for Your High-Value Interest!</title>
<style>
body {
font-family: 'Arial', sans-serif;
background-color: #f8f8f8;
margin: 0;
padding: 0;
}
.container {
max-width: 600px;
margin: 20px auto;
background-color: #fff;
border-radius: 5px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.header {
background-color: #4caf50;
color: #fff;
padding: 20px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
text-align: center;
}
.content {
padding: 20px;
text-align: left;
}
.footer {
background-color: #ecf0f1;
padding: 10px;
border-bottom-left-radius: 5px;
border-bottom-right-radius: 5px;
text-align: center;
}
.button {
display: inline-block;
padding: 10px 20px;
font-size: 16px;
color: #fff;
text-decoration: none;
background-color: #4caf50;
border-radius: 5px;
}
</style>
</head>
<body>
<div class="container">
<div class="header">
<h2>Thank You for Your High-Value Interest!</h2>
</div>
<div class="content">
<p>Dear {!Lead.Name},</p>
<p>We are thrilled to learn about your interest in our
products/services, especially considering the substantial amount
you are considering--exceeding $100,000.</p>
<p>Your potential deal is important to us, and we are
committed to providing the highest level of service to meet your
needs. A dedicated representative will be in touch with you
shortly to discuss the details and ensure a seamless
experience.</p>
<p>In the meantime, feel free to explore more about our
offerings on our website:</p>
<p> <a href="https://www.pantherschools.com/"
class="button">Explore Our Offerings</a> </p>
</div>
<div class="footer">
<p>Best Regards,<br>PantherSchools Team</p>
<a href="https://academy.pantherschools.com/"
class="button">Explore Our Offerings</a>
</div>
</div>
</body>
</html>
Lead Conversion Process
https://help.salesforce.com/s/articleView?id=sf.lead_conversion_mapping.ht
m&type=5
Lead Field → Data Type that must match with the data type of
Contact/Account/Opportunity Fields
Picklist → Picklist/Text
Number → Number
Boolean → Boolean
Currency → Currency
Standard Field Mapping in a customised way
Case Management
Web-to-Case
<!-- ------------------------------------------------------------
---------- -->
<!-- NOTE: Please add the following <META> element to your page
<HEAD>. -->
<!-- If necessary, please modify the charset parameter to specify
the -->
<!-- character set of your HTML page.
-->
<!-- ------------------------------------------------------------
---------- -->
<!-- ------------------------------------------------------------
---------- -->
<!-- NOTE: Please add the following <FORM> element to your page.
-->
<!-- ------------------------------------------------------------
---------- -->
<form
action="https://webto.salesforce.com/servlet/servlet.WebToCase?enc
oding=UTF-8&orgId=00D5j00000DP3HG" method="POST">
<!-- ------------------------------------------------------------
---------- -->
<!-- NOTE: These fields are optional debugging elements. Please
uncomment -->
<!-- these lines if you wish to test in debug mode.
-->
<!-- <input type="hidden" name="debug" value=1>
-->
<!-- <input type="hidden" name="debugEmail"
-->
<!-- value="[email protected]">
-->
<!-- ------------------------------------------------------------
---------- -->
<label for="description">Description</label><textarea
name="description"></textarea><br>
</form>
Email-to-Case
● Normal
● On-Demand Email-to-Case
○ Mostly Used
Steps to Configure Email-to-Case
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
body {
font-family: 'Arial', sans-serif;
background-color: #f5f5f5;
margin: 0;
padding: 0;
.container {
max-width: 600px;
background-color: #ffffff;
padding: 20px;
border-radius: 8px;
.header {
background-color: #e74c3c;
color: #ffffff;
padding: 20px;
text-align: center;
h1 {
color: #ffffff;
p{
color: #555555;
line-height: 1.6;
.case-details {
margin-top: 20px;
padding: 20px;
background-color: #f9f9f9;
border-radius: 8px;
.case-details p {
margin: 10px 0;
.case-priority {
font-weight: bold;
color: #e74c3c; /* Red for high priority, you can adjust color
accordingly */
.response-message {
margin-top: 20px;
padding: 15px;
border-radius: 8px;
.case-record-link {
display: block;
margin-top: 15px;
text-align: center;
.case-record-link a {
display: inline-block;
color: #ffffff;
text-decoration: none;
border-radius: 5px;
.footer {
margin-top: 20px;
padding-top: 10px;
text-align: center;
color: #777777;
</style>
</head>
<body>
<div class="container">
<div class="header">
</div>
<p>Hello {!Case.SuppliedName},</p>
<div class="case-details">
</div>
<div class="response-message">
<p>Your case has been marked as High Priority or Urgent. Our team
is actively working on it to provide a swift resolution. We appreciate your
patience.</p>
</div>
<div class="footer">
</div>
</div>
</body>
</html>
Case Assignment Rules
Default Queue
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-
scale=1.0">
<title>Case Assignment Notification</title>
<style>
body {
font-family: 'Arial', sans-serif;
background-color: #f5f5f5;
margin: 0;
padding: 0;
}
.container {
max-width: 600px;
margin: 20px auto;
background-color: #ffffff;
padding: 20px;
border-radius: 8px;
box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}
.header {
background-color: #4CAF50;
color: #ffffff;
padding: 20px;
text-align: center;
border-radius: 8px 8px 0 0;
}
h1 {
color: #333333;
}
p {
color: #555555;
line-height: 1.6;
}
.case-details {
margin-top: 20px;
padding: 20px;
background-color: #f9f9f9;
border-radius: 8px;
}
.case-details p {
margin: 10px 0;
}
.case-priority {
font-weight: bold;
color: #e74c3c; /* Red for high priority, you can
adjust color accordingly */
}
.case-source {
font-style: italic;
color: #3498db; /* Blue for email source, you can
adjust color accordingly */
}
.case-record-link {
display: block;
margin-top: 15px;
text-align: center;
}
.case-record-link a {
display: inline-block;
padding: 10px 20px;
background-color: #3498db;
color: #ffffff;
text-decoration: none;
border-radius: 5px;
}
.footer {
margin-top: 20px;
padding-top: 10px;
border-top: 1px solid #dddddd;
text-align: center;
color: #777777;
}
</style>
</head>
<body>
<div class="container">
<div class="header">
<h1>Case Assignment Notification</h1>
</div>
<p>Hello {!Case.OwnerFullName},</p>
<div class="case-details">
<p><strong>Case Number:</strong> {!Case.CaseNumber}
</p>
<p><strong>Case Subject:</strong> {!Case.Subject}</p>
<p><strong>Case Description:</strong>
{!Case.Description}</p>
<p><strong>Case Priority:</strong> <span class="case-
priority">{!Case.Priority}</span></p>
<p><strong>Case Source:</strong> <span class="case-
source">{!Case.Origin}</span></p>
<p><strong>Assigned Date:</strong> {!Case.CreatedDate}
</p>
</div>
<div class="case-record-link">
<a href="{!Case.Link}" target="_blank">View Case
Record</a>
</div>
<div class="footer">
<p>This is an automated notification. Please do not
reply to this email.</p>
</div>
</div>
</body>
</html>
Business Hours
→ Case/Service Request/Inquiry
Case → Priority
Case Priority
Urgent → 1
High → 3
Medium → 8
Low → 24
<p>Hello {!Case.OwnerFullName},</p>
<div class="case-details">
<p><strong>Case ID:</strong> {!Case.CaseNumber}</p>
<p><strong>Case Subject:</strong> {!Case.Subject}</p>
<p><strong>Case Description:</strong>
{!Case.Description}</p>
<p><strong>Case Priority:</strong> <span class="case-
priority">{!Case.Priority}</span></p>
<p><strong>Case Source:</strong> <span class="case-
source">{!Case.Origin}</span></p>
</div>
<div class="case-record-link">
<a href="{!Case.Link}" target="_blank">View Escalated
Case</a>
</div>
<div class="footer">
<p>This is an automated notification. Please do not
reply to this email.</p>
</div>
</div>
</body>
</html>
Activity Management in Salesforce
Task
Event
Timing:
Tasks are often more flexible in terms of timing and can be completed
within a broader timeframe, whereas events have specific dates and times.
Purpose:
Tasks are generally used for actions and to-do items, focusing on
completion, while events are used for scheduling and tracking time-bound
activities.
Associations:
Both tasks and events can be associated with records (e.g., Accounts,
Contacts), but tasks are more focused on actions, while events are tied to
specific dates and times.
Collaboration:
Events are more collaborative and can involve multiple participants with
tracking of responses, making them suitable for meetings and
appointments. Tasks are typically assigned to individual users or groups.
● Lead → Person
● Contact → Person
Related To - WhatId
Email Deliverability
AccountContactRelation
Person Accounts
Types of Reports
Tabular
→ Simple
Summary
Joined Report
https://help.salesforce.com/s/articleView?id=sf.filter_dates_relative.htm&ty
pe=5
Report Folders
Dashboard Folders
Formula in Reports
Filters in Reports
Report Sharing
● Viewer
● Editor
● Manager
Email Reports
Dashboards
Dynamic Dashboards
Email Dashboards
https://help.salesforce.com/s/articleView?id=sf.rd_reports_dashboards_limi
ts.htm&language=en_US&type=5
Audit Trail
Import Wizard
Export Wizard
Data Loader
AppExchange
Salesforce Booster
Salesforce Logins