You are on page 1of 40

Interview Questions

1. What is Apex?
Ans: It is the technology of which is similar to Java programming with object
oriented concepts and to write our own custom logic.
2. What is S-Control?
Ans: S-Controls are completely based on Javascript. These S- Controls are deprecated in 2007
because it is not supporting Apex Language properly. Now S-Controls are superseded by
Visualforce now.
3. What is a Visualforce Page?
Ans: Visualforce is the new markup language from salesforce, by using which, we can render the
standard styles of salesforce.
We can still use HTML here in Visualforce. Each visualforce tag always begins with apex
All the design part can be determined by using Visualforce Markup Language and the business
logic can be written in custom controllers associated with the Page.
4. Will Visual force still supports the merge fields usage like S-control ?
Ans: Yes. Just like S-Controls, Visualforce Pages support embedded merge fields, like the

5. Where to write Visualforce code?

Ans: We can write the code basically in 3 ways.
a. setup->App Setup->Develop->Pages and create new Visulaforce page.
b. Setup -> My Personal Information -> Personal Information -> Edit check the checkbox
development mode. When we run the page like this, we will find the Page editor at the
bottom of the page. we can write page as well as the controller class associated with it,
there itself.
c. Using EclipseIDEwe can create the Visulaforce page and write the code.
6. What are Apex Governor Limits?
Ans: Governor Limits are runtime limits enforced by the Apex runtime engine. Because Apex
runs in a shared, multitenant environment, the Apex runtime engine strictly enforces a number
of limits to ensure that code does not monopolize shared resources. Types of limits that Apex
enforces are resources like memory, database resources, number of script statements to avoid
infinite loops, and number of records being processed. If code exceeds a limit, the associated
governor issues a runtime exception.

Interview Questions
7. What are the types of sandboxes and what is the difference?
Ans: Salesforce gives us the ability to create multiple copies of organization in separate
environments for a variety of purposes, such as testing and training, without compromising the data
and applications in Salesforce production organization. These copies are called sandboxes and are
nearly identical to Salesforce production organization
Sandboxes are completely isolated from Salesforce production organization, so operations we
perform in sandboxes do not affect Salesforce production organization, and vice versa.
The sandbox types are:
Configuration Only:
Configuration-only sandboxes copy all of production organization's reports, dashboards, price
books, products, apps, and customizations under Your Name ->Setup, but exclude all of
organization's standard and custom object records, documents, and attachments. Creating a
configuration-only sandbox can decrease the time it takes to create or refresh a sandbox from
several hours to just a few minutes, but it can only include up to 500 MB of data. We can refresh
a configuration-only sandbox once per day.
Developer Sandbox:
Developer sandboxes are special configuration-only sandboxes intended for coding and testing
by a single developer. Just like configuration-only sandboxes, developer sandboxes copy all
application and configuration information to the sandbox. Developer sandboxes are limited to
10 MB of test or sample data, which is enough for many development and testing tasks. We can
refresh a developer sandbox once per day.
Full sandboxes copy entire production organization and all its data, including standard and
custom object records, documents, and attachments.
8. How to schedule export or take the backup of salesforce?
Ans: Salesforce allows us to obtain a copy of all data using the data export feature. We can
generate backup files manually once every six days or schedule them to generate automatically at
weekly or monthly intervals.
The backup file will come to us in the form a zip file that contains all of organizations data in a set of
CSV (comma-separated values) files. If we do not see the data export feature, contact support to have the Data Export Service activated.

The following path will tells us how to schedule the export

Click Setup -> Data Management -> Data Export -> Schedule Export
Note: 1. we have 48 hours from the time we are notified the backup is available to download the
backup file.
2. The email notification for backups goes to the email address in Salesforce of the person logged
in who schedules the backup

Interview Questions
9. Do governor limits apply to sandbox instances?
Ans: Governor Limits do apply to all Salesforce instances (trial, developer, and production or
sandbox environments). However code coverage and successful execution of test classes is only
enforced when deploying to a production environment.
10. What is difference in ISNULL and ISBLANK?
Ans: Both Determines if an expression has a value and returns TRUE if it does not. If it contains a
value, this function returns FALSE
ISBLANK (expression): The expression allows both number and text fields.
Both number and text fields
ISNULL(expression): Here the expression allows only number fields.
Only number fields

11. What is the difference between the Workflow and Approval Process?
Ans: Workflow Rules and Approval Processes can be used together
Workflow Rules
Are triggered upon Save
Consist of one set of criteria and actions

Can be modified or deleted

Approval Processes
Are triggered only when a user clicks Submit for
Approval button
Consist of multiple steps
Have an entry criteria, step criteria and step
Have Initial submission actions, rejection and
approval actions and actions for each step
Some attributes cant be modified , processes
must be deactivated before they can be deleted

12. When we cant add Time dependent action in Workflow rule?

Ans: We cant add time-dependent actions to a rule if we choose Every time a record is created
or edited evaluation rule criteria.
13. What are the types of email templates available in
Ans: There are four kinds of Email Templates

HTML with Letter Head
Custom HTML

14. What is Roll up summary field in Salesforce?

Interview Questions
Ans: A read-only field that displays the sum, minimum, or maximum value of a field in a related
list or the record count of all records listed in a related list. Thus, we can say that Roll up
summary field can only be created on Master object.
15. What are the Record Types?
Ans: Record types used to display different picklistvalues and page layouts to different users
based on their profiles
16. Have you implemented Record Types in your project?
Ans: Yes, we have created Record Types and we have done Page Layout Assignment also
17. How to make the Record type as a default?
Ans: By using the Profiles.
Go to the particular profile and by using Record Type Settings we can make the Record Type as a
18. What will happen if the Account is deleted?
Ans:If the Account is deleted then Contact, Opportunity will also be deleted from Salesforce
which are related to that Account.
19. How many types of the relationship fields available in Salesforce?
Ans: There are four types of relationships in salesforce

Master Detail
Many to Many
Hierarchical (It is available only on User Object)

20. What is Hierarchical Relationship? Does you ever used in your project?

Ans:It is the relationship available on User object which allows users to click a lookup icon and
select another user from a pop-up list.
This type of relationship is a special lookup relationship available only for the user object. It
allows creating a Manager Field on the user object to relate another user.
This relationship will acts as a Self relationships.
21. How to create many too many relationships between object?

