Deck1 Flashcards

1
Q

What is the difference between a role and a profile?

A

Profiles are both features that can be added to a user record in Salesforce. Roles are optionally added while Profiles are a basic requirement of setting up a user.

Profiles help to control object privileges such as CRED (Create, Read, Edit, Delete). They also contain system permissions that a user can carry out such as exporting data.

Roles on the other hand help with sharing records across an organisation. They work in a hierarchical fashion, giving users access to records that are owned by people lower down in the hierarchy.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Can you name three types of object relationships available in Salesforce?

A

There are three main relationship types 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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is SOQL used for?

A

SOQL stands for Salesforce Object Query Language. It is very similar to the widely used language SQL (Structured Query Language), to query databases. SOQL is specifically designed for Salesforce data and is used to query the Salesforce platform to retrieve data. SOQL is used within Apex & Visualforce to return sets of data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What’s the difference between Salesforce.com & Force.com?

A

Salesforce.com is SaaS(Software-as-a-Service) product while Force.com is a PaaS product (Platform-as-a-Service). Salesforce.com has a selection of prepackaged solutions such as the Sales & Service Cloud that are designed for a specific purpose. While Force.com allows you to build your own applications. Salesforce.com is built on the Force.com platform.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q
  1. What options are available to you for deploying from a Sandbox to Production?
A

There are various ways to deploy from Sandbox to Production. The main way is to use a Salesforce feature called Change Sets. These allow you to package up components and then deploying them to another Salesforce Org. There are various other methods including ANT MIgration Tool, Force.com IDE and Unmanaged packages.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

How are bucket fields used in Salesforce?

A

Bucket fields can be used in Salesforce reports to group together field values. These fields are not created on the Salesforce platform and only exist in in the report itself.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is Apex?

A

Apex is a strongly typed, object-oriented programming language that allows developers to extend the Salesforce platform by writing their own business logic into the platform. Apex looks similar to Java and can be launched through a variety of user-initiated events such as record updates, button clicks, triggers on objects, or external web service requests.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Can you customize Apex & Visualforce directly in a production org?

A

Apex cannot be customized in a production Org, it must be changed and deployed through a sandbox and meet test coverage. Visualforce, on the other hand, maybe customized directly in production (Although this is not best practice).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are the two options for when Apex Triggers can run?

A

Apex Triggers can either run before a record has been saved of after. A “before” operation is usually used to verify information that is going to be inserted, and an “after” trigger is used to access data that has previously been entered by a user or system.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

When should Apex be used over Workflow rules or Process Builder?

A

There are various reasons why you should use Apex over declarative automation options:

Workflow rules and Process Builder operations sometimes have feature limitations that can be overcome with Apex. For example, pulling information from an external system.

When dealing with certain or large sets of data, Apex can be more efficient than declarative options due to less limitations.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are Governor Limits? Name 3 examples?

A

Salesforce runs on a multitenant environment which means resources (Storage, CPU, Memory) are shared with other companies on the Salesforce platform. This means limits must be in place to ensure that all companies using the Salesforce architecture abide by certain rules and don’t let their code or processes monopolize shared resources.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Governor Limits: Total number of records retrieved by a SOQL query

A

50,000

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Total number of SOQL queries issued

A

100 (Synchronous) 200 (Asynchronous)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Total number of DML statements issued

A

150

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Total number of callouts (HTTP requests or Web services calls) in a transaction

A

100

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Maximum CPU time on the Salesforce servers

A

10,000ms (Synchronous) 60,000ms (Asynchronous)

17
Q

What is Apex test coverage? What’s the minimum test coverage required to deploy?

A

To ensure that your code meets certain standards, Apex Code coverage shows you how many executable lines of code in your classes and triggers have been exercised by test methods. Code coverage percentage is a calculation of the number of covered lines divided by the sum of the number of covered lines and uncovered lines. The minimum test coverage required to deploy to production is 75%

18
Q

Best Practice 1: What does Bulkify your Code mean?

A

Bulkifying Apex code refers to the concept of making sure the code properly handles more than one record at a time. When a batch of records initiates Apex, a single instance of that Apex code is executed, but it needs to handle all of the records in that given batch. For example, a trigger could be invoked by an Force.com SOAP API call that inserted a batch of records. So if a batch of records invokes the same Apex code, all of those records need to be processed as a bulk, in order to write scalable code and avoid hitting governor limits.

19
Q

Name 3 examples of Apex Best Practices:

