1What is the purpose of a workflow system?
You can simplify the process of determining the Business Object status. For example, if an object has two States (pass or fail) in each stage, there are three price segments, and four of them may be involved in the process, in addition, the status processing direction may be related to the current operator. Some operators have high permissions and can directly jump to the next stage. If there is no workflow system, ourCodeWhat is it like?
If(Phase 1. statu1 =OBJ. Status ){//Your codeIf(Operatorid =OBJ. ID ){...}}Else If(Phase 1. statu2 =OBJ. Status ){//Your code....}Else If(....){.....}
You can imagine how many if else will appear. What's worse, if the customer tells you that you want to add a special State or special logic at a certain stage, you must have the idea of killing yourself, or you want to kill the customer. Why? The difficulty level is increasing exponentially.
In addition, this only processes the growth of logic code. If you have an interactive interface on the interface according to each status, such as XXX, which you have reviewed, xxx waiting for your approval ..., do you know how many user interaction interfaces will appear? In addition, it is time for users to go to Hell to say that they want to increase the approval process.
All changes are invasive, and code must be re-written, compiled, released, and rearranged. Oh, my God, "at the end of the day, where is xiangqiu ?".
2For workflow learningArticleOr the number of successful applications is too small, so many people may feel the sea. How can we start?
First of all, thanks to wxwinter. For wf4.0, my basic learning is basically based on his examples to understand the basic concepts. But after you understand the basic concepts, if you want to create an approval workflow system, what should you do?
Difficulty clarification:
2. 1. to run a workflow well, it must be supported by the peripheral user system. For example, you should not intrude into the workflow about how to perform permission checks and authenticate which business objects are.
2. 2. the workflow is not an isolated operation. Sometimes it requires the action of an external approver. Therefore, you must have a channel to add an approval node for the process and specify the approver, therefore, you must provide the appropriate process designer for users or implementers.
2. 3. sometimes the process needs to interact with people. The operator decides how the node should go down and provides running parameters to the running process. How should the external support system provide the running parameters of the process, this is related to the process running context and may also be related to the current user.
2. 4. there are various combinations of node approval results, such as one pass, multi pass, one pass, multi-pass, multi-pass, proportional, and proportional denial. Or their combination.
As you can see, your brain may have been intertwined with many concepts and become messy. Don't worry. There is always a solution. Let's first preview what kind of work Approval System is in my mind? Is it consistent with your expectation that we can resonate with each other?
3. Take the company's common "loan application" as an example. We will demonstrate it step by step:
Environment Description: Zhang San is a company employee. To handle a business trip, he must first obtain the consent of Department Manager Li Si to apply for a loan of 5000 yuan from the company before the business trip, after the approval by the Financial Manager Zhao Wu, you can use the signed debit form to go to the Outline for cash.
Process: Initiate a loan application-> Li Si approval-> Zhao Wu approval-> cashier payment
3.1Initiate Review
3.2Start Process
3.3 results after the process is started: Wait for approval by the department manager
3.4 department manager approval:
First, check the to-do list:
Double-click to view:
Click agree to transfer to the next node: financial approval
3.4 check the process progress by the reviewer:
3.5 financial approval
Double-click to open the application form:
Click "agree" to bring up the payment account for finance selection. Click "OK" to finish the process.
4.Process designer preview:
Oh yeah ....!!!! How does it feel?
In addition, I would like to express my thoughts on how your solution is unnatural or cumbersome, which indicates that there must be a problem in design and implementation. We should reflect on it, because users rarely give themselves a second opportunity, the software they use should be able to solve practical problems, valuable and excellent products, so that you have market needs.
Let's look forward to the following. OK, how does the system work? What are the key points of approval workflow system design?
Please stay tuned for future predictions !!!!