Interview Questions
Ans: Create one custom object, which should have autonumber as unique identification and
create two Master - Detail relationships for this object. And this Object is called as Junction
22. What is JUNCTION object?
Ans:A Junction object is a Custom object with two Master-Detail relationships. Using this custom
junction object, we can model a many-to-many relationship between two objects.

23. Say If we created a junction object A with masters B and C? Suppose if we try to delete the
records in C what happens to the child?
Ans: Childs will also delete as per the properties of Master- Detail relationship.
24. In Which sequence Trigger and automation rules run in
Ans: The following is the order salesforce logic is applied to a record.

Old record loaded from database

New record values overwrite old values
System Validation Rules
All Apex before triggers
Custom Validation Rules
Record saved to database (but not committed)
All Apex after triggers (EE / UE only)
Assignment rules
Auto-response rules
Workflow rules
Escalation rules
Parent Rollup Summary Formula value updated (if present)
Database commit

25. If one object in Salesforce have 2 triggers which runs before insert. Is there any way to
control the sequence of execution of these triggers?
Ans: has documented that trigger sequence cannot be predefined. As a best
practice create one trigger per object and use comment blocks to separate different logic blocks.
26. How to delete the User from Salesforce?
Ans: As per now, salesforce does not allow to delete any user, however we can deactivate the
27. How to delete the users data from Salesforce?

