APP下载

基于表单的通用流程管理系统设计

2014-10-29万旭川杜佳李凯丰李海波

电子技术与软件工程 2014年16期
关键词:表单

万旭川++杜佳++李凯丰++李海波

摘 要

基于目前传统纸质表单审批流程中存在的“时间精力浪费较大、审批过程难以掌控、审批执行不够严格、流程变更难以宣贯”等问题,设计并实现了一种基于表单的通用流程管理系统。重点介绍了该系统的系统结构、功能模块设计和关键问题研究等。

【关键词】表单 用户控件 通用流程管理

1 引言

随着信息技术的发展和应用,企业运行管理的各个方面均得到了信息化手段的广泛支持,得益于此,流程管理工作也相应得以深化。信息化是实现业务流程电子化、自动化的重要途径,借助信息化应用,可以把经过梳理、优化后的流程固化下来,提高流程运行的质量、效率和可分析性,从而不断提高流程管理的有效性。本文所设计的通用流程管理系统以表单为载体,以流程处理为核心,兼顾灵活性和易用性,实现了业务流程的电子化审批模式,促进了流程管理的规范化和标准化。

2 系统方案

2.1 需求分析

流程管理系统的业务处理流程如图1所示。

业务表单的设计是系统首先要解决的问题。企业在对业务活动进行梳理和优化后,会总结出一定数量的表单,每张表单都会设置特定格式的填写内容,在使用过程中这些表单会发生数量的调整和结构的修改。因此通用流程管理系统需要提供方便灵活的流程表单开发方法,使用户可以根据具体的业务流程进行业务表单的深度定制。

流程定义是流程管理系统的另一个核心问题,为了使整个平台能够灵活的适应业务需求的变化,流程的设计应能通过系统配置来实现。流程定义时需要参考员工、职务及应用程序数据,每一步的流转过程都要与表单中的具体填写项目对应起来,包括这些项目的数据格式及权限控制,保证每项内容与填写人之间有明确的对应关系,避免填写或修改未被授权的内容,发生填写责任不明确的情况。业务表单的流转要遵循一定的路由规则,在流程定义阶段需要为每一步的流转定义路由规则。

流程定义完成之后,有访问权限的员工填写第一步流程,转出后就启动了流转过程。流转处理中需要根据流程的定义生成工作列表。通过权限控制流程中的每个节点只能由特定的人在界面中操作自己被授权的内容,确保工作流程的准确性。流程的处理过程如下:

(1)对第一步流程具有权限的人员填写一个新的业务表单,填写完自己负责的部分内容后转出,表单进入流转过程。

(2)该表单会自动出现在对下一步流程节点具有权限的人员的工作列表中,系统会对相应人员进行待办提醒,该人员同样操作自己负责的内容后转出,表单继续流转,直至最后一个流程节点,该节点的人员对表单进行编号与归档,并生成稿签单,进而结束流程。

(3)流程启动后,在每一个流程节点都可以按要求进行回退和特送操作,保证流程的灵活性。

2.2 功能模块设计

基于表单的通用流程管理系统主要包括以下几个功能模块:表单定义模块、流程定义模块、基础数据管理模块以及人员权限管理模块。

2.2.1 表单定义

为了能更好的适应表单项目数量及结构的调整,为用户提供业务表单的深度定制,表单定义模块设计了一个简单通用的流程表单开发方法,用户不需要具备软件开发基础,经过简单的培训,并遵循一定的编程接口和命名约定,就能轻松的将业务表单转换为用户控件。如果该业务流程要打印纸质单据存档,则还要根据表单和用户控件定义稿签单。

2.2.2 流程定义

流程定义模块包括节点定义和路由定义。系统中的业务流程是由一个个业务节点按照一定的路由规则进行流转而组成的。在节点定义中需要与表单定义中的表单项关联起来,定义在当前节点中表单项的必填项只读项,以及当前节点的类型,是否需要填写审批意见及是否为会签节点等。路由定义则要定义节点的流转顺序并为每个节点指定可以操作的人员、部门或角色等。节点的流转规则可以是唯一路由、条件路由和公式路由等。

2.2.3 基础数据管理

