`
eworkflow
  • 浏览: 219709 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

状态控制VS流程控制

 
阅读更多

曾经做过一个结算系统,对于一段期间内完成的订单做金额费用的结算,根据订单的金额付款,并计算出一些代理费用等等。
在付款之前,需要结算部门审核,财务部门的审核,上级主管的审核,客户的确认等等。这个是按项目来做的,没有上工作流系统。

对于付款前的那些级别的审核,都是用状态字段来控制的,主要是在结算单中增加审核的字段

财务审核状态,审核日期,审核意见,审核人
客户确认状态,确认日期,确认意见,确认人
上级主管审核状态,审核日期,审核意见,审核人

....

用状态来控制流程的流转的,
结算部门人员,登录系统后,点击 结算单确认,打开所有的未确认过的结算单,进行核对,核对过后,点击审核通过,则确认状态为 已确认。
财务人员登录后,点击 财务审核 菜单,打开所有结算已确认并且财务未通过的结算单,进行财务的核对。核对正确后,点击审核通过,则财务审核状态为 财务审核通过。

客户登录系统后,点击 结算单确认 菜单,打开财务审核通过,客户未确认的结算单,进行确认操作,客户确认后,客户确认状态就变成 已确认了.
....

最后到付款等,都是通过状态字段来控制的。
整个的流转只能是操作人员自己心里清楚,现在流转到那个阶段了,下一步需要谁来处理。


后来需求还在不断的变化,需要增加或减少一些审核,如代理的地方财政审核,代理公司的二级审核,又去掉上级主管的审核等等.....
总之涉及到钱的问题,都会很仔细了,层层审核,还需要加上ca签名认证,在真正付款之前,先核对一下ca签名的数据是否和现在的数据一致,避免审核过后,结算单又做了修改。

在增加审核的时候,就多增加一些字段,或者多增加一些状态值,并修改代码将字段和状态值的修改体现到代码中,使得流程能流转,并重新打包发布程序,最后再测试,发布,正式上线使用

来来回回的总是修改那些状态字段以及状态字段的值,控制页面的记录的显示,审核按钮等操作是否显示,一些只读的,隐藏的等等功能按钮也是靠状态值来控制的。
有时候要减一级的审核,并加一级的审核,就会将减掉的那级审核的状态字段修改到增加的那级审核上。
.....
一段时间后,这些状态字段以及状态字段的控制,就变得很复杂了,整个流转过程,谁也不清楚,或许实施人员心里大概有个底,也没准那个需求变化了,开发人员又“默默的”改了代码了。每次在要走一个流转的时候,会重新了解一下,不清楚的,就打开代码来查看了,大体上就是那样的,有一些审核的过程。


如果用工作流系统来做这个....
首先要在流程设计器中,画一个 结算单审批流程

制定结算单--》结算部确认--》财务部核对--》客户确认--》付款处理--》结束

在流程的设计器中的


 结算单中也不需要增加那么多的字段了,只对应一张通用的审核表,有一级的审核,就往通用审核表中增加一条记录。

在结算单表中,也可以增加一个状态字段,记录每个节点的审核结果,便于单独做记录的查询用。

只需要一个菜单“制定结算单”,当结算单制作完成后,流程实例就启动了,下一步的办理,就完全走流程设计器中定义的节点了。
下一步的执行有两种方式:
从我的待办任务列表中链接进去
从流程实例的轨迹图中,点击节点进去,或 轨迹列表中单节行进去


 
每个流程实例的办理都有轨迹图显示,能清楚明确的看到每张结算单的审核过程


当有需求变化,需要增加一级的审核,则在流程设计器中,多画出一个审核节点,并增加一个结算单审批流程的版本,新的结算单流程按新的版本启动。
有减少一级的审核或处理,也是在设计器中,删除一个节点。

需要查看结算单的审批流程,只要打开流程设计器,查看流程的节点。或者查看流程实例运行的轨迹,也可以查询到结算单的审批过程。


运行工作流系统后,流程变得有迹可循了,不再是杂乱无章的。

  • 大小: 15.5 KB
  • 大小: 66.7 KB
分享到:
评论

相关推荐

    步进电机控制程序设计流程图

    步进电机控制程序设计流程图 步进电机控制程序设计是指对步进电机进行控制的程序设计过程,该过程涉及到电机的控制、检测和处理。在本文档中,我们将详细介绍步进电机控制程序设计的流程图和相关知识点。 一、步进...

    状态反馈控制系统的matlab仿真实现

    状态反馈控制系统是现代控制理论中的一个重要概念,它主要用于改善系统的动态性能和稳定性。在这个MATLAB仿真实现中,我们将深入探讨如何对一个二阶系统设计输出反馈和状态反馈控制器,并通过阶跃响应来分析这两种...

    基于状态空间方程的预测控制程序,系统的状态空间方程,matlab

    在MATLAB环境中,状态空间方程和预测控制相结合,可以构建出强大的预测控制程序。 首先,让我们深入理解状态空间方程。一个连续时间的状态空间模型可以表示为: \[ \dot{x}(t) = Ax(t) + Bu(t) \] 其中,\( x(t) \)...

    状态控制器实验报告

    根据提供的文件信息,我们可以深入探讨状态控制器在计算机体系结构中的作用及其具体实现方式。 ### 状态控制器概述 状态控制器作为CPU的核心控制单元之一,在整个计算过程中扮演着至关重要的角色。它通过产生一...

    基于状态空间模型的预测控制的程序

    状态空间模型预测控制(SSMPC...总之,"基于状态空间模型的预测控制的程序"是一个有价值的教育资源,它不仅展示了状态空间模型和预测控制的基本概念,还提供了实际操作的代码,有助于学习者将理论知识转化为实践能力。

    运动控制卡--状态机顺序控制

    程序会持续检查当前状态和外部条件,一旦满足条件,就切换到下一个状态并执行相应的操作。 为了确保运动控制的稳定性和实时性,状态机的实现需要考虑到系统的响应时间、中断处理机制和优先级调度。此外,良好的状态...

    最终程序,一个按钮控制四种状态.txt

    利用单片机,通过一个按键S控制8个发光二极管实现不同状态显示方式。显示方式为五种模式,具体如下: 1.全亮; 2.从左到右依次点亮,持续循环; 3.交叉点亮闪烁; 3.高四位点亮 4.低四位点亮 5.全灭 这里要求,每...

    基于状态机设计的交通灯控制程序(Verilog HDL)

    1. **状态机**:状态机是控制系统流程的关键组件,它定义了系统在不同时间点的不同行为或状态。在这个交通灯控制程序中,状态机可能包括红绿灯的各个阶段,如红灯、黄灯和绿灯,每个阶段都有其特定的时间长度。状态...

    LabView图形化编程语言之运动控制卡--状态机顺序控制.zip

    1. **状态机设计**:介绍如何在LabView中设计和实现一个状态机,包括状态节点的创建、状态转换条件的设置以及状态间的逻辑流程。 2. **运动控制函数**:讲解LabView中的运动控制函数,如MoveToPosition、...

    52-1个独立按键控制LED状态转换(51单片机C语言实例Proteus仿真和代码)

    52-1个独立按键控制LED状态转换(51单片机C语言实例Proteus仿真和代码)52-1个独立按键控制LED状态转换(51单片机C语言实例Proteus仿真和代码)52-1个独立按键控制LED状态转换(51单片机C语言实例Proteus仿真和代码)52-1...

    专题资料(2021-2022年)GJB9001B版技术状态控制程序.doc

    GJB9001B版的技术状态控制程序(QP.17)旨在通过严格的管理流程,确保产品质量的稳定性和一致性。 1. **目的与范围** - 目的是通过对产品技术状态的有效管理,以达到保证产品质量的目标。 - 范围涵盖公司军工产品...

    基于状态空间方程的预测控制程序

    在MATLAB中实现预测控制程序,可以利用其内置的优化工具箱和Simulink库,方便地构建、求解和测试状态空间模型和预测控制算法。 在"State_MPC"这个压缩包中,可能包含以下内容: 1. **状态空间模型**:定义了系统...

    51单片机教程实例52-1个独立按键控制LED状态转换

    51单片机的学习往往从这样的基础实验开始,因为它们帮助理解单片机的I/O操作、中断处理、程序流程控制等基本概念。这个实例教程不仅锻炼了编程技巧,也提升了硬件接口能力,对于学习单片机编程的人来说是非常有价值...

    模型算法控制程序

    3. 一个多变量系统的状态空间模型预测控制器设计问题,使用MATLAB编写的程序将传递函数模型转换为状态空间模型,然后设计模型预测控制器。 在这些例子中,使用了MATLAB编写的程序来实现模型算法控制的设计和仿真。...

    基于状态机的温度控制系统_labview_labview状态机_温度控制_状态机_

    程序框图部分则会展示状态机的逻辑结构和数据处理流程。 总的来说,LabVIEW状态机在温度控制应用中的使用展示了其在实时控制和自动化领域的强大能力。通过这种方式,工程师可以构建出直观、灵活且易于维护的控制...

    用状态机实现ADC0809的采样控制电路

    在电子设计自动化(EDA)领域,使用状态机来实现ADC(模数转换器)的控制电路是一种常见的设计方法。在本实验中,我们关注的是ADC0809,这是一个8位CMOS A/D转换器,它能处理8路不同的模拟输入,并将其转化为数字...

    地震波作用下三层框架状态反馈控制程序_框架_振动控制_

    "地震波作用下三层框架状态反馈控制程序"是一个专为解决这一问题设计的高级技术应用。该程序旨在通过主动控制策略,减少地震对三层框架结构的影响,提升其抗振性能。 首先,我们要理解“状态反馈控制”这一概念。...

    水温控制系统设计程序

    《水温控制系统设计程序》 水温控制系统是自动化技术在日常生活中的一个重要应用,它通过集成电子设备和软件算法,实现了对水温的精确控制。在这个系统中,程序扮演着核心角色,它负责处理数据,执行控制策略,并与...

Global site tag (gtag.js) - Google Analytics