Building Applications with Force.com and VisualForce(Dev401)(十):Designing Applications for Multiple Users: Building Business Processes that You Want
Dev401-011: Building Business Processes that You Want
Course Objectives
1.Describe the capabilities of data validation rules
2.Create an approval process.
3.Describe when to user parallel approvers.
4.List user cases for skipping steps within approval processes.
5.Explain how to use time-based workflow to keep processes moving.
6.List Tools for troubleshooting automated processes.
Course Agenda
1.Building Business Processes
2.Preserving Data Quality
3.Automating Business Processes
4.Auditing Processes
6.List tools for troubleshooting automated processes.
Module Objectives
1.List typical business requirement in the area of business processes.
2.List some feathers of the Force.com platform that help you implement business processes.
3.Describe how the VLOOKUP function can be used to solve a business requirement.
4.Describe how the ERGEX function can be used to solve a business requirement.
5.Describe how the ISCHNAGED, ISNEW, and PRIORVALUE functions can be used to solve a business requirement.
Typical Business Requirement
1.Preserving data quality
- Example:As new positions are entered, Universal Containers would like to ensure that the appropriate field are filled out.
2.Automating processes
- Example: Positions must be approved before recruiters start recruiting from them.
3.Keeping processes from getting "Stuck"
- Example: A position open for more than 30 days without candidates triggers an email to recruiter to jump start recruitment procedures.
4.Keeping systems in sync
- Example:Outbound messages help keep Salesforce in sync with other systems.
5.Auditing
- Example: Track any changes to the ranking of a candidate.
Features of the Force.com Platform
1.There are a number of features that address and automate management of these business requirements including:
- Formula fields
- Validation rules
- Approval Processed
- Time-Dependent Workflow
- Outbound mesaging
- Field History Tracking
- Setup Audit Trail
Userful Operatiors and Functions
1. ISCHANGED
- Compares the value of a field to the previous value and returns TRUE if the values are different, If the values are the same, this function returns FALSE.
- Example: prevent users from changing the Pay Grade of a position after it's been approved.
2.PRIORVALUE
- Returns the previous value of a field.
- Example:as negotiations take place, HR would like to track changes to the salary listed on the offer.
3.IF
- Determines is expressions are true of false. Returns a given value if true and another value if false.
- Example: If the offer expiration date is less than today and the offer status is set to sent, display "Follow Up on Offer," otherwise, the field should be blank.
4.ISNEW
- Checks if the formula is running during the creation of a new record and returns TRUE if it is. If an existing record is being updated, this function returns FALSE.
- Example:Ensure that hiring managers don't back date the open date on a position to increase it's perceived urgency, by using ISNEW and checking whether the Open Date < Today().
5.ISPICKVAL
- Determines if the value of a picklist field equal to a string you specify.
- Example: Use in conjunction with IF to test if the status of an offer is accepted if so, show the Actual Salary* 10% to calculate a bonus amount, otherwise display no value.
- IF (ISPICKVAL(Stauts, "Accepted"). ROUND(Actual_Salary__c*0.1.2),0)
- Note: ISPICKVAL is not used alone. It must be used any time that you're referring to afield that is a picklist(except when using the CASE function).
6.REGEX
- Compares a text field to a regular expression and returns TRUE if there is a match. Otherwise, it return FALSE. A regular expression is a string used to describe a format of a string according to certain syntax rules.
- Example: Check to make sure that the social security number of a candidate matches a regular expression representing a valid social security number in the correct format.
7.VLOOKUP
- Reurns a value by looking up a related value on a custom object similar to the VLOOKU() Excel function.
- Note: this formula checks against a key and returns a value from that key.
- Example: Check the state and zip code entered on a record against a table of states and zip codes (key) to ensure that state and zip code match (returns the value).
8.ISNUMBER
- Determines is a text value is a number and returns TRUE if it is. Otherwise, if returns FALSE.
- Example: Check to make sure the contract number for a contractor in temporary position is strictly numerical digits.
9.CASE
- Checks a given expression against a series of values. If the expression is equal to a value, returns the corresponding result. If it is not equal to any values, it returns the else_result.
-Example:Use CASE to evaluate the number of days that a position is open, and display a value depending on the result. For positions open 1 week, display "Maintain","For positions open 4 weeks, display "Assign Task," etc
10.IMAGE
- Insert an image with alternate text height/width specifications.
Useful Operators and Functions
1.Functions for encoding
- HTMLENCODE
- JSENCODE
- JSINHTMLENCODE
- URLENCODE
2.These functions make it safe to insert data that you do not control, such as merge field and url parameters in your custom buttons,links,Visualforce pages, and s-controls.
Exercise 1-1: Creating Formula Fields to Display Images
1.Goal:
- Build a formula field that displays an image.
2.Scenario:
- Universal Containers would like to add a visual indicator of the Rating on a job application. Job Applications with a high rating should display a green flag, a medium rating should display a yellow flag, and a low rating should display a red flag.They can take advantage of a number of sample image available on the Salesforce servers. For a listing of those images, please see the "!00 Sample Formula Fields" document available http://success.salesforce.com.
Tasks:
- Create a new formula field to show area, yellow or green flag on a job application record,depending on the Average Review Score.
- Add the new Rating field to the Job Application related list on the Position page layout.
What are debug Logs?
1.The debug log records errors and system processes that occur in your organization. debug logs contain information about:
- database changes
- Automated workflow processes, such as:
.Workflow Rules.Validation rules
.Assignment rules.Request-response XML
.Escalation rules.Apex script errors
.Approval process.Resources used by an Apex script
System Log Categories
1.Validation
- Includes information about validation rules
2.Call out
- Includes the request-response XML that the server is sending and receiving from an external Web Service.
3.Apex code
- Includes information about Apex scripts.
4.Apex Profiling
- Includes cumulative profiling information.
System Log Levels
1.Develepors can specify log levels to indicate the level of detail they'd like to capture.
2.Only the Apex code log category uses levels
3.Levels include:
- Error, Warn, Info
- Debug
- Fine, Finer
- Finest
4.For detailed information about waht is captured at each level, please see Help & Training.
Troubling shooting with the Debug Log
1.Use the debug log any time you're troubleshooting automated actions. For Example:
- A workflow field update doesn't seem to be updating. It may be the case that the field update isworking, but an Apex trigger is overwriting the update.
- A record submitted for approval is not routed to the user that you expected. If there are multiple approval processes on a single object, it may be the case that your record meets the criteria for both, and the order should be changed.
Module Review
1.What actions are tracked in debug logs?
2.What is the maximum number of debug logs retained for an organization?
20
3.Where can you find default images to use in formula fields?
Formula
4.What function only works in validation rules?
Look up
5.What type of field and need to be wrapped in function(inside a formula) to be accessed?
Building Applications with Force.com and VisualForce(Dev401)(十):Designing Applications for Multiple Users: Building Business Processes that You Want的更多相关文章
- Building Applications with Force.com and VisualForce(Dev401)(七):Designing Applications for Multiple users:Managing your users' experience I
Dev 401-007 Designing Applications for Multiple users: Managing your users' experience part 1 Module ...
- Building Applications with Force.com and VisualForce(Dev401)(十一):Designing Applications for Multiple Users: Proseving Data Quality
Dev401-012:Proseving Data Quality Universal Containers Scenario1.Universal Containers(UC) wants to e ...
- Building Applications with Force.com and VisualForce(Dev401)( 八):Designing Applications for Multiple Users: Controling Access to Records.
Module Objectives1.List feature that affect access to data at the record level.2.List the organizati ...
- Building Applications with Force.com and VisualForce(Dev401)( 八):Designing Applications for Multiple users:Managing your users' experience II
Dev 401-008: Design Applications for Multiple Users' Experience Part 2Universal Containers Scenario1 ...
- Building Applications with Force.com and VisualForce(Dev401)( 九):Designing Applications for Multiple Users: Putting It All Together
Module Objectives1.Apply profiles, organization wide defaults, role hierarchy and sharing to given a ...
- Building Applications with Force.com and VisualForce(Dev401)(十八):Visualforce Pages: Introduction to Visualforce
Dev401-020:Visualforce Pages: Introduction to Visualforce Course Objectives1.Understand the benefits ...
- Building Applications with Force.com and VisualForce(Dev401)(十四):Implementing Business Processes:Auditing Processes
Dev401-015:Implementing Business Processes:Auditing Processes Module Objectives1.list some of the fe ...
- Building Applications with Force.com and VisualForce(Dev401)(十二):Implementing Business Processes:Automating Business Processes Part 1
ev401-013:Implementing Business Processes:Automating Business Processes Part 1 Module Objectives1.Li ...
- Building Applications with Force.com and VisualForce(六):Designing Applications for Multiple users: Accommodating Multiple Users in your App
Dev 401-006 Designing Applications for Multiple users: Accommodating Multiple Users in your App. Cou ...
随机推荐
- CSS 技巧汇总
CSS 选择符优先级 !important 声明>内联样式(style)>id 选择符(#id)>类选择符(.class)=伪类选择符(:hover )=属性选择符([attr] ) ...
- SpringBoot入门系列(三)资源文件属性配置
前面介绍了Spring的@Controller和@RestController控制器, 他们是如何响应客户端请求,如何返回json数据.不清楚的朋友可以看看之前的文章:https://www.cnbl ...
- 服务器推送 SSE 了解一下?
hello~亲爱的看官老爷们大家好~过完年第一周已经结束,是时候开始制定新的工作计划了.主要负责的项目是数据可视化平台,而使用中如果服务器能有推送能力让页端得到相关通知的话,就能实现很多功能上的优化. ...
- Python基础--动态传参
形参的顺序: 位置 *arg 默认值 **args ps:可以随便搭配,但是*和**以及默认值的位置顺序不能变 *,** 形参:聚合 位置参数* >>元祖 关键字** > ...
- 容器内init进程方案
背景 进程标识符 (PID) 是Linux 内核为每个进程提供的唯一标识符.熟悉docker的同学都知道, 所有的进程 PID都属于某一个PID namespaces, 也就是说容器具有一组自己的 P ...
- 从0开始搭建一个阿里云java部署环境
一.购买服务器 https://www.aliyun.com/daily-act/ecs/activity_selection?spm=5176.8112568.738194.8.674c9ed53Y ...
- 峰哥说技术:02-第一个Spring Boot应用程序
Spring Boot深度课程系列 峰哥说技术—2020庚子年重磅推出.战胜病毒.我们在行动 02第一个Spring Boot应用程序 1.版本要求 集成开发环境:IntelliJ IDEA 2017 ...
- ES6—get 与 set
在类里面可以去定义一些getter和setter,getter可以得到一些东西的方法,setter可以设置东西 class Chef{ constructor(food){ this.food = f ...
- vue基础----组件通信($parent,$children)
1.按照dom的父子级关系,在子组件中可以通过$parent 直接调用父组件的方法,也可得到父组件的属性. 2.在父组件中通过$childrens可以得到一个子组件数组,能够在父组件中调用子组件的方法 ...
- Spark实战--搭建我们的Spark分布式架构
Spark的分布式架构 如我们所知,spark之所以强大,除了强大的数据处理功能,另一个优势就在于良好的分布式架构.举一个例子在Spark实战--寻找5亿次访问中,访问次数最多的人中,我用四个spar ...