Table Design and Analysis of the workflow module in the Winform development framework, winform Workflow
After having written the article "simple WorkFlow Design of Winform Development Framework" in an earlier blog, I haven't introduced the workflow in detail for a long time. This article continues with this topic, the Design, Implementation, and effect of the workflow are described in detail. This workflow was applied to the Municipal Industry approval system several years ago. After constant transformation, it is suitable for a wider approval process, from the original Web to WInform, and from the WInform framework to the hybrid framework, it has achieved good processing.
1. Table Design and Analysis of the workflow module
In the workflow processing table, we first distinguish between the process template and the process instance. This is actually a concept similar to the template and a specific document. We can create many similar documents in one template, document Style structure is similar. Similarly, after the Process Template instance is a process instance, it is a specific process form information. The Process Template and process instance form both include the process steps. At the process instance level, we need to record some logs for easy tracking during operation, such as the process logs of process steps and the process logs of process instance forms.
Of course, the actual process instances need to record a lot of information, including the process step log, Application Form Processing log and other information, so that we can track the relevant processing records. Therefore, the workflow business table contains two more log records, as shown below.
Once a process instance is created based on a template, the process is initialized Based on the template, and some approval steps can be dynamically added during the process to make our processing more flexible.
Of course, in order to better process the relevant information, you also need to record the process handler, process endorser, process reader, and frequently used auxiliary tables such as approval comments, in order to properly process and display the processing information of the process.
The following is the view information of a specific form, including the relevant processing steps and related process log information.
The detailed form Viewing Interface is shown below.
Process logs are divided into several parts: Application Form Processing logs, Application Form Processing history information, application form system logs, and so on.
2. workflow step processing
For a process processing operation, we know that the process is generally approved, rejected, returned to a certain step, forwarded to the internal reading, reading, and including operations such as the form can be revoked by the author, of course, if there are some specific services, some processes may be processed before the operation, but it can also be attributed to the above several types, but they process different data content in each step. The approval procedure is categorized as follows.
As shown in the following figure, the approval page contains a set of functions such as pass, reject, jump back to a step, and add steps.