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.

- Example:If status is "escalated," show a red flag, if status is "Under Review," show a yellow flag, if status is "All Clear" show a green flag.
 

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.

3.The encoding functions escape or replace characters that are reserved or unsafe in HTML, javaSscript, and URLs.
 

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

.Auto-response rules
 

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的更多相关文章

  1. 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 ...

  2. 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 ...

  3. 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 ...

  4. 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 ...

  5. 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 ...

  6. 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 ...

  7. 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 ...

  8. 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 ...

  9. 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 ...

随机推荐

  1. vim 编辑器技巧 打开多窗口编辑 vsp

    我有两个配置文件 [root@gameserver1 conf]# ls auth_1.json auth_2.json 先打开auth_2.json 在vim编辑器中打开auth_1.json,在打 ...

  2. Python开发(二):列表、字典、元组与文件处理

    Python开发(二):列表.字典.元组与文件处理 一:列表二:元组三:字典四:文件处理 一:列表   为什么需要列表 可以通过列表可以对数据实现最方便的存储.修改等操作.字符串是不能修改的,所以无法 ...

  3. d3.js ---画坐标轴

    画坐标轴 //使用d3的svg的axis()方法生成坐标轴 var x_axis = d3.svg.axis().scale(scale_x), y_axis = d3.svg.axis().scal ...

  4. idea使用Tomcat部署war 和 war exploded的区别

    war模式:将WEB工程一包的形式上传到服务器中.war exploded模式:将WEB工程以当前文件夹的位置关系上传到服务器.解析:war 模式这种可以称为是发布模式(完整的项目),将项目打成war ...

  5. Java中文件上传路径与路径修改相关问题(tomcat8.0+eclipse)

    1.普通文件上传的路径: 通过getRealPath获取相关路径 String photoFolder =request.getServletContext().getRealPath("u ...

  6. VMWare12pro安装Centos 6.9教程

    VMWare下Centos 6.9安装教程,记录如下 1.新建虚拟机 (1)点击文件-->新建虚拟机 (2)选择 自定义(高级)-->下一步 (3)选择Workstation 12.0-- ...

  7. 简单的节流函数throttle

    在实际项目中,总会遇到一些函数频繁调用的情况,比如window.resize,mouseover,上传进度类似的触发频率比较高的函数,造成很大的性能损耗,这里可以使用节流函数来进行性能优化,主要是限制 ...

  8. Androidstudio实现一个简易的加法器——分享两种方法实现(日常作业练习)

    Androidstudio实现一个简易的加法器——分享两种方法实现(日常作业练习)                                                           ...

  9. js中 navigator 对象

    Navigator 对象包含有关浏览器的信息. 很多时候我们需要在判断网页所处的浏览器和平台,Navigator为我们提供了便利 Navigator常见的对象属性如下: 属性 描述 appCodeNa ...

  10. 五分钟学Java:如何学习Java面试必考的JVM虚拟机

    原创声明 本文首发于微信公众号[程序员黄小斜] 本文作者:黄小斜 转载请务必在文章开头注明出处和作者. 本文思维导图 为什么要学习JVM虚拟机 最近的你有没有参加Java面试呢?你有没有发现,Java ...