SlideShare a Scribd company logo
1 of 100
Salesforce Interview
Questions Walkthrough
- Shivam
Certified Salesforce Admin
Types of Questions
• Basic Type
• Medium
• Case Study
Other Division:
• Configuration
• Code Based
CONFIGURATION BASED
(Salesforce Facts)
What are Governor Limits in Salesforce?
(what's the need?)
Total number of SOQL queries issued : 100
Total number of records retrieved by SOQL queries : 50,000
Total number of records retrieved by Database.getQueryLocator : 10,000
Total number of DML statements issued : 150
Total number of callouts (HTTP requests or Web services calls) in a transaction : 100
Maximum number of push notification method calls allowed per Apex transaction : 10
Total Number of send email methods allowed : 10
Maximum execution time for each Apex transaction : 10 minutes.
What is a sandbox org? What are the
different types of sandboxes in Salesforce?
Sandbox is a copy of your production organization. You can create multiple copies of your organization in
separate environments for different purposes such as development, testing and training, without
compromising the data and applications in your production organization.
Sandboxes are completely isolated from your Salesforce production organization, so operations you perform in
your sandboxes do not affect your Salesforce production organization, and vice versa.
Generally in each phase of project requires different environments like during construction phase there are
chances to multiple teams will work on development in this case each team requires their own sandboxes for
development. After the construction period we need one common testing environment, during training period
training team requires separate environment for training purpose and before going to production one
STAGING environment required. So for each phase different environments are required.
• Developer - 200 MB - No Production Data
• Developer Pro - 1 GB - No Production Data
• Partial Copy - 5 GB - Sample production data
• Full Copy - Production Size. - Copies Production Data
What is the use of writing sharing rules? Can
you use sharing rules to restrict data access?
Sharing rules are used to extend sharing access to users in public groups, roles, or territories. Sharing rules can
never be stricter than your organization-wide default settings. They simply allow greater access for particular
users.
We can share record with following users :
• individual users
• roles
• roles and subordinates
• other public groups
What kind of access :
• Read – Only
• Read/Write Access
What are the types of Relationship in
Salesforce?
A lookup relationship can be used to link two objects together. It is the most basic type of relationship that
creates a child-parent relationship between two objects. A master-detail relationship can also be used to link
two objects together.
A master-detail relationship creates a tight relationship between the parent and the child. The child record
inherits security of the parent, and if the parent is deleted, all associated child records will also be deleted.
Master-detail relationships created some extra functionality such as roll-up summary fields that allow you to
calculate data on the parent from the children.
A many-to-many relationship (Also referred to as a junction object), allows you to create a relationship
between two objects that need to model a many-to-many relationship. These are created with an object that
has two master-detail relationships to two parent objects.
What’s the difference between Record Types
& Page Layouts?
A page layout is used to define which fields, sections and related lists are displayed to a user, a record type can
extend this by defining different business processes.
What is the difference between a Role and
Profile in Salesforce?
Profile will ultimately control access to which records a user has in a Salesforce org. No user can work on the
Salesforce org without being assigned a profile. The Profile is therefore mandatory for every user. Role however
is not mandatory for every user.
The primary function of the Role/ Role hierarchy is that it allows higher level users in hierarchy get access to
records owned by lower level users in the hierarchy. An example of that is Sales Managers getting access to
records owned by Sales Reps while their peers do not get access to it.
What are the different ways of deployment in
Salesforce?
• Change Sets
• Eclipse with Force.com IDE
• Force.com Migration Tool – ANT/Java based
• Salesforce Package
What is the difference between process
builder and workflow?
Workflow Rule:
– Update a field
– Send an email
– Create a Task
– Send an outbound message (communication with another system)
Process Builder : In addition to above (except outbound message) we can do following things:
– Create a record (not just Tasks!)
– Update related records
– Launch a Quick Action
– Post to Chatter
– Launch a Flow
– Call Apex code
– Submit for approval
– Invoke another process
What is a report?
A report is a list of records that meet the criteria you define. It’s displayed in Salesforce in rows and columns, and can be filtered,
grouped, or displayed in a graphical chart.
What is a dashboard?
A dashboard is a visual display of key metrics and trends for records in your org. The relationship between a dashboard
component and report is 1:1; for each dashboard component, there is a single underlying report.
What is a report type?
A report type is like a template which makes reporting easier. The report type determines which fields and records are available
for use when creating a report.
What are types of reports ?
Tabular report. This is the most basic report. It displays just the row of records in a table like format with grand total. Tabular
reports cannot be used for generating dashboards.
Summary report. This is the most commonly type of report. It allows grouping of rows of data. It supports sorting and displaying
subtotals. For example in a recruiting app, a summary report could be used to display open positions classified by department
name.
Matrix report. This is the most complex report format. Matrix report summarize information in a grid format. Matrix reports
allows records to be grouped by both columns and rows.
Joined Reports. Blocks of related information in a single report. This type of reports enable you to adopt five different blocks to
display different types of related data. Each block can own unique columns, summary fields, formulas, filters and sort order. Use
joined reports to group and show data from multiple report types in different views.
What are the types of custom settings in
Salesforce? What is the advantage of using custom
settings?
There are two types of custom settings in Salesforce:
List Custom Settings are a type of custom settings that provides a reusable set of static data that can be
accessed across your
organization irrespective of user/ profile.
Hierarchy Custom Settings are another type of custom settings that uses built-in
hierarchical logic for “personalizing” settings for specific profiles or users.
What are custom labels in Salesforce? What is
the character limit of custom label?
Custom labels are custom text values that can be accessed from Apex classes or Visualforce pages. The values
here can be translated into
any language supported by Salesforce. Their benefit is that they enable developers to create multilingual
applications which
automatically presents information in a user’s native language.
You can create up to 5,000 custom labels for your organization, and they can be up to 1,000 characters in
length.
What is Salesforce flow?
Flow is a powerful business automation tool that can manipulate data in Salesforce in a variety of ways. Such
application can be created right from the org’s setup with just drag-drop/point-click. The ease of creating flows
makes it the number one go-to tool when it comes to complex business requirements. It is not only easy to
create, but also it does not require any coding.
There are 3 main “building blocks” of the flow, as seen in the screenshot:
1. Elements represent actions that are executed in the flow;
2. Connectors define which path the flow takes;
3. Resources are the values that can be referenced anywhere in the flow.
• Palette :
Palette gives access to a number of elements that can be used to build the logic.
User Interface element Screen
Logic Elements
DML operations
Email Alerts
Quick Actions
• Resources - these are used to collect, store, and pass the data within or outside of the application
• Explorer - The Explorer is simply a library that includes all the resources and elements that are being used in
the flow.
What are the different types of email
templates that can be created in Salesforce?
HTML with letterhead - Only Administrators and users having “Edit HTML Templates” permissions can create
this template based on a letterhead.
Custom HTML - Administrators and users having “Edit HTML Templates” permissions can create this template
without the need of a letterhead
Visualforce - Only administrators and developers can create this template. Advanced functionalities like
merging data from multiple records is available only in this template.
What’s the difference between Dataloader
and Import wizard?
Import Wizard:
For simple imports of up to 50000 records.
It supports all custom objects and only few standard objects like Account, Contact, Leads, Solution.
It supports schedule export.
Delete operation is not available.
It doesn’t require installation.
While importing, duplicates can be ignored.
Data Loader:
For complex imports of any size more than 50000 records.
It supports all standard and custom objects.
It doesn’t support schedule export.
Delete operation is available.
It requires installation.
While importing, duplicates cannot be ignored.
What is territories/territories setting as a
bussiness perspective.
Territory Management is the account sharing system that grants access to accounts based on the
characteristics of the account. It enables company to structure salesforce data users in the same as we
structure our sales territories in the bussiness. Means if our company has private sharing model. We may need
to grant access to the accounts based on the criteria such as Postal code, Industry revenue or a custom field
that is relevant to the bussiness. Territory Management solves these bussiness needs and provides a powerful
solution for structuring users, accounts, and their associated contacts, opportunities and cases.
Your organization must be using customizable forecasting in order to enable territory management. If we have
a proper and balanced distribution of territories. We can manage things way better.
What is forecasting and what are it’s types?
Forecasting in Salesforce enables you to view the best estimate of revenue you are able to generate in a
specified timeframe like the fiscal quarter. According to SFDC this forecasting is accurate and intuitive but this is
not the case every time as you can create and customize forecast in different ways.
Customizable Forecasting : Customizable forecasting is a flexible solution for estimating how much revenue your
organization can generate or how many items your organization can sell. You can set up customizable
forecasting to reflect how your organization forecasts its sales. With it, you can forecast on a monthly or
quarterly basis, use different dates when applying amounts to forecasts, forecast based on revenue or quantity
or both, and define additional quotas based on product families.
Available in: Salesforce Classic
Available in: Professional, Enterprise, Performance, Unlimited, and Developer Editions
For information on implementing customizable forecasting for your organization, see Setting Up customizable
Forecasting.
Collaborative Forecasting : Predict sales revenue and quantities from your opportunity pipeline, and incorporate
product families, opportunity splits, and custom opportunity currency fields if needed. Use Collaborative
Forecasts to manage sales expectations and to predict and plan your company’s sales cycle from pipeline to
closed sales.
Available in: both Salesforce Classic and Lightning Experience.
Available in: Professional (no custom field forecasts), Enterprise, Performance, Unlimited, and Developer
Editions.
Opportunity Splits available in: Performance and Developer Editions and in Enterprise and Unlimited Editions
with the Sales Cloud.
What are different opportunity stages and
their corresponding demand forecasting?
Opportunity Stage Forecast Category
Prospecting - Pipeline
Qualification - Pipeline
Needs Analysis - Pipeline
Value Proposition - Best Case
Id. Decision Makers - Best Case
Perception Analysis - Best Case
Proposal/Price Quota - Commit
Negotiation/Review - Commit
Closed/Won - Closed
Closed/Lost - Omitted
What are Outbound Messages?
Outbound messaging is part of the workflow rule functionality in Salesforce.
Workflow rules watch for specific kinds of field changes and trigger automatic Salesforce actions,
such as sending email alerts, creating task records, or sending an outbound message to external services.
Outbound messages can contain database field values.
If we want to send some fields value to the external system then we use the outbound message.
What is a public group?
- A grouping of :
• Users
• Public Groups
• Roles
• Roles and Subordinates
For example, if a new user is assigned a role that belongs to a existing public group, that user will be
automatically added to the public group.
What is a queue in Salesforce?
Queues help your teams manage leads, cases, service contracts, and custom objects. Once records are placed in a queue manually or
through an automatic case or lead assignment rule, records remain there until they're assigned to a user or taken by one of the queue
members. Any queue member or users above them in the role hierarchy can take ownership of records in a queue. For example:-
Lead queues: Help you manage the distribution of leads. For example, you may have a lead queue for a Western Region team and one
for an Eastern Region team. You can put leads in different queues, either manually or automatically via a lead assignment rule as leads
are imported, created or edited manually, or captured from the Web. Make salespeople members of one or more lead queues.
Case queues: Help you manage your support workload and differentiate cases based on support levels. With queues, you can ensure
that cases are resolved quickly even if a specific user is on vacation.
By creating queues for different support levels, such as Gold Service and Silver Service, cases are automatically prioritized. You can put
cases in different queues, either manually or automatically via a case assignment rule as cases are generated from the Web or created
manually. Make support agents members of case queues.
Knowledge article version queues: Help you manage the distribution of versions of Salesforce Knowledge articles for translation. For
example, if multiple languages are used for your knowledge base, you can assign new versions of articles to a queue of users who can
translate the article into a specific language.
Service contract queues: Help you manage the distribution of service contracts. For example, you may have a dedicated group of
users who review service contracts. When a service contract is created, assign it to a queue so queue members can review the service
contract.
Custom object queues: Help you manage the distribution of custom object records. When a custom object record is created, manually
assign it to a queue so that the users assigned to the queue can access it and take ownership of it.
What are approval processes?
Salesforce approval process is an automated process and your organization can use to approve records
in Salesforce, An approval process is combination of steps for a record to be approved and person has to
approve it each step. A step can apply to all the records to that object or just record that meets the certain
criteria. An approval process also specifies the actions to take when a record is approved, rejected, recalled, or
first submitted for approval.
In approval processes we can :
- select different approvers.
- define the submission action.
- define rejection action.
What is Salesforce chatter?
What is Salesforce chatter? Chatter in salesforce allows you to collaborate the people with each other in your
organization. You can connect with your coworkers and you can share information securely in real time. You can
create groups like Facebook groups such public groups and private groups and you can invite your coworkers to join
those groups by using salesforce chatter. And also you share your comments, add images and you can like others
comments/posts.
Chatter can be used as a company intranet or employee directory. Each employee has a profile page with photo and
work-related information that explains what the employee’s role is within the company, who the employee reports to,
where the employee is located and how to contact the employee. Employees can “follow” both people and
documents to collaborate on sales opportunities, service cases, campaigns, projects and tasks. Like Facebook and
LinkedIn, Chatter allows users to manage their feeds and control how notifications are received.
What is feed tracking?
Feed tracking in Salesforce highlights changes to records by automatically announcing them in the record’s
feed.
You decide which objects and fields you want to track with a simple point-and-click interface. Make your
selections, and voila: changes to tracked fields appear in the record’s feed. One of the most powerful benefits
of feed tracking is the visibility you get when you're on the go and using the Salesforce mobile app. Your mobile
view of feed tracking makes it easy to see what's changing anytime, anywhere.
You can track fields on the user, group, and topics objects, custom and external objects, and the following
standard objects: account, article type, asset, campaign, case, contact, contract, dashboard, event, lead,
opportunity, product, report, solution, task, and work order.
Feed tracking appears as a chatter post.
What is Audit Trail?
The setup audit trail history helps you track the recent setup changes that you and other administrators have
made to your organization. This can be especially useful in organizations with multiple administrators.
The setup Audit Trail history shows you the 20 most recent Setup changes made to your organization. If we
want to see more that 20 recent changes, we can achieve it by downloading the csv file by clicking the
download link at the bottom of the page.
It lists:
• The date and time (with timezone) of the change.
• Who made it (by username).
• What the change was.
What are static resources?
Static resources allow you to upload content that you can reference in a Visualforce page, including
archives (such as .zip and .jar files), images, style sheets, JavaScript, and other files.
Using a static resource is preferable to uploading a file to the Documents tab because:
•You can package a collection of related files into a directory hierarchy and upload that hierarchy as a .zip
or .jar archive.
•You can reference a static resource by name in page markup by using the $Resource global variable
instead of hard coding document IDs.
What is Outlook integration and sync with
Salesforce?
When you integrate Outlook and Salesforce, you help your reps spend less time entering data and switching
between the two applications.
If both Outlook and Salesforce are essential to your daily work routine, you can boost your productivity by
automatically syncing your data between the two systems, create tasks, associate emails from your Outlook to
records in your salesforce org and more.
Integrate email and calendar with Salesforce with a suite of productivity features. Einstein Activity Capture lets
you automatically log emails and events. The Inbox clients lets you increase productivity from your inbox on
every email.
We can do following things on the side bar present in outlook for salesforce.
- create contact in salesforce through outlook
- Attach email to records through outlook
- We can directly create salesforce case from outlook using email to case.
And many other things. For detailed features and how to download it, you can refer to dreamforce video on
youtube.
What is a Connected App?
A connected app integrates an application with Salesforce using APIs. Connected apps use standard SAML and
OAuth protocols to authenticate, provide single sign-on, and provide tokens for use with Salesforce APIs. In addition
to standard OAuth capabilities, connected apps allow Salesforce admins to set various security policies and have
explicit control over who can use the corresponding apps.
What is single sign on?
Single sign-on (SSO) lets users access authorized network resources with one login. You validate usernames and
passwords against your corporate user database or other client app rather than Salesforce managing separate
passwords for each resource.
What is Microsoft Active Directory?
It is a Microsoft Product. Arranges all the Networks's users, Computers and other objects into LOGICAL HIERARCHIAL
groupings. Active directory Information is used to authenticate/ authorize the users, Computers, resources which
are part of network.
SSO Keywords :
Idenitity Provider : Service Provider : Digital signature : Certificate : Keys : Issuer : ID : SAML Insertion : SAML
Enabled
SSO things/Identity Provider things it's like trust based.. i.e. if user can login in Identity provider then he can
also login into salesforce.
When user logs in to Identity provider he get SAML in response and by using that user can log in to other
systems. If we are making our salesforce as identity provider and we want to connect other app as service
provider then we have to register that external app in connected app components.
SAML is the relationship between the Service Provider and Identity Provider(Login related work).
OAuth is the relationship between the Service Provider and Service Consumer(data sharing work).
What is oAuth?
OAuth is an open-standard authorization protocol or framework that describes how unrelated servers and
services can safely allow authenticated access to their assets without actually sharing the initial, related data.
OAuth has following features:
- Avoid stored passwords.
- User-specific
- Revocable
- It's expirable also
oAuth Continued..
It is like transfer of data between two different web services. So if app1 is accessing data from app 2 then app1
should not store credentials of app2 to accesss data because if app1 is compromised app2 will also be
compromised. So instead of credentials we use. OAuth token which allows the transfer/access of specific data.
In OAuth Connected app setting we can revoke the access.
Certificates and Keys(Security Controls)
This is mostly used for the Single Sign on. We use it when we want to make salesforce as an Identity Provider. So
here we generate the certificate and that certificate is used by external website that request is actually coming
from salesforce.
Steps for making app connected to salesforce:
Define the connected app in salesforce org.
In app source file we have to updated the generated auth key.
Test Authentication with virtual device.
What is CORS ?
Cross-Origin Resource Sharing (CORS) enables web browsers to request resources from origins other than their
own (cross-origin). For example, using CORS, JavaScript code at https://www.example.com could request a
resource from https://www.salesforce.com. To access supported Salesforce APIs, Apex REST resources, and
Lightning Out from JavaScript code in a web browser, add the origin serving the code to a Salesforce CORS
whitelist.
If some external system/application or browser is accessing code from our org i.e. salesforce then we have to
register that in CORS.
What is MyDomain Feature of Salesforce?
Add a subdomain to your Salesforce org with the My Domain Salesforce Identity feature. Having a Salesforce
subdomain lets you highlight your brand and makes your org more secure. It’s convenient, and you can
personalize your login page.
What is Salesforce Login Flows?
In salesforce we also have login flows.
Manage your login flows. Use login flows to introduce business processes during login, such as to prompt
for two-factor identification, accept terms of service, or collect information about the user. After users
complete the login flow, they're logged in. This page lists available login flows and the user profile
associated with each.
What are remote site settings in salesforce?
Here is we enter the url we have to enter by clicking the button on salesforce.
How to know whether we are in sandbox or production through url?
We can know the environment by looking at the URL. Sandbox orgs basically contains "CS" as the first two letters
something as https://cs5.salesforce.com/home whereas production org's can have NA/EU/AP etc..
If you want to determine this programmatically through APEX, you may use the getHost() method on the System URL
class.
What is salesforce web to Lead?
Salesforce web to lead is to directly collect capture the leads form your website and loaded into Salesforce.
What are assignment rules in Salesforce?
Assignment rules are used to automate your organization’s lead generation and support processes.
• Lead Assignment Rules – Specify how leads are assigned to users or queues as they are created manually,
captured from the web, or imported via the lead import wizards.
• Case Assignment Rules – Determine how cases are assigned to users or put into queues as they are created
manually, using Web-to-Case, Email-to-Case, On-Demand Email-to-Case, the Self-Service portal,
the Customer Portal, Outlook, or Lotus Notes. There is a entry criteria for the rule assignment and
case/lead can be assigned to user/group.
What is auto response rule?
An auto-response rule is a set of conditions for sending automatic email responses to lead or case submissions
based on the attributes of the submitted record.
Rule entry is made when certain criteria is met. While creating auto response rule we choose the email
template.
What are the Escalation rules?
Escalation rules are used to escalate cases automatically when they meet the criteria which are defined in
rule entry. We create rule entries where criteria is defined to escalate a case.
Whenever an escalation rule is applied for a case, it checks whether the criteria met with the rule entry. If
the case matches with the criteria in the rule entry, then the further escalation action is carried out.
Escalation action defines what should be done when a case matches with the rule entry. We can add up
to five actions for each rule entry to escalate the case over time.
What are junction object ?Is it possible to delete junction – Object in case of Mater – Detail Relationship in
salesforce?
A junction object is a custom object with two master-detail relationships, and it is the key to making a many-to-
many relationship.
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.
If the parent objects don’t have Roll up Summary fields for the child object then we can delete.
To delete a child object it should not be referred in Apex Classes and Apex Triggers.
Later if we undelete the object, Master detail fields on the junction objects will be converted to look up Fields.
Note:
If we delete only Master – Detail Relationship field from the child object and undelete it from the Recycle Bin
then it will be converted to look up relationship.
Parent Object we cannot delete because it will be referred in the child object.
Is it possible to convert Master – Detail Relationship to Look up Relationship?
You can convert a master-detail relationship to a lookup relationship as long as no roll-up summary fields exist
on the master object.
You can convert a lookup relationship to a master-detail relationship, but only if the lookup field in all records
contains a value.
What will happen if we undelete the deleted Junction Object in Salesforce?
When we undelete the deleted Junction Object all the Master Detail Relationship Data type will be changed to
Lookup Relationship DataType.
Is it possible to delete the user in salesforce?
In Salesforce you are never able to delete a user. Instead, you are able to deactivate them.
How many users we can create in salesforce?
In developer org (free org) you can add only two Salesforce license users but if you purchase the Salesforce paid
edition then you can add any number of users in your org but you have to pay per user license in Salesforce.
How many blocks we can create for join reports?
We can create maximum five blocks using join reports.
How many maximum groupings we can do for summary, matrix and join reports?
3 is the maximum for a Summary report, if you use Matrix you can get 4 (2 rows + 2 columns)
What is bucketing in reports?
Bucketing lets you quickly categorize report records without creating a formula or a custom field within
Salesforce. When you create a bucket field, you define multiple categories (buckets) that are used to group
report values. We have created simple step by step instructions on how to create this report.
Example – Assume we have 5 check box fields for a record and we want to display the data where only three
boxes are checked so we create bucket of those three fields and name it. This bucket we use in reports and
dashboards.
What are setup or non setup objects?
Setup objects are
• User, RecordType, Profile, Workflow
Non-Setup objects are
• Contact, Account, Lead
Who sees what setup/How we control access for different things?
or
What are the things in salesforce through which we control user access?
Profile
Permission Set
Field Level Security
OWD
Sharing rules
Access is many layered thing.
First we give the user org access i.e. Login hours and IP Ranges (Security Control > Network Access). We can
also give the IP ranges in Profile level. If user is outside the profile level IP ranges.. User is denied access but if
the user is outside the organization level, access code is sent to the user. Login hours is also profile level.
Specific hours are enforced. It’s like sales rep can login only in bussiness sours. Then we give the object (all
which object one can access) access. This is given through profiles. Existing profile can be cloned. After
that we give the record access. This is given through role hierarchy. We design the rules and assign that
role to users. Then we give the field access. This is given through field level security.
Administrator Controls above.
What are the common steps while setting up a user in salesforce?
Below Permissions we give:
• IP ranges.
• Login hours.
• Object access.
• Record access.
• Field access and all.
Object access and the action performed on that object is decided through profile.
Profiles Determine :
• Which tabs are visible.
• Which apps are visible.
• Object access - CRUD Operations.
• Profile also contain Login hours and IP Ranges settings.
- Standard Profile cannot be edited but they can be cloned.
What are the types of standard profile present in salesforce ?
Standard User – CRUD aces on records they have access to.
Solution Manger – Same as Standard profile but with added permission of ‘manage published solution’.
Marketing User - Same as Standard profile but with added permission of ‘import Leads’.
Contract Manager - Same as Standard profile but with added permission of ‘Manage Contracts’.
Read Only - Only read access on the records they have access to.
System Administrator – View all data and Modify all data. These Permissions overrides all sharing rules and settings
so use caution while using them.
In every Profile there are two types of settings. Assigned apps and system settings.
For example if we go to ‘Inside sales rep’ Profile:
• We will uncheck the create and edit account checkbox. As this is used by marketing team not by sales rep.
• For contact record we will give them all the CRUD access as they are in contact with client so we will give them
account update access.
• We don’t want sales rep to delete opportunity as we want to keep the record of deleted opportunity so we won’t
be giving them delete permission in profile. Sales team need to evaluate their wins and losses.
• We don’t want sales rep to see the document object. So instead of doing tab hidden (data will be still visible in
reports we’ll remove the read access from the profile.)
• Then we assign this profile to one of the sales people.
What is OWD Settings (Organization wide default)
Organization wide defaults determine what access and permission users have to the records they don’t own.
We gave the users access to org, then we decided login hours and IP ranges(Profile), then we gave the object access
and the action they can perform on those object(Profile), Now in OWD we decide the access on the records they can’t
see.
By Default in OWD there is following access for objects:
Lead - Public Read/Write/Transfer
Account, Contract and Asset - Public Read/Write
Contact – Public Read only
Opportunity – Private Only.
Profile determine baseline access user has to all records and then OWD further restricts the user for the records
which they don’t own.
OWD can never grant more access than they have in object through profiles.
Managers run report and analyze the sales pipeline.
Since opportunity access is private, managers can access it through role hierarchy.
Profile vs. OWD
What is Role Hierarchy?
Role Hierarchy allows us to open access up vertically down.
Here we can create a role.
Here we can assign a role to a user.
Here we can shift up and down the roles.
By default user in role can view the records owned by users lying below them and this access can be modified
in the settings below. Role settings are for those who are lying below the hierarchy.
In other words user in a role can view a records lying below them. We can further restrict it by changing the
settings.
Role hierarchy cannot grant more access than they have through the profile. Role Hierarchy can restrict
access but cannot provide more access.
So if we have given edit permission in Role hierarchy but in Profile there is no edit permission then user cannot
edit records. Role cannot give more access than profile.
If profile gives full CRED and OWD, then the role hierarchy settings won’t matter.
Columns Availaible:
- Profile Settings
- OWD Settings
- Option availailbe in OWD settings.
Your org-wide default sharing settings give you a (relatively restrictive) baseline level of access for each object.
If you have org-wide sharing defaults of Public Read Only or Private, you can open access back up for some
users with sharing rules. This enables you to make automatic exceptions to your org-wide sharing settings for
selected sets of users.
We can also share the record through manual sharing.
Takeaway Points:
• Give user access to Org (Login hours & IP ranges) > then decide what objects and tabs user can access and
actions user can perform through profile > In OWD we decide what all records one can access on the
accessible objects > In role hierarchy we decide what all user can do with records owned by the use below
them.
• We cannot give more access than given in the profile.
• Through permission sets we give extra access.
If any record is visible to the user (his or others records base on access settings) then through FLS we decide on
those records what all fields he can view.
Points Extended :
We do manual sharing through by checking ‘Portal user visibility’ and ‘Community user Visibility’ checkbox in
user visibility Settings checkbox. Using Permission set we can give user additional access like importing lead..
Switch to lightening experience.. and more.. When we want to give additional access to user but don’t want to
give access to everyone in the profile.
we can give additional access without changing profile through permission sets.
In org we have some permission sets and we can give those permission set to user whenever needed.
What is Record types Control:
• Bussiness Process.
• Page Layouts.
• Picklist Values.
Controls the lifecycle of opportunities, solution, cases and leads.
So the complete control/access setup is:
• Profile/Permission Set
• OWD/Sharing Rules/Manual Sharing
• Role & hierarchy setting.
• FLS
• Record Types (Before creating record type we should know which bussiness process and which page layut
we have to use and also we assign that record type to profile).
Salesforce should be smooth setup for the end users but it is not that smooth for the developers.
Salesforce Coding Related Questions
What is batch apex in salesforce?
Batch Apex allows you to define a single job that can be broken up into manageable chunks, whereas every chunk
can be processed separately. In the Batch Apex it will fetch all the records on which you want to perform the field
update and divide them into list of 200 records and on every 200 records operation is performed separately. This
would help us to execute on more than 10,000 records as, it won’t perform an operation on all the records in a
single transaction instead it dividing them into Number of subtasks where each subtask many contain the records
upto 4000. Maximum records batch can take at a time is 2000 records.
What is apex transaction?
An Apex transaction represents a set of operations that are executed as a single unit.
What are Triggers and it’s types?
Apex triggers enable you to perform custom actions before or after events to records in Salesforce, such as
insertions, updates, or deletions. Just like database systems support triggers, Apex provides trigger support
for managing records. Typically, you use triggers to perform operations based on specific conditions, to
modify related records or restrict certain operations from happening. You can use triggers to do anything you
can do in Apex, including executing SOQL and DML or calling custom Apex methods. Use triggers to perform
tasks that can’t be done by using the point-and-click tools in the Salesforce user interface. For example, if
validating a field value or updating a field on a record, use validation rules and workflow rules instead.
What is wrapper class?
Put all the variables in the class then create it’s object and stored them in a list. Actually wrapper class wraps
different different object variable into single object.
A wrapper or container class is a class, data structure, or an abstract data type whose instances are a
collections of other objects. It is a custom object defined by Salesforce developer where he defines the
properties of the wrapper class. Within Apex & Visualforce this can be extremely helpful to achieve many
business scenarios within the Salesforce CRM software.
What is page reference? What are it’s method?
A PageReference is a reference to an instantiation of a page reference. Among other attributes, PageReferences
consist of a URL and a set of query parameter names and values like custom parameters or standard
parameters for PageReference created.
The table below describes the instance methods for PageReference.
•getAnchor()
Returns the name of the anchor referenced in the page’s URL. That is, the part of the URL after the hashtag (#).
•getContent()
Returns the output of the page, as displayed to a user in a Web browser.
•getContentAsPDF()
Returns the page as a PDF, regardless of the <apex:page> component's renderAs attribute.
•getCookies()
Returns a map of cookie names and cookie objects, where the key is a String of the cookie name and the value contains the list of cookie
objects with that name.
•getHeaders()
Returns a map of the request headers, where the key string contains the name of the header, and the value string contains the value
of the header.
•getParameters()
Returns a map of the query string parameters that are included in the page URL. The key string contains the name of the parameter, while
the value string contains the value of the parameter.
•getRedirect()
Returns the current value of the PageReference object's redirect attribute.
•getUrl()
Returns the relative URL associated with the PageReference when it was originally defined, including any query string parameters
and anchors.
•setAnchor(String)
Sets the URL’s anchor reference to the specified string.
•setCookies(Cookie[])
Creates a list of cookie objects. Used in conjunction with the Cookie class.
•setRedirect(Boolean)
Sets the value of the PageReference object's redirect attribute. If set to true, a redirect is performed through a client side redirect.
What are future methods?
A future method runs in the background, asynchronously. You can call a future method for executing long-
running operations, such as callouts to external Web services or any operation you’d like to run in its own
thread, on its own time. You can also make use of future methods to isolate DML operations on different
sObject types to prevent the mixed DML error. Each future method is queued and executes when system
resources become available. That way, the execution of your code doesn’t have to wait for the completion of a
long-running operation. A benefit of using future methods is that some governor limits are higher, such as
SOQL query limits and heap size limits.
Can we call future methods in batch?
No we can’t call future methods inside a batch.
Can we call future methods in Triggers?
• While developing applications in force.com, sometimes we need to consume external web service in apex
trigger. But, callouts cannot be made from apex triggers as that restricts database transaction until the
callout is completed and the time limit for this is up to 120 seconds.
• The only way to execute a callout from a trigger is to run it asynchronously and this can be achieved by
executing a method with the @future method. Future methods execute asynchronously i.e. one does not
need to wait for a response. The thing to keep in mind is, a future method can have native calls, as well as,
they can make a call out to an external web service and hence, in order to enable the future method to
allow callouts, an extra parameter “Callout=true” needs to be passed.
For example: –
• You have a requirement to call a web service after updating the contact record. Web service callout method
(in this example callWebService(Contact cnt) ) is in the Util class which is getting consumed in apex after
update trigger.
In the previous example if we don’t use (callout = true) and don’t use future annotation then we’ll get below
error:
When the above trigger is fired it will throw an error as “Callout from triggers are currently not supported.”
Can we call rest services inside batch?
To execute callouts in batch apex, the class will also need to implement the Database.AllowsCallouts interface.
• By default, Salesforce will process 200 records at a time. So, if you have 10,000 records, this translates to 50
batches.
• Up to 100 Holding batch jobs can be held in the Apex flex queue.
• Each batch is a discrete transaction.
• You can override the 200 records per batch limit, using optional scope parameter of the
Database.executeBatch
• A single batch can process 50 million records: provided you use the QueryLocator (and not the Iterator)
• The start, execute, and finish methods can implement up to 10 callouts each.
• You can only have 5 queued or active batch jobs at one time.
• It is not easy to debug and troubleshoot any errors.
Explain force.com platform?
Force.com is a Platform as a Service (PaaS) product designed to simplify the development and deployment of
cloud-based applications and websites. Developers can create apps and websites through the cloud
IDE (integrated development environment) and deploy them quickly to Force.com’s multi-tenant servers.
What’s the difference between force.com and salesforce.com?
First of all, Salesforce.com is built on the Force.com platform - they are more or less interchangeable from a
technical standpoint. It's a mere matter of marketing semantics. Force.com applies to the infrastructure and
codebase that is the foundation for the entire Salesforce solution. They are enforcing the Force.com concept
more so because Salesforce can do so much more than CRM nowadays.
How to run trigger in asynchronously?
No we cannot write asynchronous triggers. But you can generate asynchronous requests from a trigger.
How many controllers can be used in a visual force page?
We can have a standard object controller and multiple controller extensions. I don't think there is any upper
limit on the same.
What are salesforce controller methods (action/getter/setter)?
wqkjdh
Example of Getter/Setter
What are collections? What are it’s type?
Collections in Apex can be lists, sets, or maps
• Lists
A list is an ordered collection of elements that are distinguished by their indices. List elements can
be of any data type—primitive types, collections, sObjects, user-defined types, and built-in Apex
types.
• Sets
A set is an unordered collection of elements that do not contain any duplicates. Set elements can
be of any data type—primitive types, collections, sObjects, user-defined types, and built-in Apex
types.
• Maps
A map is a collection of key-value pairs where each unique key maps to a single value. Keys and
values can be any data type—primitive types, collections, sObjects, user-defined types, and built-
in Apex types.
• Parameterized Typing
Apex, in general, is a statically-typed programming language, which means users must specify the
data type for a variable before that variable can be used.
What is database.stateful?
The only time you need Database.Stateful is when the execute method modifies a class variable in a way meant
to be used across multiple execute methods or in the finish method. The majority of batches you will ever write
will not need Database.Stateful. It's important to know that using Database.Stateful will harm your batch's
performance, because the class will be serialized at the end of each execute method to update its internal state.
This extra serialization results in longer execution time.
How many ways we can call the Apex class?
• From another class
• From Trigger
• From Visualforce page
• From Developer console
• Form JavaScript button, Links
• From Home page components
What is the difference between pageblock table and datatable ?
PageBlockTable:
• PageBlockTable should be define inside pageblock or pageblocksection.
• PageBlockTable uses standard styles sheets to design a visualpage.
• It has the required attribute "value".
• Column headers will be displayed automatically.
DataTable:
• No need to write inside pageblock or pageblocksection.
• There is no required value.
• The data can be displayed using custom style sheets.
• we need to specify column headers explicitly.
What are The Types of Apex Triggers in Salesforce?
Before Triggers
After Triggers
What is Visualforce Component?
Visualforce components are small, reusable pieces of functionality—think widgets, panels, user interface
elements, that kind of thing—that you use in Visualforce page markup. You can use standard Visualforce
components, and create your own custom components.
Salesforce provides a library of standard, pre-built components, such as <apex:relatedList> and
<apex:dataTable> that can be used to develop Visualforce pages. In addition, you can build your own custom
components to augment this library.
What is difference between trigger and workflow?
Workflow is point and click which doesn't need any coding. When you want to take action (email, task, field
update or outbound message) for the same object or from Child to parent object, you can use Workflow rules.
Trigger: It's a programmatic approach and event driven (insert, update, merge, delete). You can call it as
advance version of Workflow. Trigger works across all the objects. You can create a new record through trigger
which is not possible through workflow.
Mention What Is The Difference Between Isnull And Isblank?
isNull: It supports for number field
isBlank: It supports for Text field
How can you embed a Visualflow in a Visualforce page?
What is the difference between action function and action support function?
• apex:ActionFunction : This component helps to envoke AJAX request (Call Controllers method) directly from Javascript method. It
must be child of apex:form.
<apex:actionFunction name=”sendEmail” action=”{!sendEmailFunction}”>
• </apex:actionFunction>
• apex:ActionSupport : This component adds Ajax request to any other Visualforce component. Example : Commandlink button has
inbuilt AJAX functionality however few components like OutputPanel does not have inbuilt AJAX capabilities. So with the help of
this component, we can enable AJAX.
• <apex:outputpanel id=”counter”>
<apex:outputText value=”Click Me!: {!count}”/>
<apex:actionSupport event=”onclick” action=”{!incrementCounter}” rerender=”counter” status=”counterStatus”/>
</apex:outputpanel>
• apex:ActionPoller : This is timer component which can send AJAX request on pre-defined interval. Minimum interval is 5 sec and
default is 60 sec.
<apex:actionPoller action=”{!incrementCounter}” rerender=”counter” status=”counterStatus” interval=”50″ />
•
• Similarities:
• Both action support and function can be used to call a controller method using an AJAX request.
• Differences:
1. Action function can call the controller method from java script.
2. Action support adds AJAX support to another visualforce component and then call the controller method.
for example:
<apex:outputpanel id=”outptpnl”>
<apex:outputText value=”click here”/>
<apex:actionSupport event=”onclick” action=”{!controllerMethodName}” rerender=”pgblck” />
</apex:outputpanel>
Here action support adds AJAX to output panel, so once you click on output panel controller method will be called.
• 3. Action function cannot add AJAX support to another component. But from a particular component which has AJAX
support(onclick, onblur etc) action function can be called to call the controller method.
What is the difference between the standard controller and custom controller ?
Standard Controllers
Contains the same functionality and logic that are used for standardSalesforce pages. Can be used with
standard objects and custom objects.
A custom controller is the user defined an Apex class that implements all of the logic for a page without
leveraging a standard controller. Whenever the visualforce pages need to run entirely in system mode and it
does not enforce the permissions and field-level security of the current user the custom controller works. You
can have controller extension to each controller in visualforce.
A controller extension is moreover an Apex class that extends the functionality of a standard or custom
controller. The controller extensions can be used in following scenarios:
• You want to leverage the built-in functionality of a standard controller but want to override one or more of
them for custom specification such as edit, view, save, or delete.
• You can add new actions.
• Visualforce page which respects user permissions.
• The controller extension class executes in system mode, but if it extends a standard controller, then the logic
from the standard controller does not execute in system mode. Instead, it executes in user mode, applying
the sharing rules, field level security, permissions of current user.
What are the three types of bindings used in Visualforce? What does each refer to?
There are three types of bindings used in Salesforce:-
Data bindings, which refer to the data set in the controller
Action bindings, which refer to action methods in the controller
Component bindings, which refer to other Visualforce components
How can we implement pagination in Visualforce?
To control the number of records displayed on each page, we use pagination. By default, a list controller
returns 20 records on the page. To customize it, we can use a controller extension to set the pageSize.
Which fields are automatically Indexed in Salesforce?
Primary keys (Id, Name and Owner fields).
Foreign keys (lookup or master-detail relationship fields).
Audit dates (such as SystemModStamp).
Custom fields marked as an External ID or a unique field.
How we bulkify the record?
Instead of updating the record one by one..
we update it by bulkifying the record i.e first we add the record to the list
and then we update the list one by one.
Bulkifying SOQL queries:
Putting SOQL queries outside loop.
What are salesforce coding standards?
Best Practice #1: Bulkify your Code
Best Practice #2: Avoid SOQL Queries or DML statements inside FOR Loops.
Best Practice #3: Bulkify your Helper Methods
Best Practice #4: Using Collections, Streamlining Queries, and Efficient For Loops
Best Practice #5: Streamlining Multiple Triggers on the Same Object
Best Practice #6: Querying Large Data Sets.
Best Practice #7: Use of the Limits Apex Methods to Avoid Hitting Governor Limits
Best Practice #8: Use @future Appropriately
Best Practice #9: Writing Test Methods to Verify Large Datasets
Best Practices #10: Avoid Hardcoding IDs
What is difference between Visualforce Components and Lightning Components ?
Visualforce Component was designed to follow a Page-Centric model. This means that the intent of Visualforce
was to create something that was your full page interface with Salesforce. When the user needed to perform
some kind of operation, like Save a record, it would send that request to the Salesforce servers and then reload
the entire page with the new state of the UI. All backend processing is done with Apex Code on the Server-
Side.
Lightning Components was designed to follow an App-Centric model. This essentially means that it has been
designed to create self-contained components that build on top of each other. To put this in perspective, with
Visualforce you would send an interaction to the Salesforce server and then update the entire page. However,
with Lightning, you can send an interaction to the Salesforce servers and then update a specific component.
What is App in Sales force?
An app is a collection of items that work together to serve a particular function. Salesforce apps come in two
flavors: Classic apps and Lightning apps. Classic apps are created and managed in Salesforce Classic. Lightning
apps are created and managed in Lightning Experience. You can customize both types of app to match the way
your users work.
How to setup debug levels for connection user?
TracedEntityId: The User ID for the user you want to debug, you can obtain this by querying the record
that was created or updated by this user.
ExpirationDate: indicates the end date/time for this debug.
LogType: This option is used to select an existing debug level.
DebugLevelId: When the LogType is specified, you must specify a debug level id*
*You can obtain the DebugLevelID value by issuing the query below in the developer console or in
workbench.
SELECT Id, DeveloperName FROM DebugLevel
*Please make sure to check the box for 'Tooling API' to be able to run this query in Developer console.
What is the difference between public class and global class?
How we send email through code?
Code for sending email through code:
What is difference between 18 digit Id and 15 digit Id?
One thing to note is that Salesforce IDs are case sensitive when they are 15 digit and insensitive when they are
18 digit.
What is MVC?
What is utility class and what is helper class?
• Helper class, is a class that can be instantiate and do some business work
• Utils class, is a static class that perform small and repetitive operations on a kind of instance (example of
utils classes ArrayUtils or IOUtils from Apache)
Can you edit an apex trigger/ apex class in production environment? Can you edit a Visualforce page in
production environment?
No, it is not possible to edit apex classes and triggers directly in production environment. It needs to be done
first in Developer edition or testing org or in Sandbox org. Then, to deploy it in production, a user with Author
Apex permission must deploy the triggers and classes using deployment tools. However, Visualforce pages can
be created and edited in both sandbox and in production. Only if the page has to do something unique
(different values), it would have to be developed via Sandbox.
What is an external ID in Salesforce? Which all field data types can be used as external IDs?
An external ID is a custom field which can be used as a unique identifier in a record. External IDs are mainly
used while importing records/ data. When importing records, one among the many fields in those records
need to be marked as an external ID (unique identifier).
What is Multitenant Architecture?
An application model in which all users and apps share a single, Common infrastructure and code base.
What is static dashboard?
Static dashboards are the basic dashboard with fixed view (Single user perspective) and which is visible to
any user who has made a report out of his data.
What is meant by Cascade delete?
In master detail relationship when parent object is deleted then all its child objects get automatically
deleted. This concept is known as cascade delete.
How many email can be send per method?
Total 10 email can be send per method.
Can dynamic dashboards be scheduled?
Dynamic dashboard always show data integrated with real time so we can not scheduled dynamic dashboard.
`
Process of setting up SSO, Idenitity Provider, Service Provider, Digital signature, Certificate, Keys, Issuer, ID
SAML Insertion, SAML Enabled
When user logs in to Identity provider he get SAML in response and by using that user can log in to other systems. If
we are making our salesforce as identity provider and we want to connect other app as service provider t
SSO things/Identity Provider things it's like trust based.. i.e. if user can login in Identity provider then he can also login
into salesforce. here we have to register that external app in connected app components.
Certificates and Keys
Salesforce certificates and key pairs are used for signatures that verify a request is coming from your organization.
They are used for authenticated SSL communications with an external web site, or when using your organization as an
Identity Provider. You only need to generate a Salesforce certificate and key pair if you're working with an external
website that wants verification that a request is coming from a Salesforce organization.
What is SAML used for?
SAML is used to share security credentials across one or more networked systems. The SAML framework is specifically
designed to accomplish two things: authentication and authorization.
We give our username and password to identity provider and that identity provider generated SAML then SAML is
sent to salesforce and then
salesforce validated that SAML and user session is generated.
Process of connecting app
A connected app integrates an application with Salesforce using APIs. Connected apps use standard SAML and
OAuth protocols to authenticate, provide single sign-on, and provide tokens for use with Salesforce APIs. In
addition to standard OAuth capabilities, connected apps allow Salesforce admins to set various security policies
and have explicit control over who can use the corresponding apps.
For example if we want to access the salesforce data through mobile app. That we achieve through connected
app settings. Here we have enter the app name, callback url, enable oAuth(Choose Access). After saving we’ll
get the consumer key and consumer secret. So through that consumer key and consumer secret external app
can access salesforce.
Process Of Making google as external
authentication provider
Before doing the below things we have to set up the custom domain for our org using Mydomain org and also enable
google there.
We’ll go to google dashboard and from there we’ll create the oAuth Api credentials which will return us app id and
app secret.
app id and app secret we have to use while registering google oauth provider in salesforce.
After saving the details salesforce will create the callback url which we have enter in earlier created google
credentials.
Registration class is automatically created while creating Oauth provider in salesforce. We can customize it as per our
Need.
So when we try to login it creates a completely new user.
For more you can check out this video: https://www.youtube.com/watch?v=lsMsu_zPqEA
Process of External Services accessing Salesforce
Use CORS to Access Salesforce Resources from Web Browsers
Cross-Origin Resource Sharing (CORS) enables web browsers to request resources from origins other than their
own (cross-origin).
For example, using CORS, JavaScript code at https://www.example.com could request a resource from
https://www.salesforce.com.
To access supported Salesforce APIs, Apex REST resources, and Lightning Out from JavaScript code in a web
browser, add the origin serving the code to a Salesforce CORS whitelist.
If some external system/application or browser is accessing code from our org i.e. salesforce then we have to
register that in CORS.
What are delegated groups
It is the collection of delegated administrators who can work on defined user, profiles, permission set, se and objects.
Enable delegated administrators to manage users in specified roles and all subordinate roles. You can assign specified
profiles to those users, and log in as users who have granted login access to administrators. A delegated
administration group is a group of users who have the same admin privileges. These groups are not related to public
group.
1. Click Setup | Administration Setup | Security Controls | Delegated Administration.
2. Create the DA group. Under Manage Delegated Groups click New next to 'Delegated Group.'
3. Specify who your Delegated Administrators (DA) will be. In the Delegated Administrators section click Add and
select the Salesforce User.
4. In the 'User Administrator' section click Add to specify the roles and subordinates for which Delegated
Administrators (DA) of this group can create and edit Users. Note: they can only create and edit Users in the roles
specified in this step. They can not modify the role hierarchy.
5. In the 'Assignable Profiles' section click Add to determine which profiles the Delegated Administrators (DA) can
assign to Users. Note: you cannot choose profiles with the permissions 'Modify All Data' because Delegated
Administrators (DA) cannot change the profile of 'Modify All Data' Users in their delegated roles.
6. You can choose to allow delegated administrators to serve as administrators for certain custom objects and their
associated tabs. In the 'Custom Object Administration' section click Add to add the custom object. Note: Custom
object relationships cannot be created or edited by the Delegated Administrator (DA)groups used for sharing.
Setting up Oauth
OAuth has following features:
- Avoid stored passwords.
- User-specific
- Revocable
- It's expirable also
It is like transfer of data between two different web services. So if app1 is accessing data from app 2 then app1 should not store
credentials of app2 to accesss data because if app1 is compromised app2 will also be compromised. So instead of credentials we use
OAuth token which allows the transfer/access of specific data.
whenever we login into salesforce we get the session from salesforce which is active for sometime.
Whenever we login into salesforce from our mobile for the first time then we first get the Oauth token.. that token is stored in
data store and by using that token we access the salesforce data in future.
In OAuth process when we register the mobile app in salesforce, salesforce returns the consumer key to identify that device in future.
Define the connected app in salesforce org.
In app source file we have to updated the generated auth key.
Test Authentication with virtual device.
When user registers that external app in salesforce then he gives the permission what all users can access in salesforce through that
app.
What is the difference between tab hidden and default off?
When you set up the tab visibility to default on, it would appear on the top bar along with the other tabs, while
if you set this to default off, user will be still have access to the tab but he / she will have to click on the +
symbol at the end of all tabs and then access it. If you make the tab hidden, then it will neither be visible at the
top bar, and nor by clicking on the + button. However there is a feature available to every user to customize the
list of tabs which has to appear once they login as per their preferences.
What are apex flex queues?
Normally, a Batch Job which has not started yet will assume the status of Queued. The batch which is
currently being processed will be in the InProgress status. Batch jobs usually have the limit of five queued
or active jobs simultaneously. With Flex Queues, any jobs that are submitted for execution but are not
processed immediately by the system go in holding status and are placed in a separate queue (the Apex
flex queue). Up to 100 batch jobs can be in the holding status. When system resources become available,
the system picks up jobs from the Apex flex queue and moves them to the batch job queue. The status of
these moved jobs changes from Holding to Queued. Queued jobs get executed when the system is ready
to process new jobs and they will then go to InProgress status.
What is queable class?
What is forecasting and what are the related terms involved?
We can do the forecasting in one of the following:
1. Opportunity.
2. Product Family.
3. Opportunity
Forecast Period: We can do monthly or quarterly forecast.
We have four roll up fields from the opportunity:
1. Quota
2. Closed
3. Commits
4. Best Case
5. Pipeline
We can se the value in both quantity and revenue wise.
Managers will be doing forecast adjusting.
Forecast managers with the "Override Forecast" permission set can adjust the forecast of direct subordinate.
Opportunity stage - Forecast Category
 Prospecting – Pipeline
 Qualification - Pipeline
 Needs Analysis - Pipeline
 Value Proposition - Best Case
 Id. Decision Makers - Best Case
 Perception Analysis - Best Case
 Proposal/Price Quota - Commit
 Negotiation/Review - Commit
 Closed/Won - Closed
 Closed/Lost – Omitted
What is Remote Site Setting(Security Controls)?
Here we register the URL's we want to access which are outside our salesforce organisation.
What are packages and what are it’s types?
A package is a collection of components. It can be collection of components or the related apps.
There are two types of Packages:
• Managed Packages
• Unmanaged Packages
Unmanaged components are mostly used for open resource things. It is editable by both developer and
subscriber. But managed packages are editable only by developer. They have non - upgradable components
Managed Packages have both upgradable and non-upgradable components.
What are Bussiness Processes?
What are different trigger variables?
new - Returns a list of the new versions of the sObject records.
This sObject list is only available in insert, update, and undelete triggers, and the records can only be modified
in before triggers.
newMap - A map of IDs to the new versions of the sObject records.
This map is only available in before update, after insert, after update, and after undelete triggers.
old - Returns a list of the old versions of the sObject records.
This sObject list is only available in update and delete triggers.
oldMap - A map of IDs to the old versions of the sObject records.
This map is only available in update and delete triggers.
size - The total number of records in a trigger invocation, both old and new.
What is analytic snapshot?
Think of it like you're taking a photograph of a Report every time you run a Report, let's call them "Report
snapshots". Over time as you accumulate these snapshots in your scrapbook, you can run a Report on the
snapshots and compare from week to week, month to month, year to year, and look for trends.
Salesforce Help defines Analytic Snapshots as “allowing you to load data from a Custom Report to a Custom
Object on a regularly scheduled basis.” This in turn allows you to create Reports and Dashboards based on the
data in the Custom Object.
Analytic Snapshots are comprised of three things:
• A source Report of type Tabular or Summary
• A Custom Object with fields matching the columns in the source Report
• An Analytic Snapshot definition, which maps fields and schedules the snapshot runs
What is Vlookup?
VLOOKUP FUNCTION
=VLOOKUP(A2,address of other file column, column no. of the other excel from where i have to get the value
,FALSE)
FALSE - it stands for exact match.
also while doing the VLOOKUP on two different excel files, both the files should in same workbook.
address of other file column - [excel file name, column] - this comes automatically when we select the
columns. - it is dataset on the second sheet.
This above formulae we use in the cell of the column where we have to fill the value.
A2(Ath column and second row) - Column value of the same excel of which we have to find the value from
other excel.
Define Recursive Trigger and how to avoid it?
There is a possibility that the result of the trigger can end up calling the same trigger again and can run in a
loop, this is known as a recursive trigger. To avoid this scenario we should create a static variable and check the
value of this variable before we execute anything in the trigger.
Pen and Paper questions.. Which you need to practice before interview
Trigger to insert record.

More Related Content

What's hot

Lightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An IntroductionLightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An IntroductionSalesforce Developers
 
Introduction to lightning components
Introduction to lightning componentsIntroduction to lightning components
Introduction to lightning componentsMohith Shrivastava
 
Lightning web components - Introduction, component Lifecycle, Events, decorat...
Lightning web components - Introduction, component Lifecycle, Events, decorat...Lightning web components - Introduction, component Lifecycle, Events, decorat...
Lightning web components - Introduction, component Lifecycle, Events, decorat...Nidhi Sharma
 
Salesforce Development Best Practices
Salesforce Development Best PracticesSalesforce Development Best Practices
Salesforce Development Best PracticesVivek Chawla
 
Security and Your Salesforce Org
Security and Your Salesforce OrgSecurity and Your Salesforce Org
Security and Your Salesforce OrgSalesforce Admins
 
CNX16 - Connecting the Cloud: Marketing Cloud Connect
CNX16 - Connecting the Cloud: Marketing Cloud ConnectCNX16 - Connecting the Cloud: Marketing Cloud Connect
CNX16 - Connecting the Cloud: Marketing Cloud ConnectCloud_Services
 
Salesforce Interview Questions And Answers | Salesforce Tutorial | Salesforce...
Salesforce Interview Questions And Answers | Salesforce Tutorial | Salesforce...Salesforce Interview Questions And Answers | Salesforce Tutorial | Salesforce...
Salesforce Interview Questions And Answers | Salesforce Tutorial | Salesforce...Edureka!
 
Managing Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox ArchitectureManaging Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox ArchitectureAlexander Sutherland
 
Lwc presentation
Lwc presentationLwc presentation
Lwc presentationNithesh N
 
Salesforce Steelbrick CPQ Overview
Salesforce Steelbrick CPQ OverviewSalesforce Steelbrick CPQ Overview
Salesforce Steelbrick CPQ OverviewHarshala Shewale ☁
 
Intro to Salesforce Lightning Web Components (LWC)
Intro to Salesforce Lightning Web Components (LWC)Intro to Salesforce Lightning Web Components (LWC)
Intro to Salesforce Lightning Web Components (LWC)Roy Gilad
 
DevOps Center_ArchitectGroup
DevOps Center_ArchitectGroup DevOps Center_ArchitectGroup
DevOps Center_ArchitectGroup AmeyKulkarni84
 

What's hot (20)

Deep Dive into Apex Triggers
Deep Dive into Apex TriggersDeep Dive into Apex Triggers
Deep Dive into Apex Triggers
 
Lightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An IntroductionLightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An Introduction
 
Introduction to lightning components
Introduction to lightning componentsIntroduction to lightning components
Introduction to lightning components
 
Lightning web components - Introduction, component Lifecycle, Events, decorat...
Lightning web components - Introduction, component Lifecycle, Events, decorat...Lightning web components - Introduction, component Lifecycle, Events, decorat...
Lightning web components - Introduction, component Lifecycle, Events, decorat...
 
Salesforce Development Best Practices
Salesforce Development Best PracticesSalesforce Development Best Practices
Salesforce Development Best Practices
 
Security and Your Salesforce Org
Security and Your Salesforce OrgSecurity and Your Salesforce Org
Security and Your Salesforce Org
 
Introduction to Apex Triggers
Introduction to Apex TriggersIntroduction to Apex Triggers
Introduction to Apex Triggers
 
CNX16 - Connecting the Cloud: Marketing Cloud Connect
CNX16 - Connecting the Cloud: Marketing Cloud ConnectCNX16 - Connecting the Cloud: Marketing Cloud Connect
CNX16 - Connecting the Cloud: Marketing Cloud Connect
 
Salesforce Interview Questions And Answers | Salesforce Tutorial | Salesforce...
Salesforce Interview Questions And Answers | Salesforce Tutorial | Salesforce...Salesforce Interview Questions And Answers | Salesforce Tutorial | Salesforce...
Salesforce Interview Questions And Answers | Salesforce Tutorial | Salesforce...
 
Managing Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox ArchitectureManaging Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox Architecture
 
Lwc presentation
Lwc presentationLwc presentation
Lwc presentation
 
Introduction to Apex for Developers
Introduction to Apex for DevelopersIntroduction to Apex for Developers
Introduction to Apex for Developers
 
Development Best Practices
Development Best PracticesDevelopment Best Practices
Development Best Practices
 
AWS Black Belt Techシリーズ AWS IAM
AWS Black Belt Techシリーズ AWS IAMAWS Black Belt Techシリーズ AWS IAM
AWS Black Belt Techシリーズ AWS IAM
 
Salesforce Steelbrick CPQ Overview
Salesforce Steelbrick CPQ OverviewSalesforce Steelbrick CPQ Overview
Salesforce Steelbrick CPQ Overview
 
Dependency Injection with Apex
Dependency Injection with ApexDependency Injection with Apex
Dependency Injection with Apex
 
Intro to Salesforce Lightning Web Components (LWC)
Intro to Salesforce Lightning Web Components (LWC)Intro to Salesforce Lightning Web Components (LWC)
Intro to Salesforce Lightning Web Components (LWC)
 
Lightning Web Component - LWC
Lightning Web Component - LWCLightning Web Component - LWC
Lightning Web Component - LWC
 
Introduction to AWS X-Ray
Introduction to AWS X-RayIntroduction to AWS X-Ray
Introduction to AWS X-Ray
 
DevOps Center_ArchitectGroup
DevOps Center_ArchitectGroup DevOps Center_ArchitectGroup
DevOps Center_ArchitectGroup
 

Similar to Salesforce interview questions walkthrough

Top10 Salesforce.com Admin Tools
Top10 Salesforce.com Admin ToolsTop10 Salesforce.com Admin Tools
Top10 Salesforce.com Admin Toolsdebm_madronasg
 
Salesforce Presentation
Salesforce PresentationSalesforce Presentation
Salesforce PresentationChetna Purohit
 
Dev day paris020415
Dev day paris020415Dev day paris020415
Dev day paris020415pdufourSFDC
 
Salesforce developer fa qs
Salesforce developer fa qsSalesforce developer fa qs
Salesforce developer fa qsRakesh Joshi
 
Salesforce developer fa qs
Salesforce developer fa qsSalesforce developer fa qs
Salesforce developer fa qsRakesh Joshi
 
Salesforce for marketing
Salesforce for marketingSalesforce for marketing
Salesforce for marketingBohdan Dovhań
 
Library management system project
Library management system projectLibrary management system project
Library management system projectAJAY KUMAR
 
Customizing Ranking Models for Enterprise Search: Presented by Ammar Haris & ...
Customizing Ranking Models for Enterprise Search: Presented by Ammar Haris & ...Customizing Ranking Models for Enterprise Search: Presented by Ammar Haris & ...
Customizing Ranking Models for Enterprise Search: Presented by Ammar Haris & ...Lucidworks
 
Analytics: CRM On Demand vs SFDC
Analytics: CRM On Demand vs SFDCAnalytics: CRM On Demand vs SFDC
Analytics: CRM On Demand vs SFDClnbeck
 
Orcl Crmod Vs Sfdc Reporting And Analytics
Orcl Crmod Vs Sfdc Reporting And AnalyticsOrcl Crmod Vs Sfdc Reporting And Analytics
Orcl Crmod Vs Sfdc Reporting And AnalyticsShane_Boyd
 
Comprehensive oracle interview qs
Comprehensive oracle interview qsComprehensive oracle interview qs
Comprehensive oracle interview qsvipul_wankar
 
2020 07-08 fireside chat sharing architecture
2020 07-08 fireside chat sharing architecture2020 07-08 fireside chat sharing architecture
2020 07-08 fireside chat sharing architectureJihun Jung
 
#ImpactSalesforceSaturday:360 degree view of salesforce integrations
#ImpactSalesforceSaturday:360 degree view of salesforce integrations#ImpactSalesforceSaturday:360 degree view of salesforce integrations
#ImpactSalesforceSaturday:360 degree view of salesforce integrationsNew Delhi Salesforce Developer Group
 
Evolutionary Design Solid
Evolutionary Design SolidEvolutionary Design Solid
Evolutionary Design SolidSai Venkat
 
Top 20 Salesforce Admin Interview Questions and Answers in 2023.pdf
Top 20 Salesforce Admin Interview Questions and Answers in 2023.pdfTop 20 Salesforce Admin Interview Questions and Answers in 2023.pdf
Top 20 Salesforce Admin Interview Questions and Answers in 2023.pdfAnanthReddy38
 
Salesforce Spring 14 Release Developer Overview
Salesforce Spring 14 Release Developer OverviewSalesforce Spring 14 Release Developer Overview
Salesforce Spring 14 Release Developer OverviewRoy Gilad
 

Similar to Salesforce interview questions walkthrough (20)

Top10 Salesforce.com Admin Tools
Top10 Salesforce.com Admin ToolsTop10 Salesforce.com Admin Tools
Top10 Salesforce.com Admin Tools
 
Salesforce Presentation
Salesforce PresentationSalesforce Presentation
Salesforce Presentation
 
Dev day paris020415
Dev day paris020415Dev day paris020415
Dev day paris020415
 
Salesforce developer fa qs
Salesforce developer fa qsSalesforce developer fa qs
Salesforce developer fa qs
 
Salesforce developer fa qs
Salesforce developer fa qsSalesforce developer fa qs
Salesforce developer fa qs
 
Salesforce talk
Salesforce talkSalesforce talk
Salesforce talk
 
Spring 15
Spring 15Spring 15
Spring 15
 
Salesforce for marketing
Salesforce for marketingSalesforce for marketing
Salesforce for marketing
 
Library management system project
Library management system projectLibrary management system project
Library management system project
 
Customizing Ranking Models for Enterprise Search: Presented by Ammar Haris & ...
Customizing Ranking Models for Enterprise Search: Presented by Ammar Haris & ...Customizing Ranking Models for Enterprise Search: Presented by Ammar Haris & ...
Customizing Ranking Models for Enterprise Search: Presented by Ammar Haris & ...
 
Analytics: CRM On Demand vs SFDC
Analytics: CRM On Demand vs SFDCAnalytics: CRM On Demand vs SFDC
Analytics: CRM On Demand vs SFDC
 
Orcl Crmod Vs Sfdc Reporting And Analytics
Orcl Crmod Vs Sfdc Reporting And AnalyticsOrcl Crmod Vs Sfdc Reporting And Analytics
Orcl Crmod Vs Sfdc Reporting And Analytics
 
Comprehensive oracle interview qs
Comprehensive oracle interview qsComprehensive oracle interview qs
Comprehensive oracle interview qs
 
2020 07-08 fireside chat sharing architecture
2020 07-08 fireside chat sharing architecture2020 07-08 fireside chat sharing architecture
2020 07-08 fireside chat sharing architecture
 
#ImpactSalesforceSaturday:360 degree view of salesforce integrations
#ImpactSalesforceSaturday:360 degree view of salesforce integrations#ImpactSalesforceSaturday:360 degree view of salesforce integrations
#ImpactSalesforceSaturday:360 degree view of salesforce integrations
 
Evolutionary Design Solid
Evolutionary Design SolidEvolutionary Design Solid
Evolutionary Design Solid
 
Salesforce
SalesforceSalesforce
Salesforce
 
Top 20 Salesforce Admin Interview Questions and Answers in 2023.pdf
Top 20 Salesforce Admin Interview Questions and Answers in 2023.pdfTop 20 Salesforce Admin Interview Questions and Answers in 2023.pdf
Top 20 Salesforce Admin Interview Questions and Answers in 2023.pdf
 
Salesforce Spring 14 Release Developer Overview
Salesforce Spring 14 Release Developer OverviewSalesforce Spring 14 Release Developer Overview
Salesforce Spring 14 Release Developer Overview
 
SAP Business Objects Trianing
SAP Business Objects TrianingSAP Business Objects Trianing
SAP Business Objects Trianing
 

Recently uploaded

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 

Recently uploaded (20)

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 

Salesforce interview questions walkthrough

  • 1. Salesforce Interview Questions Walkthrough - Shivam Certified Salesforce Admin
  • 2. Types of Questions • Basic Type • Medium • Case Study Other Division: • Configuration • Code Based
  • 4. What are Governor Limits in Salesforce? (what's the need?) Total number of SOQL queries issued : 100 Total number of records retrieved by SOQL queries : 50,000 Total number of records retrieved by Database.getQueryLocator : 10,000 Total number of DML statements issued : 150 Total number of callouts (HTTP requests or Web services calls) in a transaction : 100 Maximum number of push notification method calls allowed per Apex transaction : 10 Total Number of send email methods allowed : 10 Maximum execution time for each Apex transaction : 10 minutes.
  • 5. What is a sandbox org? What are the different types of sandboxes in Salesforce? Sandbox is a copy of your production organization. You can create multiple copies of your organization in separate environments for different purposes such as development, testing and training, without compromising the data and applications in your production organization. Sandboxes are completely isolated from your Salesforce production organization, so operations you perform in your sandboxes do not affect your Salesforce production organization, and vice versa. Generally in each phase of project requires different environments like during construction phase there are chances to multiple teams will work on development in this case each team requires their own sandboxes for development. After the construction period we need one common testing environment, during training period training team requires separate environment for training purpose and before going to production one STAGING environment required. So for each phase different environments are required. • Developer - 200 MB - No Production Data • Developer Pro - 1 GB - No Production Data • Partial Copy - 5 GB - Sample production data • Full Copy - Production Size. - Copies Production Data
  • 6. What is the use of writing sharing rules? Can you use sharing rules to restrict data access? Sharing rules are used to extend sharing access to users in public groups, roles, or territories. Sharing rules can never be stricter than your organization-wide default settings. They simply allow greater access for particular users. We can share record with following users : • individual users • roles • roles and subordinates • other public groups What kind of access : • Read – Only • Read/Write Access
  • 7. What are the types of Relationship in Salesforce? A lookup relationship can be used to link two objects together. It is the most basic type of relationship that creates a child-parent relationship between two objects. A master-detail relationship can also be used to link two objects together. A master-detail relationship creates a tight relationship between the parent and the child. The child record inherits security of the parent, and if the parent is deleted, all associated child records will also be deleted. Master-detail relationships created some extra functionality such as roll-up summary fields that allow you to calculate data on the parent from the children. A many-to-many relationship (Also referred to as a junction object), allows you to create a relationship between two objects that need to model a many-to-many relationship. These are created with an object that has two master-detail relationships to two parent objects.
  • 8. What’s the difference between Record Types & Page Layouts? A page layout is used to define which fields, sections and related lists are displayed to a user, a record type can extend this by defining different business processes.
  • 9. What is the difference between a Role and Profile in Salesforce? Profile will ultimately control access to which records a user has in a Salesforce org. No user can work on the Salesforce org without being assigned a profile. The Profile is therefore mandatory for every user. Role however is not mandatory for every user. The primary function of the Role/ Role hierarchy is that it allows higher level users in hierarchy get access to records owned by lower level users in the hierarchy. An example of that is Sales Managers getting access to records owned by Sales Reps while their peers do not get access to it.
  • 10. What are the different ways of deployment in Salesforce? • Change Sets • Eclipse with Force.com IDE • Force.com Migration Tool – ANT/Java based • Salesforce Package
  • 11. What is the difference between process builder and workflow? Workflow Rule: – Update a field – Send an email – Create a Task – Send an outbound message (communication with another system) Process Builder : In addition to above (except outbound message) we can do following things: – Create a record (not just Tasks!) – Update related records – Launch a Quick Action – Post to Chatter – Launch a Flow – Call Apex code – Submit for approval – Invoke another process
  • 12. What is a report? A report is a list of records that meet the criteria you define. It’s displayed in Salesforce in rows and columns, and can be filtered, grouped, or displayed in a graphical chart. What is a dashboard? A dashboard is a visual display of key metrics and trends for records in your org. The relationship between a dashboard component and report is 1:1; for each dashboard component, there is a single underlying report. What is a report type? A report type is like a template which makes reporting easier. The report type determines which fields and records are available for use when creating a report. What are types of reports ? Tabular report. This is the most basic report. It displays just the row of records in a table like format with grand total. Tabular reports cannot be used for generating dashboards. Summary report. This is the most commonly type of report. It allows grouping of rows of data. It supports sorting and displaying subtotals. For example in a recruiting app, a summary report could be used to display open positions classified by department name. Matrix report. This is the most complex report format. Matrix report summarize information in a grid format. Matrix reports allows records to be grouped by both columns and rows. Joined Reports. Blocks of related information in a single report. This type of reports enable you to adopt five different blocks to display different types of related data. Each block can own unique columns, summary fields, formulas, filters and sort order. Use joined reports to group and show data from multiple report types in different views.
  • 13. What are the types of custom settings in Salesforce? What is the advantage of using custom settings? There are two types of custom settings in Salesforce: List Custom Settings are a type of custom settings that provides a reusable set of static data that can be accessed across your organization irrespective of user/ profile. Hierarchy Custom Settings are another type of custom settings that uses built-in hierarchical logic for “personalizing” settings for specific profiles or users.
  • 14. What are custom labels in Salesforce? What is the character limit of custom label? Custom labels are custom text values that can be accessed from Apex classes or Visualforce pages. The values here can be translated into any language supported by Salesforce. Their benefit is that they enable developers to create multilingual applications which automatically presents information in a user’s native language. You can create up to 5,000 custom labels for your organization, and they can be up to 1,000 characters in length.
  • 15. What is Salesforce flow? Flow is a powerful business automation tool that can manipulate data in Salesforce in a variety of ways. Such application can be created right from the org’s setup with just drag-drop/point-click. The ease of creating flows makes it the number one go-to tool when it comes to complex business requirements. It is not only easy to create, but also it does not require any coding. There are 3 main “building blocks” of the flow, as seen in the screenshot: 1. Elements represent actions that are executed in the flow; 2. Connectors define which path the flow takes; 3. Resources are the values that can be referenced anywhere in the flow. • Palette : Palette gives access to a number of elements that can be used to build the logic. User Interface element Screen Logic Elements DML operations Email Alerts Quick Actions • Resources - these are used to collect, store, and pass the data within or outside of the application • Explorer - The Explorer is simply a library that includes all the resources and elements that are being used in the flow.
  • 16. What are the different types of email templates that can be created in Salesforce? HTML with letterhead - Only Administrators and users having “Edit HTML Templates” permissions can create this template based on a letterhead. Custom HTML - Administrators and users having “Edit HTML Templates” permissions can create this template without the need of a letterhead Visualforce - Only administrators and developers can create this template. Advanced functionalities like merging data from multiple records is available only in this template.
  • 17. What’s the difference between Dataloader and Import wizard? Import Wizard: For simple imports of up to 50000 records. It supports all custom objects and only few standard objects like Account, Contact, Leads, Solution. It supports schedule export. Delete operation is not available. It doesn’t require installation. While importing, duplicates can be ignored. Data Loader: For complex imports of any size more than 50000 records. It supports all standard and custom objects. It doesn’t support schedule export. Delete operation is available. It requires installation. While importing, duplicates cannot be ignored.
  • 18. What is territories/territories setting as a bussiness perspective. Territory Management is the account sharing system that grants access to accounts based on the characteristics of the account. It enables company to structure salesforce data users in the same as we structure our sales territories in the bussiness. Means if our company has private sharing model. We may need to grant access to the accounts based on the criteria such as Postal code, Industry revenue or a custom field that is relevant to the bussiness. Territory Management solves these bussiness needs and provides a powerful solution for structuring users, accounts, and their associated contacts, opportunities and cases. Your organization must be using customizable forecasting in order to enable territory management. If we have a proper and balanced distribution of territories. We can manage things way better.
  • 19. What is forecasting and what are it’s types? Forecasting in Salesforce enables you to view the best estimate of revenue you are able to generate in a specified timeframe like the fiscal quarter. According to SFDC this forecasting is accurate and intuitive but this is not the case every time as you can create and customize forecast in different ways. Customizable Forecasting : Customizable forecasting is a flexible solution for estimating how much revenue your organization can generate or how many items your organization can sell. You can set up customizable forecasting to reflect how your organization forecasts its sales. With it, you can forecast on a monthly or quarterly basis, use different dates when applying amounts to forecasts, forecast based on revenue or quantity or both, and define additional quotas based on product families. Available in: Salesforce Classic Available in: Professional, Enterprise, Performance, Unlimited, and Developer Editions For information on implementing customizable forecasting for your organization, see Setting Up customizable Forecasting. Collaborative Forecasting : Predict sales revenue and quantities from your opportunity pipeline, and incorporate product families, opportunity splits, and custom opportunity currency fields if needed. Use Collaborative Forecasts to manage sales expectations and to predict and plan your company’s sales cycle from pipeline to closed sales. Available in: both Salesforce Classic and Lightning Experience. Available in: Professional (no custom field forecasts), Enterprise, Performance, Unlimited, and Developer Editions. Opportunity Splits available in: Performance and Developer Editions and in Enterprise and Unlimited Editions with the Sales Cloud.
  • 20. What are different opportunity stages and their corresponding demand forecasting? Opportunity Stage Forecast Category Prospecting - Pipeline Qualification - Pipeline Needs Analysis - Pipeline Value Proposition - Best Case Id. Decision Makers - Best Case Perception Analysis - Best Case Proposal/Price Quota - Commit Negotiation/Review - Commit Closed/Won - Closed Closed/Lost - Omitted
  • 21. What are Outbound Messages? Outbound messaging is part of the workflow rule functionality in Salesforce. Workflow rules watch for specific kinds of field changes and trigger automatic Salesforce actions, such as sending email alerts, creating task records, or sending an outbound message to external services. Outbound messages can contain database field values. If we want to send some fields value to the external system then we use the outbound message.
  • 22. What is a public group? - A grouping of : • Users • Public Groups • Roles • Roles and Subordinates For example, if a new user is assigned a role that belongs to a existing public group, that user will be automatically added to the public group.
  • 23. What is a queue in Salesforce? Queues help your teams manage leads, cases, service contracts, and custom objects. Once records are placed in a queue manually or through an automatic case or lead assignment rule, records remain there until they're assigned to a user or taken by one of the queue members. Any queue member or users above them in the role hierarchy can take ownership of records in a queue. For example:- Lead queues: Help you manage the distribution of leads. For example, you may have a lead queue for a Western Region team and one for an Eastern Region team. You can put leads in different queues, either manually or automatically via a lead assignment rule as leads are imported, created or edited manually, or captured from the Web. Make salespeople members of one or more lead queues. Case queues: Help you manage your support workload and differentiate cases based on support levels. With queues, you can ensure that cases are resolved quickly even if a specific user is on vacation. By creating queues for different support levels, such as Gold Service and Silver Service, cases are automatically prioritized. You can put cases in different queues, either manually or automatically via a case assignment rule as cases are generated from the Web or created manually. Make support agents members of case queues. Knowledge article version queues: Help you manage the distribution of versions of Salesforce Knowledge articles for translation. For example, if multiple languages are used for your knowledge base, you can assign new versions of articles to a queue of users who can translate the article into a specific language. Service contract queues: Help you manage the distribution of service contracts. For example, you may have a dedicated group of users who review service contracts. When a service contract is created, assign it to a queue so queue members can review the service contract. Custom object queues: Help you manage the distribution of custom object records. When a custom object record is created, manually assign it to a queue so that the users assigned to the queue can access it and take ownership of it.
  • 24. What are approval processes? Salesforce approval process is an automated process and your organization can use to approve records in Salesforce, An approval process is combination of steps for a record to be approved and person has to approve it each step. A step can apply to all the records to that object or just record that meets the certain criteria. An approval process also specifies the actions to take when a record is approved, rejected, recalled, or first submitted for approval. In approval processes we can : - select different approvers. - define the submission action. - define rejection action.
  • 25. What is Salesforce chatter? What is Salesforce chatter? Chatter in salesforce allows you to collaborate the people with each other in your organization. You can connect with your coworkers and you can share information securely in real time. You can create groups like Facebook groups such public groups and private groups and you can invite your coworkers to join those groups by using salesforce chatter. And also you share your comments, add images and you can like others comments/posts. Chatter can be used as a company intranet or employee directory. Each employee has a profile page with photo and work-related information that explains what the employee’s role is within the company, who the employee reports to, where the employee is located and how to contact the employee. Employees can “follow” both people and documents to collaborate on sales opportunities, service cases, campaigns, projects and tasks. Like Facebook and LinkedIn, Chatter allows users to manage their feeds and control how notifications are received.
  • 26. What is feed tracking? Feed tracking in Salesforce highlights changes to records by automatically announcing them in the record’s feed. You decide which objects and fields you want to track with a simple point-and-click interface. Make your selections, and voila: changes to tracked fields appear in the record’s feed. One of the most powerful benefits of feed tracking is the visibility you get when you're on the go and using the Salesforce mobile app. Your mobile view of feed tracking makes it easy to see what's changing anytime, anywhere. You can track fields on the user, group, and topics objects, custom and external objects, and the following standard objects: account, article type, asset, campaign, case, contact, contract, dashboard, event, lead, opportunity, product, report, solution, task, and work order. Feed tracking appears as a chatter post.
  • 27. What is Audit Trail? The setup audit trail history helps you track the recent setup changes that you and other administrators have made to your organization. This can be especially useful in organizations with multiple administrators. The setup Audit Trail history shows you the 20 most recent Setup changes made to your organization. If we want to see more that 20 recent changes, we can achieve it by downloading the csv file by clicking the download link at the bottom of the page. It lists: • The date and time (with timezone) of the change. • Who made it (by username). • What the change was.
  • 28. What are static resources? Static resources allow you to upload content that you can reference in a Visualforce page, including archives (such as .zip and .jar files), images, style sheets, JavaScript, and other files. Using a static resource is preferable to uploading a file to the Documents tab because: •You can package a collection of related files into a directory hierarchy and upload that hierarchy as a .zip or .jar archive. •You can reference a static resource by name in page markup by using the $Resource global variable instead of hard coding document IDs.
  • 29. What is Outlook integration and sync with Salesforce? When you integrate Outlook and Salesforce, you help your reps spend less time entering data and switching between the two applications. If both Outlook and Salesforce are essential to your daily work routine, you can boost your productivity by automatically syncing your data between the two systems, create tasks, associate emails from your Outlook to records in your salesforce org and more. Integrate email and calendar with Salesforce with a suite of productivity features. Einstein Activity Capture lets you automatically log emails and events. The Inbox clients lets you increase productivity from your inbox on every email. We can do following things on the side bar present in outlook for salesforce. - create contact in salesforce through outlook - Attach email to records through outlook - We can directly create salesforce case from outlook using email to case. And many other things. For detailed features and how to download it, you can refer to dreamforce video on youtube.
  • 30. What is a Connected App? A connected app integrates an application with Salesforce using APIs. Connected apps use standard SAML and OAuth protocols to authenticate, provide single sign-on, and provide tokens for use with Salesforce APIs. In addition to standard OAuth capabilities, connected apps allow Salesforce admins to set various security policies and have explicit control over who can use the corresponding apps. What is single sign on? Single sign-on (SSO) lets users access authorized network resources with one login. You validate usernames and passwords against your corporate user database or other client app rather than Salesforce managing separate passwords for each resource. What is Microsoft Active Directory? It is a Microsoft Product. Arranges all the Networks's users, Computers and other objects into LOGICAL HIERARCHIAL groupings. Active directory Information is used to authenticate/ authorize the users, Computers, resources which are part of network.
  • 31. SSO Keywords : Idenitity Provider : Service Provider : Digital signature : Certificate : Keys : Issuer : ID : SAML Insertion : SAML Enabled SSO things/Identity Provider things it's like trust based.. i.e. if user can login in Identity provider then he can also login into salesforce. When user logs in to Identity provider he get SAML in response and by using that user can log in to other systems. If we are making our salesforce as identity provider and we want to connect other app as service provider then we have to register that external app in connected app components. SAML is the relationship between the Service Provider and Identity Provider(Login related work). OAuth is the relationship between the Service Provider and Service Consumer(data sharing work). What is oAuth? OAuth is an open-standard authorization protocol or framework that describes how unrelated servers and services can safely allow authenticated access to their assets without actually sharing the initial, related data. OAuth has following features: - Avoid stored passwords. - User-specific - Revocable - It's expirable also
  • 32. oAuth Continued.. It is like transfer of data between two different web services. So if app1 is accessing data from app 2 then app1 should not store credentials of app2 to accesss data because if app1 is compromised app2 will also be compromised. So instead of credentials we use. OAuth token which allows the transfer/access of specific data. In OAuth Connected app setting we can revoke the access. Certificates and Keys(Security Controls) This is mostly used for the Single Sign on. We use it when we want to make salesforce as an Identity Provider. So here we generate the certificate and that certificate is used by external website that request is actually coming from salesforce. Steps for making app connected to salesforce: Define the connected app in salesforce org. In app source file we have to updated the generated auth key. Test Authentication with virtual device.
  • 33. What is CORS ? Cross-Origin Resource Sharing (CORS) enables web browsers to request resources from origins other than their own (cross-origin). For example, using CORS, JavaScript code at https://www.example.com could request a resource from https://www.salesforce.com. To access supported Salesforce APIs, Apex REST resources, and Lightning Out from JavaScript code in a web browser, add the origin serving the code to a Salesforce CORS whitelist. If some external system/application or browser is accessing code from our org i.e. salesforce then we have to register that in CORS. What is MyDomain Feature of Salesforce? Add a subdomain to your Salesforce org with the My Domain Salesforce Identity feature. Having a Salesforce subdomain lets you highlight your brand and makes your org more secure. It’s convenient, and you can personalize your login page. What is Salesforce Login Flows? In salesforce we also have login flows. Manage your login flows. Use login flows to introduce business processes during login, such as to prompt for two-factor identification, accept terms of service, or collect information about the user. After users complete the login flow, they're logged in. This page lists available login flows and the user profile associated with each.
  • 34. What are remote site settings in salesforce? Here is we enter the url we have to enter by clicking the button on salesforce. How to know whether we are in sandbox or production through url? We can know the environment by looking at the URL. Sandbox orgs basically contains "CS" as the first two letters something as https://cs5.salesforce.com/home whereas production org's can have NA/EU/AP etc.. If you want to determine this programmatically through APEX, you may use the getHost() method on the System URL class. What is salesforce web to Lead? Salesforce web to lead is to directly collect capture the leads form your website and loaded into Salesforce. What are assignment rules in Salesforce? Assignment rules are used to automate your organization’s lead generation and support processes. • Lead Assignment Rules – Specify how leads are assigned to users or queues as they are created manually, captured from the web, or imported via the lead import wizards. • Case Assignment Rules – Determine how cases are assigned to users or put into queues as they are created manually, using Web-to-Case, Email-to-Case, On-Demand Email-to-Case, the Self-Service portal, the Customer Portal, Outlook, or Lotus Notes. There is a entry criteria for the rule assignment and case/lead can be assigned to user/group.
  • 35. What is auto response rule? An auto-response rule is a set of conditions for sending automatic email responses to lead or case submissions based on the attributes of the submitted record. Rule entry is made when certain criteria is met. While creating auto response rule we choose the email template. What are the Escalation rules? Escalation rules are used to escalate cases automatically when they meet the criteria which are defined in rule entry. We create rule entries where criteria is defined to escalate a case. Whenever an escalation rule is applied for a case, it checks whether the criteria met with the rule entry. If the case matches with the criteria in the rule entry, then the further escalation action is carried out. Escalation action defines what should be done when a case matches with the rule entry. We can add up to five actions for each rule entry to escalate the case over time.
  • 36. What are junction object ?Is it possible to delete junction – Object in case of Mater – Detail Relationship in salesforce? A junction object is a custom object with two master-detail relationships, and it is the key to making a many-to- many relationship. 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. If the parent objects don’t have Roll up Summary fields for the child object then we can delete. To delete a child object it should not be referred in Apex Classes and Apex Triggers. Later if we undelete the object, Master detail fields on the junction objects will be converted to look up Fields. Note: If we delete only Master – Detail Relationship field from the child object and undelete it from the Recycle Bin then it will be converted to look up relationship. Parent Object we cannot delete because it will be referred in the child object. Is it possible to convert Master – Detail Relationship to Look up Relationship? You can convert a master-detail relationship to a lookup relationship as long as no roll-up summary fields exist on the master object. You can convert a lookup relationship to a master-detail relationship, but only if the lookup field in all records contains a value. What will happen if we undelete the deleted Junction Object in Salesforce? When we undelete the deleted Junction Object all the Master Detail Relationship Data type will be changed to Lookup Relationship DataType.
  • 37. Is it possible to delete the user in salesforce? In Salesforce you are never able to delete a user. Instead, you are able to deactivate them. How many users we can create in salesforce? In developer org (free org) you can add only two Salesforce license users but if you purchase the Salesforce paid edition then you can add any number of users in your org but you have to pay per user license in Salesforce. How many blocks we can create for join reports? We can create maximum five blocks using join reports. How many maximum groupings we can do for summary, matrix and join reports? 3 is the maximum for a Summary report, if you use Matrix you can get 4 (2 rows + 2 columns) What is bucketing in reports? Bucketing lets you quickly categorize report records without creating a formula or a custom field within Salesforce. When you create a bucket field, you define multiple categories (buckets) that are used to group report values. We have created simple step by step instructions on how to create this report. Example – Assume we have 5 check box fields for a record and we want to display the data where only three boxes are checked so we create bucket of those three fields and name it. This bucket we use in reports and dashboards. What are setup or non setup objects? Setup objects are • User, RecordType, Profile, Workflow Non-Setup objects are • Contact, Account, Lead
  • 38. Who sees what setup/How we control access for different things? or What are the things in salesforce through which we control user access? Profile Permission Set Field Level Security OWD Sharing rules Access is many layered thing. First we give the user org access i.e. Login hours and IP Ranges (Security Control > Network Access). We can also give the IP ranges in Profile level. If user is outside the profile level IP ranges.. User is denied access but if the user is outside the organization level, access code is sent to the user. Login hours is also profile level. Specific hours are enforced. It’s like sales rep can login only in bussiness sours. Then we give the object (all which object one can access) access. This is given through profiles. Existing profile can be cloned. After that we give the record access. This is given through role hierarchy. We design the rules and assign that role to users. Then we give the field access. This is given through field level security. Administrator Controls above.
  • 39. What are the common steps while setting up a user in salesforce? Below Permissions we give: • IP ranges. • Login hours. • Object access. • Record access. • Field access and all. Object access and the action performed on that object is decided through profile. Profiles Determine : • Which tabs are visible. • Which apps are visible. • Object access - CRUD Operations. • Profile also contain Login hours and IP Ranges settings. - Standard Profile cannot be edited but they can be cloned.
  • 40. What are the types of standard profile present in salesforce ? Standard User – CRUD aces on records they have access to. Solution Manger – Same as Standard profile but with added permission of ‘manage published solution’. Marketing User - Same as Standard profile but with added permission of ‘import Leads’. Contract Manager - Same as Standard profile but with added permission of ‘Manage Contracts’. Read Only - Only read access on the records they have access to. System Administrator – View all data and Modify all data. These Permissions overrides all sharing rules and settings so use caution while using them. In every Profile there are two types of settings. Assigned apps and system settings. For example if we go to ‘Inside sales rep’ Profile: • We will uncheck the create and edit account checkbox. As this is used by marketing team not by sales rep. • For contact record we will give them all the CRUD access as they are in contact with client so we will give them account update access. • We don’t want sales rep to delete opportunity as we want to keep the record of deleted opportunity so we won’t be giving them delete permission in profile. Sales team need to evaluate their wins and losses. • We don’t want sales rep to see the document object. So instead of doing tab hidden (data will be still visible in reports we’ll remove the read access from the profile.) • Then we assign this profile to one of the sales people.
  • 41. What is OWD Settings (Organization wide default) Organization wide defaults determine what access and permission users have to the records they don’t own. We gave the users access to org, then we decided login hours and IP ranges(Profile), then we gave the object access and the action they can perform on those object(Profile), Now in OWD we decide the access on the records they can’t see. By Default in OWD there is following access for objects: Lead - Public Read/Write/Transfer Account, Contract and Asset - Public Read/Write Contact – Public Read only Opportunity – Private Only. Profile determine baseline access user has to all records and then OWD further restricts the user for the records which they don’t own. OWD can never grant more access than they have in object through profiles. Managers run report and analyze the sales pipeline. Since opportunity access is private, managers can access it through role hierarchy.
  • 43. What is Role Hierarchy? Role Hierarchy allows us to open access up vertically down. Here we can create a role. Here we can assign a role to a user. Here we can shift up and down the roles. By default user in role can view the records owned by users lying below them and this access can be modified in the settings below. Role settings are for those who are lying below the hierarchy. In other words user in a role can view a records lying below them. We can further restrict it by changing the settings. Role hierarchy cannot grant more access than they have through the profile. Role Hierarchy can restrict access but cannot provide more access. So if we have given edit permission in Role hierarchy but in Profile there is no edit permission then user cannot edit records. Role cannot give more access than profile. If profile gives full CRED and OWD, then the role hierarchy settings won’t matter.
  • 44. Columns Availaible: - Profile Settings - OWD Settings - Option availailbe in OWD settings.
  • 45. Your org-wide default sharing settings give you a (relatively restrictive) baseline level of access for each object. If you have org-wide sharing defaults of Public Read Only or Private, you can open access back up for some users with sharing rules. This enables you to make automatic exceptions to your org-wide sharing settings for selected sets of users. We can also share the record through manual sharing. Takeaway Points: • Give user access to Org (Login hours & IP ranges) > then decide what objects and tabs user can access and actions user can perform through profile > In OWD we decide what all records one can access on the accessible objects > In role hierarchy we decide what all user can do with records owned by the use below them. • We cannot give more access than given in the profile. • Through permission sets we give extra access. If any record is visible to the user (his or others records base on access settings) then through FLS we decide on those records what all fields he can view.
  • 46. Points Extended : We do manual sharing through by checking ‘Portal user visibility’ and ‘Community user Visibility’ checkbox in user visibility Settings checkbox. Using Permission set we can give user additional access like importing lead.. Switch to lightening experience.. and more.. When we want to give additional access to user but don’t want to give access to everyone in the profile. we can give additional access without changing profile through permission sets. In org we have some permission sets and we can give those permission set to user whenever needed.
  • 47. What is Record types Control: • Bussiness Process. • Page Layouts. • Picklist Values. Controls the lifecycle of opportunities, solution, cases and leads. So the complete control/access setup is: • Profile/Permission Set • OWD/Sharing Rules/Manual Sharing • Role & hierarchy setting. • FLS • Record Types (Before creating record type we should know which bussiness process and which page layut we have to use and also we assign that record type to profile). Salesforce should be smooth setup for the end users but it is not that smooth for the developers.
  • 49. What is batch apex in salesforce? Batch Apex allows you to define a single job that can be broken up into manageable chunks, whereas every chunk can be processed separately. In the Batch Apex it will fetch all the records on which you want to perform the field update and divide them into list of 200 records and on every 200 records operation is performed separately. This would help us to execute on more than 10,000 records as, it won’t perform an operation on all the records in a single transaction instead it dividing them into Number of subtasks where each subtask many contain the records upto 4000. Maximum records batch can take at a time is 2000 records. What is apex transaction? An Apex transaction represents a set of operations that are executed as a single unit. What are Triggers and it’s types? Apex triggers enable you to perform custom actions before or after events to records in Salesforce, such as insertions, updates, or deletions. Just like database systems support triggers, Apex provides trigger support for managing records. Typically, you use triggers to perform operations based on specific conditions, to modify related records or restrict certain operations from happening. You can use triggers to do anything you can do in Apex, including executing SOQL and DML or calling custom Apex methods. Use triggers to perform tasks that can’t be done by using the point-and-click tools in the Salesforce user interface. For example, if validating a field value or updating a field on a record, use validation rules and workflow rules instead.
  • 50. What is wrapper class? Put all the variables in the class then create it’s object and stored them in a list. Actually wrapper class wraps different different object variable into single object. A wrapper or container class is a class, data structure, or an abstract data type whose instances are a collections of other objects. It is a custom object defined by Salesforce developer where he defines the properties of the wrapper class. Within Apex & Visualforce this can be extremely helpful to achieve many business scenarios within the Salesforce CRM software. What is page reference? What are it’s method? A PageReference is a reference to an instantiation of a page reference. Among other attributes, PageReferences consist of a URL and a set of query parameter names and values like custom parameters or standard parameters for PageReference created.
  • 51. The table below describes the instance methods for PageReference. •getAnchor() Returns the name of the anchor referenced in the page’s URL. That is, the part of the URL after the hashtag (#). •getContent() Returns the output of the page, as displayed to a user in a Web browser. •getContentAsPDF() Returns the page as a PDF, regardless of the <apex:page> component's renderAs attribute. •getCookies() Returns a map of cookie names and cookie objects, where the key is a String of the cookie name and the value contains the list of cookie objects with that name. •getHeaders() Returns a map of the request headers, where the key string contains the name of the header, and the value string contains the value of the header. •getParameters() Returns a map of the query string parameters that are included in the page URL. The key string contains the name of the parameter, while the value string contains the value of the parameter. •getRedirect() Returns the current value of the PageReference object's redirect attribute. •getUrl() Returns the relative URL associated with the PageReference when it was originally defined, including any query string parameters and anchors. •setAnchor(String) Sets the URL’s anchor reference to the specified string. •setCookies(Cookie[]) Creates a list of cookie objects. Used in conjunction with the Cookie class. •setRedirect(Boolean) Sets the value of the PageReference object's redirect attribute. If set to true, a redirect is performed through a client side redirect.
  • 52. What are future methods? A future method runs in the background, asynchronously. You can call a future method for executing long- running operations, such as callouts to external Web services or any operation you’d like to run in its own thread, on its own time. You can also make use of future methods to isolate DML operations on different sObject types to prevent the mixed DML error. Each future method is queued and executes when system resources become available. That way, the execution of your code doesn’t have to wait for the completion of a long-running operation. A benefit of using future methods is that some governor limits are higher, such as SOQL query limits and heap size limits.
  • 53.
  • 54.
  • 55. Can we call future methods in batch? No we can’t call future methods inside a batch. Can we call future methods in Triggers? • While developing applications in force.com, sometimes we need to consume external web service in apex trigger. But, callouts cannot be made from apex triggers as that restricts database transaction until the callout is completed and the time limit for this is up to 120 seconds. • The only way to execute a callout from a trigger is to run it asynchronously and this can be achieved by executing a method with the @future method. Future methods execute asynchronously i.e. one does not need to wait for a response. The thing to keep in mind is, a future method can have native calls, as well as, they can make a call out to an external web service and hence, in order to enable the future method to allow callouts, an extra parameter “Callout=true” needs to be passed.
  • 56. For example: – • You have a requirement to call a web service after updating the contact record. Web service callout method (in this example callWebService(Contact cnt) ) is in the Util class which is getting consumed in apex after update trigger.
  • 57. In the previous example if we don’t use (callout = true) and don’t use future annotation then we’ll get below error: When the above trigger is fired it will throw an error as “Callout from triggers are currently not supported.” Can we call rest services inside batch? To execute callouts in batch apex, the class will also need to implement the Database.AllowsCallouts interface. • By default, Salesforce will process 200 records at a time. So, if you have 10,000 records, this translates to 50 batches. • Up to 100 Holding batch jobs can be held in the Apex flex queue. • Each batch is a discrete transaction. • You can override the 200 records per batch limit, using optional scope parameter of the Database.executeBatch • A single batch can process 50 million records: provided you use the QueryLocator (and not the Iterator) • The start, execute, and finish methods can implement up to 10 callouts each. • You can only have 5 queued or active batch jobs at one time. • It is not easy to debug and troubleshoot any errors.
  • 58. Explain force.com platform? Force.com is a Platform as a Service (PaaS) product designed to simplify the development and deployment of cloud-based applications and websites. Developers can create apps and websites through the cloud IDE (integrated development environment) and deploy them quickly to Force.com’s multi-tenant servers. What’s the difference between force.com and salesforce.com? First of all, Salesforce.com is built on the Force.com platform - they are more or less interchangeable from a technical standpoint. It's a mere matter of marketing semantics. Force.com applies to the infrastructure and codebase that is the foundation for the entire Salesforce solution. They are enforcing the Force.com concept more so because Salesforce can do so much more than CRM nowadays. How to run trigger in asynchronously? No we cannot write asynchronous triggers. But you can generate asynchronous requests from a trigger. How many controllers can be used in a visual force page? We can have a standard object controller and multiple controller extensions. I don't think there is any upper limit on the same.
  • 59. What are salesforce controller methods (action/getter/setter)?
  • 62. What are collections? What are it’s type? Collections in Apex can be lists, sets, or maps • Lists A list is an ordered collection of elements that are distinguished by their indices. List elements can be of any data type—primitive types, collections, sObjects, user-defined types, and built-in Apex types. • Sets A set is an unordered collection of elements that do not contain any duplicates. Set elements can be of any data type—primitive types, collections, sObjects, user-defined types, and built-in Apex types. • Maps A map is a collection of key-value pairs where each unique key maps to a single value. Keys and values can be any data type—primitive types, collections, sObjects, user-defined types, and built- in Apex types. • Parameterized Typing Apex, in general, is a statically-typed programming language, which means users must specify the data type for a variable before that variable can be used.
  • 63. What is database.stateful? The only time you need Database.Stateful is when the execute method modifies a class variable in a way meant to be used across multiple execute methods or in the finish method. The majority of batches you will ever write will not need Database.Stateful. It's important to know that using Database.Stateful will harm your batch's performance, because the class will be serialized at the end of each execute method to update its internal state. This extra serialization results in longer execution time.
  • 64. How many ways we can call the Apex class? • From another class • From Trigger • From Visualforce page • From Developer console • Form JavaScript button, Links • From Home page components
  • 65. What is the difference between pageblock table and datatable ? PageBlockTable: • PageBlockTable should be define inside pageblock or pageblocksection. • PageBlockTable uses standard styles sheets to design a visualpage. • It has the required attribute "value". • Column headers will be displayed automatically. DataTable: • No need to write inside pageblock or pageblocksection. • There is no required value. • The data can be displayed using custom style sheets. • we need to specify column headers explicitly.
  • 66. What are The Types of Apex Triggers in Salesforce? Before Triggers After Triggers What is Visualforce Component? Visualforce components are small, reusable pieces of functionality—think widgets, panels, user interface elements, that kind of thing—that you use in Visualforce page markup. You can use standard Visualforce components, and create your own custom components. Salesforce provides a library of standard, pre-built components, such as <apex:relatedList> and <apex:dataTable> that can be used to develop Visualforce pages. In addition, you can build your own custom components to augment this library. What is difference between trigger and workflow? Workflow is point and click which doesn't need any coding. When you want to take action (email, task, field update or outbound message) for the same object or from Child to parent object, you can use Workflow rules. Trigger: It's a programmatic approach and event driven (insert, update, merge, delete). You can call it as advance version of Workflow. Trigger works across all the objects. You can create a new record through trigger which is not possible through workflow.
  • 67. Mention What Is The Difference Between Isnull And Isblank? isNull: It supports for number field isBlank: It supports for Text field How can you embed a Visualflow in a Visualforce page?
  • 68. What is the difference between action function and action support function? • apex:ActionFunction : This component helps to envoke AJAX request (Call Controllers method) directly from Javascript method. It must be child of apex:form. <apex:actionFunction name=”sendEmail” action=”{!sendEmailFunction}”> • </apex:actionFunction> • apex:ActionSupport : This component adds Ajax request to any other Visualforce component. Example : Commandlink button has inbuilt AJAX functionality however few components like OutputPanel does not have inbuilt AJAX capabilities. So with the help of this component, we can enable AJAX. • <apex:outputpanel id=”counter”> <apex:outputText value=”Click Me!: {!count}”/> <apex:actionSupport event=”onclick” action=”{!incrementCounter}” rerender=”counter” status=”counterStatus”/> </apex:outputpanel> • apex:ActionPoller : This is timer component which can send AJAX request on pre-defined interval. Minimum interval is 5 sec and default is 60 sec. <apex:actionPoller action=”{!incrementCounter}” rerender=”counter” status=”counterStatus” interval=”50″ /> • • Similarities: • Both action support and function can be used to call a controller method using an AJAX request. • Differences: 1. Action function can call the controller method from java script. 2. Action support adds AJAX support to another visualforce component and then call the controller method. for example: <apex:outputpanel id=”outptpnl”> <apex:outputText value=”click here”/> <apex:actionSupport event=”onclick” action=”{!controllerMethodName}” rerender=”pgblck” /> </apex:outputpanel> Here action support adds AJAX to output panel, so once you click on output panel controller method will be called. • 3. Action function cannot add AJAX support to another component. But from a particular component which has AJAX support(onclick, onblur etc) action function can be called to call the controller method.
  • 69. What is the difference between the standard controller and custom controller ? Standard Controllers Contains the same functionality and logic that are used for standardSalesforce pages. Can be used with standard objects and custom objects. A custom controller is the user defined an Apex class that implements all of the logic for a page without leveraging a standard controller. Whenever the visualforce pages need to run entirely in system mode and it does not enforce the permissions and field-level security of the current user the custom controller works. You can have controller extension to each controller in visualforce. A controller extension is moreover an Apex class that extends the functionality of a standard or custom controller. The controller extensions can be used in following scenarios: • You want to leverage the built-in functionality of a standard controller but want to override one or more of them for custom specification such as edit, view, save, or delete. • You can add new actions. • Visualforce page which respects user permissions. • The controller extension class executes in system mode, but if it extends a standard controller, then the logic from the standard controller does not execute in system mode. Instead, it executes in user mode, applying the sharing rules, field level security, permissions of current user.
  • 70. What are the three types of bindings used in Visualforce? What does each refer to? There are three types of bindings used in Salesforce:- Data bindings, which refer to the data set in the controller Action bindings, which refer to action methods in the controller Component bindings, which refer to other Visualforce components How can we implement pagination in Visualforce? To control the number of records displayed on each page, we use pagination. By default, a list controller returns 20 records on the page. To customize it, we can use a controller extension to set the pageSize. Which fields are automatically Indexed in Salesforce? Primary keys (Id, Name and Owner fields). Foreign keys (lookup or master-detail relationship fields). Audit dates (such as SystemModStamp). Custom fields marked as an External ID or a unique field.
  • 71. How we bulkify the record? Instead of updating the record one by one.. we update it by bulkifying the record i.e first we add the record to the list and then we update the list one by one. Bulkifying SOQL queries: Putting SOQL queries outside loop. What are salesforce coding standards? Best Practice #1: Bulkify your Code Best Practice #2: Avoid SOQL Queries or DML statements inside FOR Loops. Best Practice #3: Bulkify your Helper Methods Best Practice #4: Using Collections, Streamlining Queries, and Efficient For Loops Best Practice #5: Streamlining Multiple Triggers on the Same Object Best Practice #6: Querying Large Data Sets. Best Practice #7: Use of the Limits Apex Methods to Avoid Hitting Governor Limits Best Practice #8: Use @future Appropriately Best Practice #9: Writing Test Methods to Verify Large Datasets Best Practices #10: Avoid Hardcoding IDs
  • 72. What is difference between Visualforce Components and Lightning Components ? Visualforce Component was designed to follow a Page-Centric model. This means that the intent of Visualforce was to create something that was your full page interface with Salesforce. When the user needed to perform some kind of operation, like Save a record, it would send that request to the Salesforce servers and then reload the entire page with the new state of the UI. All backend processing is done with Apex Code on the Server- Side. Lightning Components was designed to follow an App-Centric model. This essentially means that it has been designed to create self-contained components that build on top of each other. To put this in perspective, with Visualforce you would send an interaction to the Salesforce server and then update the entire page. However, with Lightning, you can send an interaction to the Salesforce servers and then update a specific component. What is App in Sales force? An app is a collection of items that work together to serve a particular function. Salesforce apps come in two flavors: Classic apps and Lightning apps. Classic apps are created and managed in Salesforce Classic. Lightning apps are created and managed in Lightning Experience. You can customize both types of app to match the way your users work.
  • 73. How to setup debug levels for connection user? TracedEntityId: The User ID for the user you want to debug, you can obtain this by querying the record that was created or updated by this user. ExpirationDate: indicates the end date/time for this debug. LogType: This option is used to select an existing debug level. DebugLevelId: When the LogType is specified, you must specify a debug level id* *You can obtain the DebugLevelID value by issuing the query below in the developer console or in workbench. SELECT Id, DeveloperName FROM DebugLevel *Please make sure to check the box for 'Tooling API' to be able to run this query in Developer console.
  • 74. What is the difference between public class and global class? How we send email through code?
  • 75. Code for sending email through code:
  • 76. What is difference between 18 digit Id and 15 digit Id? One thing to note is that Salesforce IDs are case sensitive when they are 15 digit and insensitive when they are 18 digit. What is MVC?
  • 77.
  • 78. What is utility class and what is helper class? • Helper class, is a class that can be instantiate and do some business work • Utils class, is a static class that perform small and repetitive operations on a kind of instance (example of utils classes ArrayUtils or IOUtils from Apache) Can you edit an apex trigger/ apex class in production environment? Can you edit a Visualforce page in production environment? No, it is not possible to edit apex classes and triggers directly in production environment. It needs to be done first in Developer edition or testing org or in Sandbox org. Then, to deploy it in production, a user with Author Apex permission must deploy the triggers and classes using deployment tools. However, Visualforce pages can be created and edited in both sandbox and in production. Only if the page has to do something unique (different values), it would have to be developed via Sandbox. What is an external ID in Salesforce? Which all field data types can be used as external IDs? An external ID is a custom field which can be used as a unique identifier in a record. External IDs are mainly used while importing records/ data. When importing records, one among the many fields in those records need to be marked as an external ID (unique identifier).
  • 79. What is Multitenant Architecture? An application model in which all users and apps share a single, Common infrastructure and code base.
  • 80. What is static dashboard? Static dashboards are the basic dashboard with fixed view (Single user perspective) and which is visible to any user who has made a report out of his data. What is meant by Cascade delete? In master detail relationship when parent object is deleted then all its child objects get automatically deleted. This concept is known as cascade delete. How many email can be send per method? Total 10 email can be send per method.
  • 81. Can dynamic dashboards be scheduled? Dynamic dashboard always show data integrated with real time so we can not scheduled dynamic dashboard.
  • 82. ` Process of setting up SSO, Idenitity Provider, Service Provider, Digital signature, Certificate, Keys, Issuer, ID SAML Insertion, SAML Enabled When user logs in to Identity provider he get SAML in response and by using that user can log in to other systems. If we are making our salesforce as identity provider and we want to connect other app as service provider t SSO things/Identity Provider things it's like trust based.. i.e. if user can login in Identity provider then he can also login into salesforce. here we have to register that external app in connected app components. Certificates and Keys Salesforce certificates and key pairs are used for signatures that verify a request is coming from your organization. They are used for authenticated SSL communications with an external web site, or when using your organization as an Identity Provider. You only need to generate a Salesforce certificate and key pair if you're working with an external website that wants verification that a request is coming from a Salesforce organization. What is SAML used for? SAML is used to share security credentials across one or more networked systems. The SAML framework is specifically designed to accomplish two things: authentication and authorization. We give our username and password to identity provider and that identity provider generated SAML then SAML is sent to salesforce and then salesforce validated that SAML and user session is generated.
  • 83. Process of connecting app A connected app integrates an application with Salesforce using APIs. Connected apps use standard SAML and OAuth protocols to authenticate, provide single sign-on, and provide tokens for use with Salesforce APIs. In addition to standard OAuth capabilities, connected apps allow Salesforce admins to set various security policies and have explicit control over who can use the corresponding apps. For example if we want to access the salesforce data through mobile app. That we achieve through connected app settings. Here we have enter the app name, callback url, enable oAuth(Choose Access). After saving we’ll get the consumer key and consumer secret. So through that consumer key and consumer secret external app can access salesforce.
  • 84. Process Of Making google as external authentication provider Before doing the below things we have to set up the custom domain for our org using Mydomain org and also enable google there. We’ll go to google dashboard and from there we’ll create the oAuth Api credentials which will return us app id and app secret. app id and app secret we have to use while registering google oauth provider in salesforce. After saving the details salesforce will create the callback url which we have enter in earlier created google credentials. Registration class is automatically created while creating Oauth provider in salesforce. We can customize it as per our Need. So when we try to login it creates a completely new user. For more you can check out this video: https://www.youtube.com/watch?v=lsMsu_zPqEA
  • 85. Process of External Services accessing Salesforce Use CORS to Access Salesforce Resources from Web Browsers Cross-Origin Resource Sharing (CORS) enables web browsers to request resources from origins other than their own (cross-origin). For example, using CORS, JavaScript code at https://www.example.com could request a resource from https://www.salesforce.com. To access supported Salesforce APIs, Apex REST resources, and Lightning Out from JavaScript code in a web browser, add the origin serving the code to a Salesforce CORS whitelist. If some external system/application or browser is accessing code from our org i.e. salesforce then we have to register that in CORS.
  • 86. What are delegated groups It is the collection of delegated administrators who can work on defined user, profiles, permission set, se and objects. Enable delegated administrators to manage users in specified roles and all subordinate roles. You can assign specified profiles to those users, and log in as users who have granted login access to administrators. A delegated administration group is a group of users who have the same admin privileges. These groups are not related to public group. 1. Click Setup | Administration Setup | Security Controls | Delegated Administration. 2. Create the DA group. Under Manage Delegated Groups click New next to 'Delegated Group.' 3. Specify who your Delegated Administrators (DA) will be. In the Delegated Administrators section click Add and select the Salesforce User. 4. In the 'User Administrator' section click Add to specify the roles and subordinates for which Delegated Administrators (DA) of this group can create and edit Users. Note: they can only create and edit Users in the roles specified in this step. They can not modify the role hierarchy. 5. In the 'Assignable Profiles' section click Add to determine which profiles the Delegated Administrators (DA) can assign to Users. Note: you cannot choose profiles with the permissions 'Modify All Data' because Delegated Administrators (DA) cannot change the profile of 'Modify All Data' Users in their delegated roles. 6. You can choose to allow delegated administrators to serve as administrators for certain custom objects and their associated tabs. In the 'Custom Object Administration' section click Add to add the custom object. Note: Custom object relationships cannot be created or edited by the Delegated Administrator (DA)groups used for sharing.
  • 87. Setting up Oauth OAuth has following features: - Avoid stored passwords. - User-specific - Revocable - It's expirable also It is like transfer of data between two different web services. So if app1 is accessing data from app 2 then app1 should not store credentials of app2 to accesss data because if app1 is compromised app2 will also be compromised. So instead of credentials we use OAuth token which allows the transfer/access of specific data. whenever we login into salesforce we get the session from salesforce which is active for sometime. Whenever we login into salesforce from our mobile for the first time then we first get the Oauth token.. that token is stored in data store and by using that token we access the salesforce data in future. In OAuth process when we register the mobile app in salesforce, salesforce returns the consumer key to identify that device in future. Define the connected app in salesforce org. In app source file we have to updated the generated auth key. Test Authentication with virtual device. When user registers that external app in salesforce then he gives the permission what all users can access in salesforce through that app.
  • 88. What is the difference between tab hidden and default off? When you set up the tab visibility to default on, it would appear on the top bar along with the other tabs, while if you set this to default off, user will be still have access to the tab but he / she will have to click on the + symbol at the end of all tabs and then access it. If you make the tab hidden, then it will neither be visible at the top bar, and nor by clicking on the + button. However there is a feature available to every user to customize the list of tabs which has to appear once they login as per their preferences. What are apex flex queues? Normally, a Batch Job which has not started yet will assume the status of Queued. The batch which is currently being processed will be in the InProgress status. Batch jobs usually have the limit of five queued or active jobs simultaneously. With Flex Queues, any jobs that are submitted for execution but are not processed immediately by the system go in holding status and are placed in a separate queue (the Apex flex queue). Up to 100 batch jobs can be in the holding status. When system resources become available, the system picks up jobs from the Apex flex queue and moves them to the batch job queue. The status of these moved jobs changes from Holding to Queued. Queued jobs get executed when the system is ready to process new jobs and they will then go to InProgress status.
  • 89. What is queable class?
  • 90.
  • 91.
  • 92. What is forecasting and what are the related terms involved? We can do the forecasting in one of the following: 1. Opportunity. 2. Product Family. 3. Opportunity Forecast Period: We can do monthly or quarterly forecast. We have four roll up fields from the opportunity: 1. Quota 2. Closed 3. Commits 4. Best Case 5. Pipeline We can se the value in both quantity and revenue wise. Managers will be doing forecast adjusting. Forecast managers with the "Override Forecast" permission set can adjust the forecast of direct subordinate.
  • 93. Opportunity stage - Forecast Category  Prospecting – Pipeline  Qualification - Pipeline  Needs Analysis - Pipeline  Value Proposition - Best Case  Id. Decision Makers - Best Case  Perception Analysis - Best Case  Proposal/Price Quota - Commit  Negotiation/Review - Commit  Closed/Won - Closed  Closed/Lost – Omitted What is Remote Site Setting(Security Controls)? Here we register the URL's we want to access which are outside our salesforce organisation.
  • 94. What are packages and what are it’s types? A package is a collection of components. It can be collection of components or the related apps. There are two types of Packages: • Managed Packages • Unmanaged Packages Unmanaged components are mostly used for open resource things. It is editable by both developer and subscriber. But managed packages are editable only by developer. They have non - upgradable components Managed Packages have both upgradable and non-upgradable components.
  • 95. What are Bussiness Processes?
  • 96. What are different trigger variables? new - Returns a list of the new versions of the sObject records. This sObject list is only available in insert, update, and undelete triggers, and the records can only be modified in before triggers. newMap - A map of IDs to the new versions of the sObject records. This map is only available in before update, after insert, after update, and after undelete triggers. old - Returns a list of the old versions of the sObject records. This sObject list is only available in update and delete triggers. oldMap - A map of IDs to the old versions of the sObject records. This map is only available in update and delete triggers. size - The total number of records in a trigger invocation, both old and new.
  • 97. What is analytic snapshot? Think of it like you're taking a photograph of a Report every time you run a Report, let's call them "Report snapshots". Over time as you accumulate these snapshots in your scrapbook, you can run a Report on the snapshots and compare from week to week, month to month, year to year, and look for trends. Salesforce Help defines Analytic Snapshots as “allowing you to load data from a Custom Report to a Custom Object on a regularly scheduled basis.” This in turn allows you to create Reports and Dashboards based on the data in the Custom Object. Analytic Snapshots are comprised of three things: • A source Report of type Tabular or Summary • A Custom Object with fields matching the columns in the source Report • An Analytic Snapshot definition, which maps fields and schedules the snapshot runs
  • 98. What is Vlookup? VLOOKUP FUNCTION =VLOOKUP(A2,address of other file column, column no. of the other excel from where i have to get the value ,FALSE) FALSE - it stands for exact match. also while doing the VLOOKUP on two different excel files, both the files should in same workbook. address of other file column - [excel file name, column] - this comes automatically when we select the columns. - it is dataset on the second sheet. This above formulae we use in the cell of the column where we have to fill the value. A2(Ath column and second row) - Column value of the same excel of which we have to find the value from other excel.
  • 99. Define Recursive Trigger and how to avoid it? There is a possibility that the result of the trigger can end up calling the same trigger again and can run in a loop, this is known as a recursive trigger. To avoid this scenario we should create a static variable and check the value of this variable before we execute anything in the trigger.
  • 100. Pen and Paper questions.. Which you need to practice before interview Trigger to insert record.