A

Bulkify your code
Avoid SOQL Queries or DML statements inside FOR Loops
Avoid Hardcoding IDs

20
Q

Best Practice 2: Avoid SOQL Queries or DML statements inside FOR Loops

A

Move any database operations outside of for loops. If you need to query, query once, retrieve all the necessary data in a single query, then iterate over the results. If you need to modify the data, batch up data into a list and invoke your DML once on that list of data.

21
Q

What is an Apex Email Service?

A

You can use email services to process the contents, headers, and attachments of inbound emails. For example, you can create an email service that automatically creates contact records based on contact information in messages

22
Q

What are the different type of Collections you can have in Apex?

A

Lists
Sets
Maps

23
Q

What is Visualforce?

A

Visualforce is the component-based user interface framework for the Force.com platform. The framework includes a tag-based markup language, similar to HTML. Each Visualforce tag corresponds to a coarse or fine-grained user interface component, such as a section of a page, or a field. Visualforce boasts about 100 built-in components and a mechanism whereby developers can create their own components.

24
Q

What is a Static Resource?

A

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.
https://developer.salesforce.com/docs/atlas.en-us.pages.meta/pages/pages_resources.htm

25
Q

What is the difference between a standard and custom controller?

A

Standard Controllers are generated automatically for all standard pages. They provide you with all the functionality that a standard page contains, such as editing or saving a record.

Custom Controllers can be written by a developer to override the standard functionality that a standard controller provides on a Visualforce page.

26
Q

What is a Lightning Component?

A

The Lightning Component framework is a UI framework for developing dynamic web apps for mobile and desktop devices. It’s a modern framework for building single-page applications engineered for growth. The framework supports partitioned multi-tier component development that bridges the client and server. It uses JavaScript on the client side and Apex on the server side.

27
Q

How are sharing rules used in Salesforce?

A

Sharing rules can be set up in order extend sharing, and to grant users access to a set of records depending on a defined criteria. A sharing rule can beset upp to extend sharing to a profile, role or public group depending on either the owner of a record, or a field value. You can either assign Read-Only access to these users, or Read/Write access.

28
Q

Can you explain the use of custom settings?

A

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. You can use custom settings to store a variety of information that can be accessed easily by other Salesforce tools.

29
Q

Explain the use of a roll-up summary field and where it can be used

A

Roll-up summary fields can be used to calculate information based off of a parent records child records. While a formula field can calculate information within a single record, roll-up summary fields can calculate data from a set of child records. For example, a roll-up summary field could be used to calculate the total value of all closed won opportunities on an account. Roll-up summary fields can only be used on a master-detail relationship.

30
Q

What’s the difference between Record Types & Page Layouts

A

Whilst 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. See a full description of the differences here.

31
Q

Explain the use of an Outbound Message?

A

An outbound message is one automation function that can fire from a workflow rule. They can send a message to external web services which can contain field values, this can subsequently kick off additional processes in external systems.

32
Q

hat is OAuth?

A

OAuth is an open standard for access delegation, commonly used as a way to grant websites or applications access to their information on other websites, but without giving them the passwords.

33
Q

What is a Connected App?

A

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.

34
Q

Can you give an example of a Salesforce API and it’s usage?

A

Salesforce has a variety of API’s that let you interact with the system in different ways..

REST – The REST API lets you integrate with Force.com applications using simple HTTP methods in either XML or JSON formats, making this an idea API for developing mobile applications or external clients.

Bulk – The Bulk API provides a programmatic access that lets you quickly load data into your Salesforce organisation.

Streaming – The Streaming API can be used to receive notifications for changes to Salesforce data that match a SOQL query you define. Streaming API is useful when you want notifications to be pushed from the server to the client based on criteria that you define.

35
Q

What are External ID fields used for?

A

Certain fields can be defined as an external ID on an object. These can be used in order to match up data from external systems with a unique reference ID. For example, if you need to match up data from an external accounting system to the Accounts in Salesforce, you can use an external ID field to reference the Accounting systems unique ID instead of the Salesforce ID.

36
Q

What is a use case for Salesforce Connect?

A

Salesforce Connect is a product that utilises external objects. External objects allow you to integrate information into Salesforce in real-time, but without actually utilising Salesforce storage limits. An examples of using Salesforce connect could be to integrate a large database that houses transaction history against an account. This history would be viewable and reportable in Salesforce, but without utilising the large amount of storage it would take to the house.