Business Logic and Process Automation Flashcards
What is a Record Type?
Defines the:
- page layout (i.e. fields)
- picklist values
- business process
for assigned records
What are some limitations of record types?
- Picklist fields that are used for business processes cannot be used for record types.
- A record type that is referenced in Apex cannot be edited/deleted
- Orgs may have difficulty managing over 200 record types
Can a user view several different page layouts for a single object?
Yes, but only can view one if no record types are defined
How are record types assigned?
- Profile or permission set
- gives access to create or edit
- all users can view record and assigned page layout, even if a given record type is not assigned to them.
What is the difference between a Master and a Custom record type?
- Each object has a Master record type that is system created
- All other manually created record types are custom
If a Master record type is selected in a profile, can custom record types be included? What about if a Custom record type is selected, would Master still be available?
No, no custom types would be available
No, only the other custom record types
Can a permission set grant access to Master record types?
No
What do record type access in profiles and permission sets control?
the creation and editing of specific record types
Is it true that users can view records of any record type? (as long as they have access to the object)
Yes
What is the high level purpose of record types?
Meant to improve data quality by avoiding unnecessary creation of multiple custom objects that serve very similar purposes
What determines whether the default record type will get used automatically?
The default record type preference setting in the User Settings
How do you specify the picklist values for a record type?
By choosing a subset of picklist values for each one
Do values added to a master picklist for an object automatically get added to each custom record type?
No, if you add a new value to the master, you must add it to each applicable custom record type.
What happens when you remove a value from a master picklist for an object –> For New and Existing records?
New: the value will no longer be an option
Existing: a selection is made to either replace the value or set it to blank
What is the impact of deactivating a value on a master picklist?
The old values on existing records can still be maintained.
Can one page layout be assigned to every record type? (even if profiles don’t have that record type assigned to them?)
Yes, this is because users who have access to the object are able to read records of any type, so one can configure and assign a page layout with specific fields to each record type.
Can page layouts be assigned through permission sets (for record types)?
No, when access to a record type is granted through a permission set, the user gets the page layout that is assigned to that record type through their profile, which cannot be modified.
What are the 4 business processes and the picklist fields that drive them?
Lead –> Lead Status
Opportunity –> Opportunity Stage
Case –> Case Status
Solution –> Solution Status
Is it true that if you are creating a custom record types for Leads, Opps, Cases, or Solutions that you must first predefine it?
Yes, and then associate to its record type
(Not all objects that support different record types need business process, but every business process needs a record type associated with it)
Scenario: How would you ensure that an account record is not edited by users once it has external ID associated?
- Create a “read only” record type and read only page layout (all fields marked as read only).
- Have a workflow rule update the record type field to the read only record type when the external id value has been populated
- You would not assign it to any profiles but activate it. This will ensure that users cannot pick it.
- The account name field is a standard field that would remain editable in this scenario but you could use a validation rule that prevents edits on “read only” record types.
What field types can have formulas?
- Checkbox
- Currency
- Date
- Date/Time
- Time
- Number
- Percent
* all numbers and boolean
How many relationships away can a cross object formula reference?
up to 10
What are formula fields and when do they calculate?
They are read only and calculate when one of the fields it is referencing is changed.
What type of field and relationship of the object is a roll-up summary used?
It is a custom field and can only exist on the master record in a master-detail relationship
What are the types of calculations that a roll up summary can do?
COUNT
SUM
MIN
MAX
What are some of the standard objects that have a roll up relationship?
Opp to Opp Product
Account to Opp
Campaign to Campaign Member
What are some implications of the roll up summary fields?
- It is not possible to convert a master-detail to a lookup relationship if there is a roll up summary on the parent object
- Roll up summary fields are not available for mapping lead fields of converted leads
- It is not possible to aggregate Autonumber fields with roll up summary
- It is not possible to use a roll up summary as the location of an error in a validation rule
What is the maximum number of roll up summary fields per object?
25 (but can increase to 40 by creating salesforce support ticket)
What are some field types that a roll up summary can’t be used?
- The field being rolled up cannot:
1. Reference another object
2. Use dynamic date functions like NOW() or TODAY()
What are some strategies for overcoming limitations of roll up summary fields?
- Roll up helper from AppExchange
- Batch/Scheduled Apex
- a trigger on DML evens on the child object
- Process Builder or Visual workflow can be used.
When do validation rules fire?
Before saving a record (creation and update)
What field types can validation be applied to?
Both standard and custom fields on standard and custom objects
When does a validation rule show its assigned error message?
When the formula it executes evaulates as True
Can you clone a validation rule? What is a common reason why a validation rule isn’t working?
Yes
It has not been activated yet.
Are validations rules enforced during lead conversion?
only if validation and triggers for lead conversion are enabled
Are validation rules run for records created via Web-to-Lead and Web-to-Case?
Yes
What are other mechanisms that can cause records to fail validation?
- Assignment rules
- field updates
- field-level security
- fields hidden on page layout
- API call
Which mechanisms don’t trigger validation rules?
- Workflow rules
- Processes
- Quick Create
What are some use cases for validation rules?
- prevent incomplete records
- ensure appropriate value ranges
- ensure proper formatting
- check validity based on another field
- checking type of value
- checking cross object validation (i.e. same product family)
- ensure a standard field is not blank (make it required)
What is the difference between assigning the default record type at the profile level or as a user setting?
If the record type is set to default at profile level, user is still prompted to select which record type.
If the default record type is set at the user setting level it is used automatically.
A field does not display any picklist vaues, even though picklist values exist. What could cause this?
The object has record types defined and no picklist values were added to the field for the record type
What happens to picklist values of a record type if a value is removed from the master picklist?
No new records will have that option and existing records will have a prompt to either replace value or leave blank.
What does record type access control?
Record type access controls which record type is used when a user creates or edits a record. Users can view records of any type if they have read access to the object.
Where is record type access assigned?
At the profile or a permission set
What are the three reasons for using a record type?
- Supporting different business processes
- Showing different page layouts based on record type/profile combo
- Displaying different picklist values on the same field, depending on record type
Which operator connects two or more strings?
& (concatenate)
Which data types can be returned by a formula field?
- Text
- Number
- Currency
- Checkbox
- Percent
- date/date-time/time
What are the high level categories of formulas used in formula fields?
Date and Time Logical Math Text Advanced
What is the REGEX function commonly used for?
Formatting (i.e. SSN)
Where can errors from validation rules appear?
top of page or next to a given field.
What does the CURRENCYRATE function do?
used to return the conversion rate to corporate currency for a given currency ISO code
What formula would be needed to add 6 months to a custom field titled start_date__c?
ADDMONTHS(start_date__c, 6)
Where is a manager configured when using the approve by manager option for an approval process?
The assigned manager configured on a users record detail.
What are the options when multiple users are designated as approvers?
Unanimous
First Response
What are the four main actions that can be done on an approval?
- Email Alerts (specify upto 5 additional external besides SF users)
- Creating Tasks
- Field Updates
- Outbound Messages
* *record can also be locked/unlocked
Who can an approver be?
- User or Queue that the user chooses manually
- A user, users, related users, or a queue created by admin (upto 25 users per step) that admin defines
- The designated Manager
- A delegated approver
What are the steps for creating an approval process?
- Specify entry criteria
- Specify approver field and record editability
- Select Email/Chatter post notification template
- Configure Approval Request Page Layout
- Specify Initial Submitters
What are the steps for Adding Approval Steps?
- Specify criteria to enter step
- Specify action if records don’t meet criteria
- Specify who must approve at this step
- Specify rejection actions
- Specify approval actions
How do you specify Approval Actions?
- Define actions for initial submission, final approval, final rejection, and recall
- All actions can include:
- Create a task
- Email Alert
- Field Update
- Outbound Message - Record is locked by default on initial submission
- Record is unlocked by default on recall
- Record can be locked/unlocked on final approval/rejection
What does the record editability option do in an approval process?
allows the assigned approver to and admin to edit a locked record that has been submitted for approval.
What is the email template used for during approval process setup?
The email template used to notify approvers of a record that is pending approval
What are some limitations when approving from the salesforce mobile app?
Approval requests cannot be:
- recalled
- reassigned
- record cannot be unlocked
Is Chatter approval only supported for approval processes w/ an object that has been enabled for Feed Tracking?
Yes
Approval Request Scenarios – Management wants to take PTO requests from emails and put them into Salesforce, with management and HR still approving records
Create a two-step approval process. First step should be assigned to the user’s manager and the second to HR. Use email alerts to notify employee once approved.
Approval Request Scenarios – When the opp amount is reduced, the sales lead wants to approve before it can be sent to a customer.
Create an approval process with entry criteria of opp amount less than previous value. Direct approval to sales lead. Set a field update for approval, and create a validation rule that cannot be sent to customer unless status is approved.
Approval Request Scenarios – To help ensure new sales people are quoting projects correctly, management has suggested that all employees of less than 6 months need their manager’s approval on any new quotes.
Create an approval process where entry criteria is created by user’s start date is greater than TODAY - 180 days. Make the approval go to their manager. Set a field update for approval, and create a validation rule that cannot be sent to customer unless status is approved.
Approval Request Scenarios – Before a new product can be used in quotes, it must be approved as a carried product.
Create an approval process that updates the status of the product to approve. Create a validation rule that quotes cannot have products without a status of approved.
Any new campaign must get approval from Marketing to ensure that it is appropriate for business goals and Finance to approve budget.
Create a two-step approval process directed to Marketing and then Finance.
What are the main areas you can add actions for an approval process?
- Initial Submission Actions
- Each Approval Step (Approval Actions and Rejection Actions)
- Final Approval Actions
- Final Rejection Actions
- Recall Actions
Is it possible for a workflow to update a field with invalid value?
Yes, because workflow rules are executed after validation rules
What are the three options for when a workflow trigger fires?
- created
- created, and eveytime it’s edited
- created, and any time it’s edited to subsequently meet criteria
When using a workflow rule by formula (instead of meets criteria fields/filters), what must the formula evaluate to for the actions to fire?
True
What function can you use in a formula to see if a field has been updated?
ISCHANGED
Who can tasks be assigned to from a workflow rule?
- Specific users
- Record Owners
- Roles
What fields can be specified when assigning a task?
- Assigned To
- Subject
- Due Date
- Status
- Priority
What types of users can be specified for Assigned To field when auto-assigning a task?
- User
- Role
- Record Owner
- Portal User
- Portal Role
For Email Alerts, who can be a recipient?
- Account Owner
- Case Team
- Creator
- Email Field (will list Email field available on record)
- Opportunity Team
- Owner
- Public Groups
- Related Contact
- Related Lead or Contact Owner
- Related User
- Role, Role/Subs
- User
What are two other things a field can be set to besides a specific value?
- blank (Null)
2. apply a formula
What does the ‘Re-evaluate Workflow after Field Change’ option do?
It allows all workflow rules on the same object to be evaluated/run again after update to a specific field (when the worfkflow action is a field update)
If multiple actions are defined for a workflow, which will fire first?
There is no guaranteed order of execution but field update actions fire first
What are some reasons why Add Time Trigger button (for time-dependent workfllows) will not be available?
- Workflow rule is already active
- There are pending actions in the workflow queue
- Rule criteria is set to: Everytime a record is created or edited
* New orgs from Winter ‘18 limited to 1000 time triggers per hour
When is Flow Builder best utilized?
- For more complex business processes
- For when user input is required
What is Flow Builder?
An automation tool that allows building a Flow, which can:
-receive user input
-execute logic
-interact with Salesforce data
-display output
without using Apex code.
It is all done through a visual interface
*Accessible to users with ‘Manage Force.com Flow’ permission
What are some capabilities of Flow Builder?
- Receive user input
- Query Records
- Lookup, create, update data on external system
- Create, Update Delete records
- Calculate values using formulas
- Branch to different path based on logical conditions
- Pause for a certain time period
- Assign values to variables that can be used throughout the flow
- Loop through variable or record collections
- Create wizards for the user (series of screens for the user)
- Perform Actions (Quick Actions, Email Alerts, Static Actions)
- Allow uploading files
- Create templates/download them from AppExchange
- Implement attribute-based routing
- Use Apex-defined variables to manipulate complex data objects returned from calls to web services