基础数据管理模块主要提供对数据字典及编号规则等基础数据的维护和管理。为了最大限度降低表单定义的复杂性并提高表单的自适应性,表单中如下拉列表项等有可能或经常变化的项目都以系统配置的方式在基础数据里面进行管理,避免了由于这些数据的更改而要重新编写代码的情况。

2.2.4 人员权限管理

人员权限管理模块定义系统中人员的基本信息、组织机构信息、人员职务信息以及系统角色信息。流程中为每个节点分配的操作人员可以是某个员工、整个部门的员工、部门中具备某职务的员工或者是具有某个系统角色的员工。一个员工只能隶属于一个组织机构,但可以承担多项职务并具备多个系统角色,其权限为这些职务和角色权限的并集。

3 系统实现过程中的关键问题研究

3.1 表单用户控件开发

在本流程管理系统中,业务表单要转化为用户控件,如何保证没有软件开发基础的使用人员成功的将业务表单转化为系统中的用户控件是一个比较棘手的问题。为了解决这一问题,系统本着最大限度简化最终用户使用的原则,将表单的公共部分及业务处理逻辑剥离出来,用户只需在界面上拖拽Label、TextBox等控件,调整控件的位置将表单在界面中画出来并按照约定为可编辑控件进行命名即可,其它的工作都通过界面配置的方式来实现。例如,表单中的选择项可以通过在界面中拖拽一个下拉列表(DropdownList)控件来实现,而下拉列表的值则通过在界面的数据字典中配置实现,系统运行时会按照之前的命名约定,读取数据字典的配置为表单中相应的下拉列表进行数据绑定并赋值。如果下拉列表的值发生了变化,用户只需在界面中改变配置项,而不用编写代码修改已经开发完成的用户控件,这样既简化了用户控件的开发,又能适应表单内容的调整。

3.2 流程定义工具开发

流程定义部分要兼顾流程的准确性和灵活性,以适应各种流转要求,下面结合流程定义的窗体界面(如图2所示)来具体说明流程设计部分的处理思路。

首先要定义流程中的各个节点,指定在当前节点中表单项目的必填项和只读项,以及当前节点的类型,是否需要填写审批意见、是否为会签节点、是否可以上传附件或生成稿签单等。然后需要为每个节点绑定操作人员,可以按部门、角色或公式来绑定操作人员,其中角色可以由管理员自由定义,公式则是系统中内置的,考虑到了系统使用中的大部分情况,作为对其它两种方式的有效补充。最后要定义节点的流转规则和顺序,即为每个节点定义分支,一个节点可以有一个或多个分支,按照条件路由规则,根据请假天数的多少决定下一步流转到哪个节点。

由整个流程定义的过程可以看出,系统流程的设计是非常灵活的,用户可以随时根据业务流程的变化对系统流程进行重新设计和调整,而不需要编写任何代码,大大提高了流程系统的适用性和通用性。

4 结束语

本文为企业业务流程的标准化和信息化提供了一种基于表单的通用流程管理的思路和方法,具体实施时完全可以采用不同的编程语言和开发环境来实现。按照上述的设计思路,作者用.Net平台开发了一个流程信息化管理系统。企业可以基于本文的设计思想,根据自身管理系统的具体现状和特点,选择合适的软件开发工具,实施自己的业务流程管理系统。

参考文献

[1]刘光伟等.基于业务流程的信息化建设与应用[J].信息技术,2012,10:159-160+164.

[2]张洪山,殷人昆,张素琴等.基于Web的工作流引擎设计[J].计算机工程,2004,(4).

[3]佟雅娟等.FileNet平台下企业通用ERP流程模块的设计与实现[J].计算机与现代化,2013.(5).

作者单位

西安航天动力技术研究所 陕西省西安市 710025endprint

猜你喜欢

表单
电子表单系统应用分析
基于图表示和匹配的表单定位与提取
浅谈网页制作中表单的教学
使用智能表单提高工作效率
基于业务表单松耦合的工作流架构设计与实现
基于ASP.NET的Web表单自动生成引擎
集成工作流的GIS应用动态表单组件设计与实现
面向业务的敏捷界面定制构件的设计
动态表单技术在教学管理中的应用*
基于Java可视化测绘生产流程表单的设计及实现