Interview Questions
Ans: To delete the Users Data go to Your Name -> Setup -> Administration Setup -> Data
Management -> Mass Delete Record, from there select the objects like Account, Lead etc and in
criteria select the users name and delete all records of that user related to particular object.
28. How to restrict the user to see any record lets say opportunity?
Ans: Set up opportunity sharing to be private in Organization Wide Defaults. If both users are
admins or have view all permissions at profile level on opportunity, then that overrides private
29. What is the difference between and trigger.old in Apex?
Ans: : Returns a list of the sObject records which we are going to insert into
Note that this sObject list is only available in insert and update triggers, and the records can only
be modified in before triggers
Trigger.old: Returns a list of the sObject records which already there in database
Note that this sObject list is only available in update and delete triggers.
30. How to restrict any Trigger to fire only once?
Ans: Triggers can fire twice, once before workflows and once after workflows. For this, add a
static boolean variable to a class, and check its value within the affected triggers.
31. What is difference between WhoId and WhatId in the Data Model of Task?
Ans: WhoID refers to people things. So that would be typically a Lead ID or a Contact ID
WhatID refers to object type things. That would typically be an Account ID or an Opportunity ID
32. How to display error messages in the visualforcepage?
Ans:In Apex use below code to create the error message for visualforce.
Apexpages.addMessage(newApexPages.Message (ApexPages.Severity.ERROR, 'Required fields are
missing. '));

In Visualforce page add below tag where we want to display the error message.

33. What is property in Apex? Explain with advantages.

Interview Questions
Ans: Apex mainly consists of the syntax from the well-known programming language Java.As a
practice of encapsulation in java we declare any variable as private and then create the setters
and getters for that variable.

Private String name;

Public void setName(String n)
Public String getName()
Return name;
However, the Apex introduced the new concept of property from language C# as shown below:
publicString name {get; set;}
It has another advantage in number of lines of code limit by salesforce which will drastically
34. What is the controller extension?
Ans: Any apex class having a public constructor with Custom Controller or Standard Controller
object as a single argument is known as controller extension.
35. Explain the need or importance of the controller extension?
Ans: Controller extension is very useful and important concept introduced by the salesforce
recently. It gives the power to programmer to extend the functionality of existing custom
controller or standard controller.
A Visualforce can have a single Custom controller or standard controller but many controller
We can say that the custom extension is the supporter of custom or standard controller.
36. How to read the parameter value from the URL in Apex?
Ans: Consider that the parameter name is Test.
String Test = Apexpages.currentPage().getParameters().get(Test);
37. What is lookup relationship?

Interview Questions
Ans: It is the relationship which is used to connect the two objects
Properties of Lookup Relationship:

We can create upto 25 lookup Relationships

Lookup can be create if records already exists
If we deletes the Parent record, then the Childs will not be deleted
The OWDs cannot be inherited from the Parent object if we have lookup relationship
between them
Editable field

38. What is Master detail Relationship?

Ans:It is the relationship which is used to connect the two objects

Properties of Master-Detail Relationship:

We can create upto2 Master-Detail Relationships

Master- Detail Relationship cannot be created if records already exists
If we deletes the Parent record, then the Childs will be deleted
The OWDs can be inherited from the Parent object if we have lookup relationship between
Read Only field

39. What is Master Detail relationship and look up relationship in Salesforce? What is the
Ans: The Master-Detail and Look up relationships are used to connect two objects. They are one
to many relationships. The differences are:

Lookup Relationship
We can create 25 lookup relationships for
both standard and custom objects
Lookup Relationship can be created if
records already exists
If we deletes the parent record, then
Childs will not be deleted
The Ownership and the sharing of a child
record are not determined by the parent

Master-Detail Relationship
We can create 2 Master-Detail
relationships for custom objects
Master-Detail relationship cannot be
created if records already exists
If we delete the parent record, then childs
will be deleted automatically
The Ownership and the sharing of a detail
record are determined by the Master

Interview Questions
Editable field

Read Only field

40. Can we convert the lookup relationship to Master Detail relationship?

Ans: We can convert the lookup relationship to master detail relationship if and only if all the
existing record has valid lookup field.
41. In How much ways we can invoke the Apex class?
1. Visualforce page
2. Trigger
3. Web Services
4. Email Services
42. Can we create Master Detail relationship on existing records?
Ans: No, first we have to create the lookup relationship then populate the value on all existing
record and then we have to convert it.
43. How validation rules executed? Is it page layout / Visualforce dependent?
Ans: The validation rules run at the data model level, so they are not affected by the UI. Any
record that is saved in Salesforce will run through the validation rules.
44. What is the difference between database.insert and insert?
Ans: insert is the DML statement which is same as databse.insert. However, database.insert
gives more flexibility like rollback, default assignment rules etc. we can achieve the
database.insert behavior in insert by using the method setOptions(Database.DMLOptions)
Important Difference:
If we use the DML statement (insert), then in bulk operation if error occurs, the execution will
stop and Apex code throws an error which can be handled in try catch block.
If DML database methods (Database. Insert) used, and then if error occurs the remaining
records will be inserted / updated means partial DML operation will be done.
45. Other than SOQL and SOSL what is other way to get custom settings?
Ans: Other than SOQL or SOSL, Custom settinghastheir own set of methods to access the record.
For example: if there is custom setting of name ISO_Country,
ISO_Country__c code = ISO_Country__c.getInstance(INDIA);
//To return a map of data sets defined for the custom object (all records in the custom object),
//we would use:

Interview Questions
Map<String,ISO_Country__c>mapCodes = ISO_Country__c.getAll();
// display the ISO code for India
System.debug(ISO Code: +mapCodes.get(INDIA).ISO_Code__c);
//Alternatively we can return the map as a list:
List<String>listCodes = ISO_Country__c.getAll().values();
46. What happen if child have two master records and one is deleted?
Ans: Child record will be deleted.
This question will mainly ask when they asked how to achieve many to many relationships. Then
we can answer by using Junction Object and two master detail relationships. Then next question
would be what will happen if we delete one master record?
47. What is Difference in render, rerender and renderas attributes of visualforce?
Ans: render It works like display property of CSS. Used to show or hide element.
rerender: If we want to refresh partial page in Visual force page we have to use rerender
render as: By using this we can convert entire visual force into PDF,doc and excel. The syntax is
Render as = pdf
48. What is Scheduler class in Apex?
Ans: The Apex class which is programed to run at pre-defined interval.
Class must implement schedulable interface and it contains method named execute().
There are two ways to invoke scheduler:
1. Using UI
2. Using System.schedule
The classes which implements interface schedulable get the button texted with Schedule,
when user clicks on that button, new interface opens to schedule the classes which implements
that interface.
To see what happened to scheduled job, go to Monitoring | Scheduled jobs
49. Explain Permission sets?
Ans:A permission set is a collection of settings and permissions that give users access to various
functions. The settings and permissions in permission sets are also found in profiles, but
permission sets extend users functional access without changing their profiles.
A profile will have many users. If we change the permissions at profile level, then all the users
associated with that profile will change. If we want extend the permissions for only for particular
users, and then we have to create permission set and assign it to the user.

Interview Questions
50. What is the difference between External ID and Unique ID?
Ans:External ID field:This is a field that usually references an ID from another (external) system.
Ex: For instance, if the customer has an Oracle Financials system that they will be linking with, it may be easier for them to be able to refer to the Oracle ID of account records
from within salesforce. So they would create an external ID in and they would
load the Oracle ID into that field for each account. They can then refer to that ID field, rather
than the id.
Note: 1. if we have an external ID field, the field becomes searchable in the sidebar search. We
also can use the upsert API call with the external ID to refer to records.
2. External Id available for Text, Number and Email field types.
3. External Id is used in upsert operations in the Data Loader
If external id is not matched then a new record is created.
If external id matched once then record will be updated.
If external id is matched multiple times then error occurs.
Unique ID field:
This is a setting for the field that will prevent us from using the same value in multiple records
for the unique field.
So if I create a 5 character text field and make it unique, and I create a record with the value
12345 i will not be able to create another record with that same value in the unique field. If i
try to do so, I will get an error saying that the value is already in use.
51. How to get the picklist value in Apex class?
Ans:Using Dynamic apex, we can achieve this. On object of field type picklist, call getDescribe().
Then call the getPicklistValues() method. Iterate over result and create a list and bind it to
52. What is the Custom Controller?
Custom Controller:A custom controller is a class written in Apex that implements all of a page's
If we use a custom controller, we can define new behaviors, but we must also reimplement
anyfunctionality that was already provided in a standard controller.
53. What are the types of controller in visual force?
Ans:There are basically two types of Controller in Visual force page.
1. Standard Controller and

Interview Questions
2. Custom Controller
3. Controller Extensions
Controller definition:AVisualforce controller is a set of instructions that specify what happens
when a user interacts with the components specifiedin associated Visualforce markup, such as
when a user clicks a button or link.
Controllers also provide access to the data thatshould be displayed in a page, and can modify
component behavior.
Standard Controller:A standard controller consists of the same functionality and logic that is
used for a standard Salesforce page. For example, if you use the standard Accounts controller,
clicking a Save button in a Visualforce page results in the same behavior as clicking Save on a
standard Account edit page.
Custom Controller:A custom controller is a class written in Apex that implements all of a page's
If we use a custom controller, we can define new navigation elements or behaviors, but we must
also reimplementanyfunctionality that was already provided in a standard controller.
Controller Extensions:A controller extension is a class written in Apex that adds to or overrides
behavior in a standard or custom controller.Extensions allow us to leverage the functionality of
another controller while adding our own custom logic.
54. How many Controllers can be used on single VF page?
Ans: Only one controller can be used salesforce. Other than them, Controller extension can be
used. There may be more than one Controller extention.
<apex:pagestandardController="Account" extensions="ExtOne,ExtTwo" showHeader="false">
if the extension classes ExtOne and ExtTwo, both have the method getFoo() then the method
of ExtOne will be executed.
A controller extension is any Apex class that contains a constructor that takes a single argument
of type ApexPages.StandardController or CustomControllerName, where
CustomControllerName is the name of a custom controller that we want to extend.
55. Explain System.runAs()?
Ans: Generally, all Apex code runs in system mode, and the permissions and record sharing of
the current user are not taken into account. The system method, System.runAs(), lets us to
write test methods that change user contexts to either an existing user or a new user. All of that
users record sharing is then applied.

Interview Questions
System.runAs(u) {
// The following code runs as user 'u'
Account a= new Account();
a.Name=Test Account;
insert a;

56. Explain Test.setPage()?

Ans:It is used to set the context to current page, normally used for testing the visual force
57. What is the Custom Settings?
Ans: custom setting that provides a reusable set of static data that can be accessed across
your organization. There are two types of custom settings.
Custom settings are similar to custom objects and enable application developers to create
custom sets of data, as well as create and associate custom data for an organization, profile, or
specific user.
All custom settings data, which enables efficient access without the cost of repeated queries to
the database. This data can then be used by formula fields, validation rules, Apex, and the Web
services API.
58. What are the Types of Custom Settings?
Ans: There are two types of Custom Settings
a. List Custom Settings
b. Hier archy Custom Settings
59. Difference between SOSL and SOQL in Salesforce?
Stands for "Salesforce object search language"
SOQL retrieves the records from the database
using SELECT keyword
Works on multiple objects at a same time.
Cannot used in Triggers. Can only be used in
Apex class and anonymous block.

Stands for "Salesforce object query language"
SOSL retrieves the records from the database
using FIND keyword
Need to write different SOQL for different
Can be used in Apex class and Triggers.

60. How to round the double to two decimal places in Apex?

Ans: Decimal d = 100/3;
Double ans = d.setScale(2) ;
61. In Profile settings, what is difference between Modify All Data and Modify All?

Interview Questions
Ans:Modify All Data : Create, edit, and delete all organization data, regardless of sharing
Modify All : Give All (Read, Create, Add, Delete) permission to selected Object.
62. If i want record level access then what should i use from Salesforce security model?
Ans: Manual Sharing (Enabling Sharing Button at the profile level)
63. If i want Object level accesses then what should i use from Salesforce security model?
Ans: Profile
64. In OWD (Organization wide Defaults), can i change the setting Grant Access Using

Hierarchies for Standard Objects?

Ans: We cannot change it for Standard Objects However for Custom Objects its possible.
65. What is Mandatory while creating User, Role or Profile?
Ans: Its Profile.
66. In case of Master-Detail relationship, on Update of master record can we update the field of

child record using workflow rule?

Ans: Yes, We can do it using Cross Object field updates
67. In case of Master-Detail relationship, on Update of child record can we update the field of

Parent record using workflow rule?

Ans: Yes, the Master fields are also available for Evaluation Criteria.
68. While setting OWD (Organization wide Defaults), can we change/modify the setting of child

record in case of Master-Detail relationship?

Ans: No, Child record is controlled by the Parents setting.
69. What is the need of Custom Controller in Visualforce as everything can be done by the
combination of Standard Controller + Extension class.
Ans: Sharing setting is applied on standard object/extension by default; In case we dont want to
apply sharing setting in code then Custom controller is only option.
It is possible that the functionality of page does not required any Standard object or may require
more than one standard object, then in that case Custom controller is required.

Interview Questions
70. In class declaration if we dont write keyword with sharing then it runs in system mode then
why keyword without sharing is introduced in apex?
Ans: Lets take example, there is classA declared using with sharing and it calls classB method.
classB is not declared with any keyword then by default with sharing will be applied to that
class because originating call is done through classA. To avoid this we have to explicitly define
classB with keyword without sharing.
71. If user doesnt have any right on particular record and have only read level access at object
level. Can he change the record owner?

Ans : Yes. In profile, there is setting for Transfer Record.

72. How to hide the App Setup and Administration Setup Menu from users setup page?
Ans: In Profile, remove access View Setup and Configuration.
73. While creating new profile for user, which existing profile should be copied?
Ans: If the new user is not System administrator then copy from Standard User profile.
74. Who can run reports?
Ans: Users with permission Run Report and access to report folder can only run the report.
75. What is Difference between printable View and Export Detailsbutton on report?
Ans: Printable View: formatting, grouping and subtotals are persisted.
Export Details: formatting, grouping and subtotals are lost.
76. Which permission is required to set the running user other than you in dashboard?
Ans: View All Data in profile.
77. Who can access drag and drop dashboard?
Ans: User with permission manage dashboard.
78. Which type of report can be used for dashboard components?
Ans: Summary and Matrix report can be used to create dashboard components.
79. How many types of dashboard components are available?
Ans: The following are the Data Components in the dashboards
Horizontal Bar Chart
Vertical Bar Chart

Interview Questions

Line Chart
Pie Chart
Donut Chart
Funnel Chart
Gauge Chart

Note: The Components of the dashboard that use the Grand Totals is Metric and Guage

80. Explain dynamic Dashboard.

Ans: Dashboard which is running under current logged in user permission are known as
dynamic Dasboard.
At the most 3 dynamic dashboards can be built
This type of dashboard cannot be scheduled for refresh. IT must be scheduled manually.
81. What is analytic Snapshot in salesforce?
Ans: Analytic snapshot capture and store the data at pre decided intervals. It captures data from
report and saves in custom object as per schedule. It only supports tabular and summary report
as a source report. It does not support matrix report. The field type in target object must be
same as source report object field.
82. Explain difference in COUNT() and COUNT(fieldname) in SOQL.
Ans: COUNT()

COUNT() must be the only element in the SELECT list.

We can use COUNT() with a LIMIT clause.
We cant use COUNT() with an ORDER BY clause. Use COUNT(fieldName) instead.
We cant use COUNT() with a GROUP BY clause. Use COUNT(fieldName) instead.


We can use COUNT(fieldName) with an ORDER BY clause.

We can use COUNT(fieldName) with a GROUP BY clause.

83. How to write the Where clause in SOQL when GroupBy is used?
Ans:We cannot use the Where clause with GroupBy instead we will need to use the Having

Interview Questions
Ex: Get all the opportunity where more than one record exists with same name and name
contains ABC.
SELECT COUNT(Id) , Name FROM Opportunity GROUP BY Name Having
Name like '%ABC%'


84. How many ways we can make the field required?

Ans: We can make the field required in the three ways:
a. While creating a field.
b. Using Validation rules
c. Using Page Layouts
85. How to give the blank value as the field value to the record using Data Loader?
Ans: Use the setting Insert Null Values in the Data Loader settings.
86. What is the Customer Portal and Partner Portal?
Ans: Customer Portal: A Customer portal similar to a Self Service Portal in that
it provides an online support channel for customers allowing them to resolve their inquires
without contacting a customer service representative.
Partner Portal:Partner relationship management allows companies to maximize the return on
their channel investments and increase revenues by managing, tracking, and forecasting
business alongside their direct sales business. It also helps partners sell more effectively, close
more business, and achieve greater profits. This Partner Portal determines partners with
Salesforce data can help sell more without spending more. A partner portal allows partner users
to log in to Salesforce through a separate website than non-partner users. Partner users can
only see the data that we have made available to them.
87. What are the Governor Limits?
Ans: Governor Limits are runtime limits enforced by the Apex runtime engine. Because Apex
runs in a shared, multitenant environment, the Apex runtime engine strictly enforces a number
of limits to ensure that code does not monopolize shared resources. Types of limits that Apex
enforces are resources like memory, database resources, number of script statements to avoid
infinite loops, and number of records being processed. If code exceeds a limit, the associated
governor issues a runtime exception.
Total number of SOQL queries issued
Total number of records retrieved by SOQL
Total number of records retrieved by SOQL


Interview Questions
Total number of records retrieved by a
single SOSL query
Total number of DML statements issued


88. What are the annotations in the Apex?

Ans: An Apex annotation modifies the way a method or class is used, similar to annotations in
89. What is @isTest annotation?
Ans:Use the isTest annotation to define classes or individual methods that only contain code
used for testing your application.
90. How many controller extensions we can use in Visualforce Page?
Ans: Any number of controller extensions
91. What are the Collections?
Ans: Collection is a group of similar data types. There are three types of collections.
92. What is difference between the Sets and Maps?
Ans:A set is an unordered collection of primitives or sObjects that do not contain any duplicate
A map is a collection of key-value pairs where each unique key maps to a single value. Keys can
be any primitive data type, while values can be a primitive, sObject, collection type or an Apex
93. What are the data types we can give for the Key and Values in Maps?
Ans: Keys Primary Data Types
Values Primitive, sObject, Collection Type or an Apex object
94. What is the difference between the with sharing and without sharing keywords?

Interview Questions

Ans: Use the with sharing keywords when declaring a class to enforce the sharing rules that
apply to the current user.
Use the without sharing keywords when declaring a class to ensure that the sharing rules for the
current user are not enforced
95. What is the difference between the Profile and Role?
Ans:Profiles:A collection of settings and permissions that define how a user accesses records.
Profiles Control a users permissions to perform different functions in Salesforce.
A profile can have many users, but a user can have only one profile.
Roles:Controls the level of visibility that users have to an organization's data
96. Can we create a user without assigning the profile?
Ans: No, because while creating the user, selection of profile is mandatory thing
97. What are the Assignment Rules?
Ans: Assignment Rules are used to automate organizationslead generation and support
Lead Assignment Rulesspecify how leads are assignedto users or queues as they are created
manually, captured from theweb, or imported via the lead import wizards.
Case Assignment RulesDetermine how cases are assignedto users or put into queues as they
are created manually, using Web-to-Case.
98. What is Cross Object Formula?
Ans:Cross-object formulas can reference merge fieldsfrom a master (parent) object if an
object is on thedetail side of a master-detail relationship. We can reference fieldsfrom objects
that are up to ten relationships
We can able to insert related Object data into a formula
99. How to hide a Tab for an User
Ans: By profiles we can hide a tab for a user
Use Tab Hidden setting for tab hide

What is an External ID?

Interview Questions
Ans: External IDs are used when we interacting with an external systems. It will act as unique
record identifier. We can define 3 external ID fields per object. These are the data types of fields
How to merge duplicates without going for Third Party tools?
Ans:Click on the Tab and go to the Tools section, we can find the Merge option

Click on


How many ways we can do deployment?

Ans: There are three ways to do deployment

i. By using Change Sets
ii. By using IDE tool(Eclipse)
iii. By using Migration toolkit
What is the best practice you are using while coding?

a. Bulkify your Code: Bulkifying Apex code refers to the concept of making sure the code
properly handles more than one record at a time. When we try to load the bulk of the
records using the Data Loader, then we make sure that code will satisfy.
b. Avoid SOQL Queries inside FOR Loops: When queries are placed inside a for loop, a
query is executed on each iteration and the governor limit is easily reached. Instead,

Interview Questions
move the SOQL query outside of the for loop and retrieve all the necessary data in a
single query.
c. Avoid Multiple Triggers on the Same Object: Write the Single trigger on the each object
and write the logic in the classes and call that classes in the triggers.
d. Use of the Limits Apex Methods to Avoid Hitting Governor Limits
e. Avoid Hardcoding IDs


What is the MVC design pattern in

Ans: Model view controller (MVC) design pattern is the one of the most popular design pattern
which contains three modules.
a. Model
b. View
c. Controller
Model: What schema and data does salesforce uses to represent the system completely. In
salesforce, we can say that sObjects are the model. Ex: Sobjects, Apex Classes
View: How the schema and data is represented. Visualforce is used to present the data to
users. Ex: Pages, Components
Controller: How the interface actions. Controllers are used to perform the actions whenever
users interact with Visualforce. Ex: Standard, Custom (Apex)

How many records we can display in the particular report?

Ans: We can display only 2000 records for a report.

If we want to see more than 2000 records, then we can export in excel or .csv file.

How to call method in the VF page?

Ans: We have a attribute called action in the <apex:commandbutton> tag in the VF page.
<apex:commandButton action="{!save}" value="Save" id="theButton"/>

How much code coverage we can do for a Test Classes?

Ans: 75%

What Is the Formula Field?

Ans:A read-only field that derives its value from a formula expression which we define. The
formula field is updated when any of the source fields change

Interview Questions

Mention the names of standard Controllers?

Ans:Accounts, Contacts, Opportunities, Leadsetc (all standard and custom objects)


What are the actions in the Workflow?


Email Alert
Field Update
Outbound Messages
What is the Validation rule?

Ans: Validation Rules verify that the data a user enters in a record meets the standards we
specify before the user can save the record
Validation rule also includes the error message to display to the user when the rule returns a
value of true due to an invalid value
If we dont have 75% code coverage, can we move it from one sandbox to another
Ans:Yes, we can move a class from one sandbox to another sandbox. But if we want to move a
class from sandbox to production environment we need to have a Test Class with a minimum of
code coverage should be 75%
Can we have duplicates in the External ID?
Ans: No

Which method in custom settings returns list of records?

What are the context variables in Triggers?, Trigger.old
Trigger.NewMap, Trigger.OldMap
Trigger.isInsert, Trigger.isUpdate, Trigger.isDelete, Trigger.isBefore, Trigger.isAfter,

What is the Bulk Triggers?

Ans:All the triggers are bulk triggers by default, and can process multiple records at a time. We
should always paln on processing more than one record at a time.

Interview Questions
What is the difference between giving with sharing and without sharing while creating
a class?
Ans: The class with sharing means we are enabling the access to the profiles
The class without sharing means we are disabling the access to the profiles.

Can we put list in the Map?

Ans: Yes, we can put list in the Map. Please find the code below
Map<Id, List<Opportunity>>MapList=New Map<Id, List<Opportunity>>();
What are the different types of the trigger events?
Ans: An event in a trigger refers to a situation when the trigger gets fired.
Before Insert: Before inserting the record into the database, the trigger will be fired.
Before Update: Before updating a record which is fetched from database, the trigger will be
Before Delete: Before deleting the record, trigger will be fired.
After Insert: After inserting a newly entered record into database, the trigger will be fired.
After Update: After modifying the record and once it is saved to database, the trigger will be
After Delete: After deleting a record, if user needs to perform any action, he can fire the trigger
using this after delete event
After Undelete: Once the record gets deleted, it will be sent to recycle bin. So, a trigger can be
fired when user is moving back from recycle bin to its respective object and the transaction is

What are the types of Triggers?

Ans: There are two types of triggers.

Bulk Triggers
Recursive Trigger
Recursive Trigger:A Trigger that creates a new record as part of its processing logic; however, that
record may then cause another trigger to fire, which in turn causes another to fire, and so on.

What is difference between Trigger and Workflow?

Ans: Workflow: Inbuilt functionality, used on single object

Trigger: Used for complex business process in which multiple Objects can handle.
Ex: Using Workflow, Based on the criteria we mentioned on the parent record, we can do field
update on the parent only but not on child object

Interview Questions
Using Triggers, Based on the criteria we mentioned on the parent record, we can do field update
on child also
How many characters we can enter in the formula field? What will happen if we
exceed the characters limit?
Ans: we can enter upto 3900 characters in the formula field. If we exceed the limit, then it will
give the compilation error.

Can we include one formula field with in another formula field? What about the size?

Ans: Yes, we can include one formula field with in another formula field. It will calculate the
formula field characters which we included in formula field.

What is the actionFunction in the Visualforce pages?

Ans: <apex:actionFunction>:A component that provides support for invoking controller action
methods directly from JavaScript code using an AJAX request.
An <apex:actionFunction> component must be a child of an <apex:form> component.
Notes: <apex:actionStatus>: This component Is used for displaying different values depending
on whether its in progress or completed.

<apex:actionSupport>: A component that adds AJAX support to another component, allowing

the component to be refreshed asynchronously by the server when a particular event occurs,
such as a button click or mouseover.
<apex:actionPoller>: This componentspecifies a timer that sends an Ajax update request to according to a time interval that we specify.

What are the operations we can do using Data Loader?


What is the maximum size of the PDF generated on Visualforce attribute renderAs?

Ans: The maximum response size when creating a PDF must be below 15 MB, before being
rendered as a PDF.

What is difference between the and

Interview Questions
Ans: is the platform used to develop the applications in the salesforce is keyword used to search anything.

What is the difference between Data Loader and Import Wizard?

Data Loader

Import Wizard

It supports all the Standard Objects and

Custom Objects

It Supports Accounts/Contacts, Leads,

Solutions and Custom Objects

Supports upto 1 million records

Supports upto 50,000 records

Duplicates will be allowed

Duplicates will not be allowed

Have Batch Size

Dont have any batch size


What are the OWDs?

Ans: OWDs is used for restrict the access.Organization-wide default sharing settings give a
baseline level of access for each object and enable you to extend that level of access using

What is sharing rules?

Ans: Sharing rules represent the exceptions to organization-wide default settings. Using sharing
rules we can extend the access for the records.

At profile level what are the permissions we must give for OWDs does not work?

Ans: View All and Modify All permissions


What are Escalation Rules?

Ans: Escalation rules allow us to define automated actions when cases with specific criteria
are open after a specified period of time. They can help us to identify when cases have fallen
outside of an intended service level.
When escalating a case, we can choose to automatically notify a user, reassign the case to
another user or queue, or both.
Note: we can create Escalation Rules for only Cases object.

What is Email to Case conversion?

Ans: can automatically create a case when an email is sent to one of your
company's email addresses, such as This Email-to-Case functionality
auto-populates case fields from the content of each email. Forexample, an email subject
heading becomes a case subject. Email-to-Case or On-Demand Email-to-Case to efficiently
resolve and correspond with customer inquiries via email.

Interview Questions


What is a workflow?

Ans: Workflow rules allow us to automate the business processes for organization.

What is Email Template? How to design Email Template?

Ans: Email Templates determines the content of email which we will used to send through Email
Alert action.
There are four kinds of Email Templates:


When a workflow fires?

Ans: Workflows will contain Evaluation Criteria and Rule Criteria, Whenever the Rule Criteria is
true, then workflow rule will fire and it will occur actions that are associated with that workflow.

What is an Approval Process?

Ans: An approval process is an automated process that organization can use to approve records
in Salesforce. An approval process specifies the steps necessary for a record to be approved and
who must approve it at each approval step.

Interview Questions

An approval process also specifies the actions to take when a record is approved, rejected,
recalled, or first submitted for approval.
The Approval Process determines the delegated approver, if necessary. And it also determines if
users can edit records that are awaiting approval.
The Approval Process decides if records should be auto-approved or rejected.

What are the two different ways to create a workflow?

Ans:There are two ways to create a workflow:
a. Use Jump Start Wizard
b. Use Standard Setup Wizard


What is a Time Dependent Workflow?

Ans: In this kind of workflow rules, the actions that queue when a record matches the criteria,
and execute according to time triggers.

What are types of Workflow rules and what is the difference?

Ans: There are two types of workflow rules.

a. Immediate workflow rules
b. Time Dependent Workflow rules
In Immediate kind of workflows, the workflow actions will execute immediately whenever a
record meets the conditions specified in the workflow rule
Ex: can automatically send an email that notifies the users when a new account
is created with status = Invalidated immediately
In Time Dependent workflow rules, the actions that queue when a record matches the criteria,
and execute according to time triggers.
Ex: can automatically send an email reminder to the account team of a high
value opportunity is still open for ten days before the close date.

What are Tab Settings at Profile level?

Ans:There are three types of TAB Settings

Tab Hidden: The setting which is used to hidden the tab without an option to the user to turn
the tab back on.

Interview Questions
Default OFF: The setting used for a tab not to appear on the tab panel but still allowing a user to
access it by click on + sign on the tab panel
Default ON: Use this setting for a tab to be displayed on the Tab Panel.


What are the types of Tabs? What is the Difference between them?

Ans: There are three types of tabs:

Custom Object Tabs:
A custom tab is a user interface component that we create to display custom object data.
Web Tabs:
Display any external web based application or web page in a user interface tab
Visualforce Tabs:
It allows us to embed Visualforce Pages

What is LEAD conversion?

Ans:Lead qualification depends on business process and should have beendeveloped in conjunction
with both the marketing and sales team.
During lead conversion, new records are created for Account, Contact and Opportunity objects
where the account record name field will contain the Company Name fieldvalue from the lead, and
the contact record name field will be populated from theName field within the lead record.
Opportunities which are created upon lead conversion contain default values for the required fields,
where the Close Date defaults to the last day of the current quarterand the Sales Stage is set to the
first value in the Stage picklist.
To convert a lead, select the lead that is to be converted either by clicking on the Lead tab and
selecting from the list view or by searching and then clicking on Convert button onthe lead detail
page as shown next:

Interview Questions

Click on Convert
button here

The lead conversion screen will be displayed where we can check the owner of thenew records.
Here we can choose to send the record owner an automated notificatione-mail. We can also set the
status of the converted lead and also specify that a newtask is created for the record owner to act as
a follow-up task as shown next:

Before creating any new account or contact records, the Salesforce CRM application attempts to
match existing account and contact names and the name of the lead. Where there is a match, we
will have the option of selecting the existing records.
Click on Convert button.

What happens to a lead when it is converted?

Ans: When the Lead is converted, the Account, Contact and Opportunity (Optional) will be
created automatically by taking the values from the lead record.

What is custom object?

Ans:Custom Objects provide a structure for storing data.Custom objects are database tables
that allow us to store data specific to organization in We can use custom objects
to extend functionality or to build new application functionality.

Interview Questions


What are the different fields Created by default while creating an object?

Ans: By default for every custom object, four fields are created, those are:
Created By
Last Modified By
Record Name
Note: Created By, Last Modified By fields are used for audit fields and they are also called as System

What is the difference between custom object and standard object?

Ans:The objects provided by are called standard objects.

objects which we have created to extend the functionality are called custom objects.
Standard Objects
We cannot edit the standard objects
We cannot delete the standard objects
They dont have API Name



Custom Objects
We can edit the custom objects
We can delete the custom objects
They have API Name

What is a Profile?

Ans:A profile is a collection of settings and permissions that we define to access the records.
Profile controls a users permissions to perform different functions in salesforce. A profile can
have many users, but a user can have only one profile.
What is Role?
Ans: A Role controls the level of visibility of the data.

What does Profile Controls?

Ans: Profile controls the following:

Custom Apps
Page Layouts
Record Types
Field Level Security
Login Hours and IP

Interview Questions


Administrative, General and Object Permissions

What are the different Standard Profiles in Salesforce?

Ans:There are six (6) standard profiles:


System Administrator
Standard User
Solution Manager
Marketing User
Contract Manager
Read Only
What is a Pagelayout?

Ans:A Page layout determines how detail and edit pages are organized (field locations). Page
layouts are responsible for customizing page sections and which fields, related lists and custom
links are in a users view.

What does a Pagelayout controls?

Ans:Pagelayouts controls the following:

Fields view
Related lists
Column heads in the related lists
Custom links
Visualforce Pages


What is a Report?

Ans: A report returns a set of records that meets certain criteria and displays it in organized
rows and columns. Report data can be filtered, grouped and displayed graphically as a chart.
We must have Read permission on the records included in reports, otherwise when we run
them, they may be missing data or appear blank.

How many types of reports we can create?

Ans: There are four types of reports

Interview Questions

a. Tabular Report ----It provides a simple listing of data without subtotals

b. Summary Report ----It provides a listing of data like a tabular report plus sorting
(grouping) and subtotaling of data.
c. Matrix Report ----It provides a totals for both rows and columns
d. Joined Reports ---- A joined report can contain data from multiple standard or custom
report types. We can add report types to a joined report if they have relationships with
the same object or objects.

What are the different types of charts that can be added for a report?

Ans: There are different types of charts that we can add for a report:

Horizontal Bar Chart

Vertical Bar Chart
Line Chart
Pie Chart
Donut Chart
Funnel Chart
Scatter Chart

What is a Summary Report?

Ans: Summary Report provides a listing of data like a tabular report plus sorting (grouping) and
subtotaling of data.
Summary reports can be used to get subtotals based on the value of a particular field

Can a single Report be shared? If so how?

Ans: We can give the report access to the users through the report folder. Report sharing can be
done by creating a report folder and add the reports to the folder which we want to give access

What is Dashboard?

Ans: A Dashboard shows the data from source reports(Summary reports, Matrix reports) as
visual components, which can be charts, gauges, tables, metrics or visual force pages
Each dashboard can have upto 20 components.
Administrators control access to dashboards by storing them in folders with certain visibility
If we have access to a folder, we can view its dashboard.

Can we delete a junction object?

Interview Questions
Ans: Yes, We can delete the Junction Object


Generally for a developer which profile is given?

Ans: System Administrator Profile


Can we assign many Profiles for a single User?

Ans: No we can assign only one profile for a single user.


Can a User be created without a role?

Ans: Yes We can create a user without assigning a role.


Can a user be created without a profile?

Ans: No- we cannot create a user without assigning a profile.


What is Report Types?

Ans: Custom report types allow us to build a framework in the report wizard, from which users
can create and customize reports. We can build custom report types off of the relationships
(master-detail and lookup) between objects so that we can:


Choose which standard and custom objects to display to users creating and customizing
Define the relationships between objects displayed to users creating and customizing
Select which objects' fields can be used as columns in reports.
What is a Package and what are the types of Package?

Ans: Packages are a collection of components and applications that are made
available to other organizations through the AppExchange.
There are two types of packages:
a. Managed Package
b. Unmanaged Package
A managed package is a collection of application components that are posted as a unit on
AppExchange, and are associated with a namespace and a License Management Organization.
To support upgrades, a package must be managed.To support upgrades, a package must be
managed. An organization can create a single managed package that can be downloaded

Interview Questions
andinstalled by many different organizations.Managed packages differ from unmanaged
packages by having some locked components, allowing the managed package to be upgraded
Unmanaged packages do not include locked components and cannot be upgraded.


What is the format of the file identified in DATALOADER?

Ans: The Data Loader will support only .csv file because of its size is less than .xlsx file.


What are log files in Data Loader?

Ans: Log files are error and success files that are generated automatically in data loader for the
following operations:
a. Insert
b. Update
c. Upsert
d. Delete
Note:The log files cannot be generated automatically for the Export operation in Data Loader.


What is the difference between Task and Event?

Ans: Task: Represents a business activity such as making a phone call or other to-do items. In
the user interface, task and Event records are collectively referred to as activities.
Event: Represents a calendar appointment event

What is Developer Console or Anonymous block?

Ans: An anonymous block is Apex code that does not get stored in the metadata, but that can be
compiled and executed using the Developer Console.

How can we avoid the Governer Limitations?

Ans: By using Batch Apex



Ans: Pagination is the getting Previous and Next Links to move into previous and next pages.

What is Batch Apex? Whenwe go for the batch APEX?

Interview Questions
Ans: Batch Apexis used to build complex, long-running processes on the platform.
We can go for the batch apex when we face any Governor Limits.

Can we make a field mandatory in a Visualforce Page?

Ans: Yes, we can make the field required by using the Required attribute

What is the difference between PAGEBLOCK TABLE and a DATA TABLE?

Ans:<apex:pageBlockTable> :
A list of data displayed as a table within either an <apex:pageBlock>or <apex:pageBlockSection>
component, similar to a related list or list view in a standard Salesforce page.
<apex:dataTable>: It will also displays the data as a table, but look and feel will be different.

General Questions:
Ans: Cloud computing is the concept of accessing infrastructure, platform and software as a
service over the internet by paying the each use of the IT service.
Cloud computing is a crowd/group of unknown resources that are giving for a special
purpose to the user.
2. How Cloud Computing is suitable for your organization?
Ans: We have several Advantages using the cloud computing:
It reduces the cost
Increased Storage
Flexibility No need to install any software and no need to buy any licenses.
We can access from any location
Low maintenance and Low Cost
Salesforce adds extra features for every release.
3. What does Salesforce provide you? (Different services provided by Salesforce.)
Ans: There are three types of Services that are provided by Cloud:
a. IAAS (Infrastructure as a Service): Accessing Infrastructure such as Application
server, storage server over the internet is called IAAS.
b. PAAS (Platform as a Service):It is the concept of accessing a platform such as any
programming language on which an application is built.
c. SAAS (Software as a Service):It is the concept of accessing a software application
over the internet is called SAAS.

Interview Questions
4. What is
Ans: is the platform which is provided by the Salesforce used to develop the
5. What is AGILE methodology?
Ans: It is a process of moving development into Production for every two weeks.We will
update everyone tasks by themselves in the Scrum call (not more than 10 min call) which
will run by Scrum Master
6. What are the different Editions of Salesforce?

Contact Manager
Group Edition

7. Which edition do you use in your organization?

Ans: Unlimited Edition
Note: The client will choose the type of edition based on his business.
8. What are the standard objects in Salesforce?
Ans: The Salesforce provides the following objects, so they are called Standard Objects
a. Accounts
b. Contacts
c. Opportunities
d. Leads
e. Cases
f. Solutions
g. Campaigns
h. Products
i. Forecasts
j. Contracts
k. Users
l. Reports
m. Dashboards
9. What are the Standard Applications Provided by Salesforce?

Interview Questions
Ans: The following applications provides by the salesforce

Call Center

10. Who are leads?

Ans: A Lead is any person, Organization or company that may be interested in our products.
Sometimes leads are preferred to as products or suspects. Leads are not yet Customers.
11. What is a Campaign?
Ans: A Campaign is any marketing project that we want to plan, manage and track in
12. What is an Opportunity?
Ans: An Opportunity is any potential revenue-generated event (Sales deal) that we want to
track insalesforce
13. What is an App?
Ans: An application is a logical container for all of the objects, tabs, processes and services
associated with a given business function.
An Application is group of tabs that work as a unit to provide functionality
14. What is a standard field created automatically by when we create a object? What are
different options available while creating a standard field for a object?

Ans: The field Record Name will be created automatically while creating an object. The
options are:
Auto Number
Questions on Navigations:

15. How to create acustom app?

Ans: Path for creating custom app:
Your Name Setup App Setup Create Click on Tabs

Interview Questions

16. Creating a Custom Object?

Ans: Path for creating a Custom Object:
Your Name SetupApp Setup CreateClick on Objects
17. Creating the fields.
Ans: Path for creating for both standard and custom objects
For Standard Objects:
Your NameSetupApp Setup Customize Select the standard object Click on Fields
Go to the Custom Fields & Relationships section Click on New button
For Custom Objects:
Your NameSetupApp SetupCreate Click on Objects Click on the Object
NameGo to the Custom Fields & Relationships section Click on New button
18. Creating the user?
Ans: Path for creating a user:
Your NameSetup Administration Setup Manage Users Click on Users Click
on New User button

19. Creating the Profile?

Ans: Your NameSetup Administration Setup Manage Users Click on Profiles
Click on New Profile button
20. Creating a Page layout?
Ans:Path for creating a Page Layout:
Your NameSetupApp Setup Customize Select the standard objectClick on Page
Layouts Click on New button
For Custom Objects:
Your NameSetup App Setup Create Click on Objects Click on the Object
NameGo to the Page Layouts section Click on New button

Interview Questions

Interview Questions