1. Describe different types of objects in Salesforce.
In Salesforce, objects are the database tables that store the information. Salesforce has two types of objects. These are standard object and custom object Standard objects are the ones which are developed and provided by Salesforce. This includes accounts, contacts leads, opportunities, campaigns, cases, products, dashboards, etc. On the other hand, custom objects are those objects which can be developed as well as created by the users. These objects are often created to store org specific information.
2. What is the difference between a role and a profile?
Profiles in Salesforce is used for controlling object-based privileges. This includes privileges such as Create, Read, Edit, and Delete. Profiles also define system based permissions that the user is entitled to. One example of such kind of permission is exporting data. On the other hand, Roles define how the records can be shared across the organization. Roles are defined hierarchically. That means roles with higher-order at hierarchy can view the records of the people who are lower in a hierarchy or are located under them.
3. What the different types of object relationships in Salesforce?
In Salesforce, we have three types of relationships. These relationships are:
- Lookup Relationship: This kind of relationship is used for linking two objects. This kind of relationship creates a child-parent relationship between the two objects.
- Master-Detail Relationship: This kind of relationship creates a more tight knitted relationship between the parent and child. In this case, the child record automatically inherits the security properties for the parent. In case the parent is deleted, the associated child records will be deleted automatically. This kind of relationship adds additional features, such as roll-up summary fields.
- Many to Many Relationship: In this type of relationship, those objects are used which has two master-detail relationships to two distinct parent objects.
4. What is an App in Salesforce?
In Salesforce, an App can be viewed as a container that holds multiple other objects, such as name, log along with the tabs. Apps are also referred to as “Group of tabs”, which are developed for specific functionality. Apps are often created to meet a specific requirement of an organization. We can easily create an app, by going to the Setup option. From there we can go to the build option, to create an app.
5. Can a salesforce profile assign to more than one user?
One profile can be assigned to more than one user. A good example is sales and services profiles, which can be assigned to the complete team, as both the profiles are required by the team. This can be done by altering the permission sets.
6. What do you understand by the Governor's limits?
Governor limits are used to define the extent of data or number of records that can be stored in the shared databases. This is important, Salesforce is built on a multi-tenant architecture. Salesforce utilized one single database for storing the data for the multiple organizations. By setting the governor limits, Salesforce ensures that none of the organizations get into any monopolistic practices. Some of the common governor limits that are used are:
- Force.com platform apex limits
- Per-Transaction apex limits
- Static apex limits
- Push notification limits
- Email limits
7. What is a different kind of reports available in Salesforce?
In Salesforce, we have four types of reports. These are:
- Tabular report: Reports are generated in tabular format.
- Matrix report: In this format of the report, the grouping is done base on the rows and columns.
- Summary report: It provides a detailed report based on columns.
- Joined report: In this kind of report, two or more reports are joined to create a summarised report.
8. What is Audit Trail?
An audit trail is used for tracking the changes that have been made in the Org by different administrators and other users. It is an option specifically helpful to the administrators to track any form of change. The audit trail will show the last 20 changes that ha been made to the org. The audit trail will highlight the date & time of the change, who made the change, and what that change resulted in.
9. What are the key benefits of Salesforce?
Key benefits of the Salesforce platform are:
- Better customer management, partner management, and sales management with premium CRM features.
- Improved communication with the stakeholders.
- Better services to the customers.
- A better understanding of the organization.
- Automation of the rule-based tasks.
- Improves the overall efficiency of the team.
10. Describe the utility of SOQL?
SOQL is the Salesforce object query language, which is based on the popular query language SQL. SQL is used for querying the databases. SOQL is used for querying the objects in Salesforce, for accessing the Salesforce data and retrieve the data. SOQL is used with Visualforce and Apex, to access the specified data.
11. Are the Salesfore.com and Force.com same?
No, they are not the same. Salesforce.com is purely a SaaS (Software as a service) platform that is made of prepackaged apps and solutions. But, Force.Com is a PaaS (Platform As a Service), on which Salesforce.com is built. Force.com provides the platform for building applications. So, a developer can build his applications on the Force.com and can integrate them with the Salesforce platform.
12. What is the importance of bucket fields in Salesforce?
Based on requirements, often multiple field values need to be grouped. This grouping is done with the help of the bucket fields. However, bucket fields are not created on the Salesforce platform, rather they exist with the report itself.
13. What is Apex in Salesforce?
Apex is an object-oriented programming (OOP) language that can be used by the Salesforce developers for developing customized extensions on salesforce, as per the business logic of the organization. Apex is prototyped on Java and gets triggered by the user-initiated events.
For example, we want something to happen after a record update, we can do that with the help of Apex extensions.
14. How can you deploy from a Sandbox environment to a production environment?
We can do this in different ways, however, the best way to do this is by using changesets. Changes sets help in packaging up the components and then deploying these packages in a different salesforce org. Different methods can be deployed to do this, such as Force.com IDE and ANT Migration tool.
15. What do you mean by a Sandbox Org in Salesforce?
A Sandbox environment is not a production environment, but a copy of the production environment on the Salesforce platform. It is used for testing and development of the components, before deploying them in the production environment. Ideally, when we develop a new component on Force.com, it is first deployed in a Sandbox environment for testing, and only if the developed component meets the criteria then it is deployed in the production environment.
16. Name the different types of environments in Sandbox org?
There are four different types of environments available in Sandbox org. These are:
- Developer Pro
- Partial Copy
17. Why visualforce pages are triggered by a different domain?
Visualforce pages are served from a different domain, not from the same domain where the salesforce org is located because to improve and enhance the security standards. This also prevents block cross-site scripting.
18. Describe the email templates in Salesforce?
Different email templates are elaborated below:
- HTML with letterhead: This template is used by the administrators or any users having the “Edit HTML Templates” permissions. This template is based on a predesigned letterhead.
- Custom HTML: This template is used by the administrators or any users having the “Edit HTML Templates” permissions, without using a letterhead.
- Visualforce: This template is used only by the administrators and the developers. It has got certain advanced functionalities such as data to merge from different records.
19. What are the dynamic dashboards in Salesforce?
Dynamic dashboard displays data that is customized to a particular user. For example, a sales manager wants to view the report that has been generated particularly for one of the users. In simple words, dynamic dashboards are used for displaying user-specific data. If the data is not user-specific, such an org-wide data, we can use static data.
20. What happens to a detailed record, when a master record is deleted?
In a master-detail relationship, if a master record is deleted, then it will automatically delete the detailed record. In the case of a lookup relationship, the deletion of the parent record will automatically result in the deletion of the child record.
21. Do we have a roll-up summary field with a Master-Detail relationship?
Yes, we can certainly have a roll-up summary field with a Master-Detail relationship. However, this is not true in case of a lookup relationship. With the help of the roll-up summary filed, we can display the value in a master record that is based on the values taken from a set of fields, in the detail record.
22. What is data skew in Salesforce?
Data Skew is used for a large set of records or massive data sets. This large number of records can be owned by a single user, which can be termed as “ownership data skew”. Whenever the user performs the updates, there will be visible performance lag because of the data skew. Thus, we can refer to this as a condition, when a single user holds the most number of records, for a particular object.
23. What do you mean by a skinny table?
We can use skinny tables for accessing the frequently used fields, and further to avoid joins. The skinny table is used for performance improvement. This kind of table is highly effective in day to day operations, reducing the performance lag. However, skinny tables can have only 100 columns and it cannot contain fields from other objects.
24. Name the fields that are automatically indexed in Salesforce?
These fields are:
- Primary Keys
- Foreign Keys
- Audit Dates
- Custom Fields
25. Explain the functionality of custom labels in Salesforce?
Custom labels can take in custom text values that can be accessed from the Visualforce pages and Apex classes. These input values can be easily translated into any of the Salesforce supported languages. Developer often uses custom labels for developing multilingual applications that are automatically translated into the native language of the user. We can create up to 5000 custom labels.
26. What is the use of external IDs in Salesforce?
In Salesforce, external ID is a custom filed. This field acts as a unique identifier in a record. Admins use external IDs for importing records or data from an external source. While importing records, one of the fields is marked as an external ID. Custom fields in Salesforce can be used as external IDs. External ID can contain text, email, number, and Auto_number.
27. Distinguish between a standard controller and a custom controller?
In Apex, the standard controller inherits the complete set of standard object properties, along with the standard button functionality directly. In that case, it will have similar functionalities and similar kind of logic which the Salesforce pages have. On the other hand, the custom controller implements the complete logic for a particular page, without leveraging the attributes of the standard controller. The custom controller gets associated with the Visualforce page, with the help of the controller attribute.
28. What is a workflow in Salesforce?
In Salesforce, specific business processes can be automated with the help of workflows. To automate the business processes one needs to define the rules and regulations. For example, if a record is created it should send an email to a specific set of recipients. One way is once the record is created, manually someone has to send an email. Another way is to automate the process.
29. What is a self-relationship?
The self-relationship is referred to as a personal lookup of the same object. This kind of relationship takes the form of a tree diagram of the objects. For example, there is a brand with two customers. Then in this case there will be a self-relationship
30. What are the permission sets in Salesforce?
Permission set refers to a set of permissions that defines the functional access of users, without even changing or altering the profiles. Permission sets are used by administrators to extend the functional access of specific users. It is a time-saver, as it saves the admin to create a completely new profile.
31. What do you mean by Fiscal Year in Salesforce?
The fiscal year in Salesforce is referred to as the start date and end date of a financial year. In Salesforce, we have two types of the fiscal year, standard fiscal year, and custom fiscal year. The standard fiscal year follows the Gregorian calendar year, and the first day of the year can start from any month. In the custom financial year, the financial year can be customized as per the requirements.
32. When the Apex triggers get triggered?
Apex triggers get triggered either before a specific record is saved or after a record is saved. A good example is verifying the information before a record is saved. This can be easily done with the help of the triggers. While post saving the data if any action needs to be executed, then it can be done with the help of after triggers.
33. Describe the Apex email service.
The headers, contents, and the attachments can be easily processed by the Apex email services, for all the inbound emails. A good example will be creating the records for the contact, as soon as an email is received. This will make sure that all the inbound emails will have a specific contact record.
34. What is a lightning component?
The lightning component is a UI framework that can be used for developing dynamic web-based apps for mobile as well as desktop platforms. It is the most preferred platform for building single-page applications. This framework support partitioned multi-tier component development which creates a bridge between the client and server.
35. Distinguish between record types and page layouts.
The page layout defines where the fields, sections, and other components will be displayed to a particular user. The record type further enhances the customization by defining the business processed for the record type.
36. What is a connected app in Salesforce?
The connected app is used for integrating an application with the Salesforce platform using the APIs. This is done with the help of SAML and OAuth protocols, that authenticates the application with SSO (Single Sign-On) mechanisms. OAuth also implements multiple security policies that can be utilized by the admins to strengthen the platform security.
37. When should we use Salesforce connect?
Salesforce connect can be used for utilizing the external objects. Often external objects are used for integrating the real-time information to the Salesforce platform, and this is done without even utilizing the storage limits in Salesforce. For example, information required from large databases can be easily integrated without importing the complete database.
38. When do we use a junction object in Salesforce?
A junction object is used for creating many to many relationships in Salesforce. A good example of this will be hiring an application, that is linked to many different candidates. Similarly, one candidate can apply for many positions in the company. This is a perfect many to many examples.
39. How Salesforce track the sales details?
Salesforce provides multiple information when it comes to tracking sales. First of all, it provides the data on the number of customers served daily. It also provides a regular number of sales for each of the days. Apart from that, it provides valuable sales reports to the sales manager.
40. Why should you use Apex Programming language?
Apex programming language is easy to use, with easy structure and syntax. It is also easy to test. Another key reason why you should prefer Apex Programming language is, it’s a multi-tenant aware application. Moreover, we can use SOQL to query other salesforce objects. It provides built-in support to DML calls.
41. How many types of SOQL statements are there in Salesforce? What are they?
In Salesforce, we have two types of SOQL statements, Static SOQL, and Dynamic SOQL. The SOQL is written in the array brackets . These statements are similar to the Ion Integrated query. Dynamic SOQL refers to the creation of a SOQL string at runtime with the Apex code. With the help of this more flexibility can be added to the application.
42. Explain about the AppExchange directory?
AppExchange directory is a web-based directory where numerous AppExchange apps are available to Salesforce users as well as customers. These apps can be reviewed, requested for a demo, and even installed in the Org. Developers can develop apps and list them in the AppExchange directory so that they can be shared with the community.
43. What is the difference between a trigger and a workflow?
Workflow is used for automating a particular process based on certain evaluation criteria. Workflow can be accessed across the object. However, workflows cannot query the database. On the other hand, a trigger is a code which gets executed before or after the insertion or update of records.
44. Can you edit a Visualforce page in a production environment?
We can edit a visualforce page in a production environment, just like we do in a sandbox environment. However, there is a limitation in the production environment. We cannot add any unique values, which can be done only in the sandbox environment.
45. Name the components which can be customized within the page layouts?
In the page layouts, we can perform customization of the page objects or the records. This is often done for the personalization of the page, as per the user requirement or business requirement. This customization can be done with the help of a page layout editor. Some of the things which can customized include fields, buttons, related lists, and custom links.
46. Describe the important Salesforce dashboard components.
Key components of the Salesforce dashboard are:
- Gauge: Gauge is used for showing a single value with a specified range of custom values.
- Metric: Metric is used for displaying a single key-value pair.
- Table: Report data can be shown using a Table format.
- Visualforce Page: This is used for creating custom components or displaying certain information, which is otherwise not available in the other component types.
47. Explain the usage of a wrapper class in Salesforce?
A wrapper class is a container class that contains multiple objects within itself. It is also referred to as an abstract data type. Wrapper class can be used for wrapping or enveloping the collected data. It is considered as a custom object within a program.
48. Name the potential caused of data loss in Salesforce?
Some of the key reasons that can lead to data loss are:
- Alteration of date and time.
- Importing corrupted data.
- Converting certain parameters from other number types.
- Alteration of auto number and checkbox.
- Modification of multi-select picklist to other types.
49. What do you understand by an Apex transaction in Salesforce?
Apex transaction refers to a group of operations, that is grouped as well as executed as a single unit. Examples of such operations include DML operations which are used for querying the records. In this case, either the transaction is completed successfully, or it will be rolled back completely in an event of an error.
50. Distinguish between the Getter() and Setter() method.
get() or the getter method is used for passing the values from the controller to the VisualForce page. While the
set() or setter method is used for setting the value back to the controller variable.