周群
摘要:针对目前大部分企业尚未建立起高效办公自动化系统,办公效率较低,文档安全性无法得到有效保障等问题,基于工作流技术构建一套公文流转系统,作为企业办公自动化平台的核心支撑系统,解决了公文收发、审阅等过程中存在的问题,完善了公文流转机制。
中图分类号:TP313 文献标识码:A 文章编号:1009-3044(2015)21-0215-02
企业的日常管理涉及各个方面的内容,公文管理是其中重要的组成部分。虽然目前绝大多数企业都实现了网络化办公,但由于缺乏相关的软件平台,对于公文管理都存在着众多的问题如:公文管理手段单一,效率较低;公文的流转具有随意性,不规范,导致管理上的不可控;对于公文的修改没有有效的痕迹记录机制;公文的安全机制不够完善。本文构建的基于工作流的企业公文流转系统,正是为了解决上述问题。该系统将目前在地方政府、大型国企中广泛使用的公文流转系统应用于企业公文的管理中,并针对企业在公文管理模式、公文安全保密性等方面的特殊要求进行改进,能够有效地提高公文的管理能力,促进企业办公效率的提高。
1 企业公文流转系统的设计
基于工作流的企业公文流转系统的主要目标是为了满足企业内部基于网络的公文处理需求,该系统既政府中使用的公文流转系统相类似,又由于企业的特殊性质,具有其自身的特殊需求。企业公文流转系统的设计首先是基于主要的功能需求和关键的性能需求,构建系统的总体架构方案。
1.1系统功能架构设计
系统功能架构设计是从用户的角度对系统所具备的功能进行划分,从而明确系统的功能模块,以及各个功能模块中包含的具体功能。系统功能架构设计方案如图1所示:
图 1 系统功能架构设计方案图
基于工作流的企业公文流转系统主要分为四大功能模块,一是工作流启动功能模块,该模块主要完成公文的起草和工作流的启动等工作,主要包括公文起草功能、工作流选择功能、工作流启动功能等;二是工作流管理功能模块,该模块主要完成与公文流转流程实例相关的操作,包括新增工作流功能、编辑工作流功能、删除工作流功能等;三是公文处理功能模块,该功能模块主要是为公文的审阅提供处理的工作平台,包括待处理公文的提醒和推送,公文审阅批示、公文催办功能等;四是公文管理功能模块,该功能模块主要完成对已结束处理公文的管理,包括公文归档、公文统计、公文打印管理等。
1.2系统主要功能模块的设计
基于工作流的企业公文流转系统由于要对企业公文流转的整个过程进行管理,并为企业的办公自动化系统提供各类服务,所以包括多个功能组成。篇幅所限,本节将对系统中最为主要的功能模块设计进行讨论。
1.2.1公文流转启动功能设计
公文的起草、流转流程的选择、流转过程的启动,是企业公文流转的起始步骤。要实现这一功能,需要考虑两个问题,一是公文模板的生成,二是工作流实例的产生及启动。
根据公文的格式特点,将公文拆分成各个不同的组成部分,将每一个组成部分的内容以及格式保存到XML文档中,利用XML节点的属性标明该部分的内容所属于的公文类型。在用户选择了公文模板后,系统将接收到用户的指令及参数,从XML文档中读取并应用模板的内容,最终得到模板结果,显示于界面。
1.2.2公文管理功能的设计
公文管理功能包括的内容较多,包括公文的查询、统计、分类、删除等。以分类统计为例说明其设计方案,系统接收到用户输入的统计参数后,根据参数生成统计指令,提交给数据库管理模块,由其根据指令对数据库中的数据进行查询,并将查询的结果以报表的形式返回给用户。
2 企业公文流转系统的实现
企业公文流转系统包括多个功能模块,选择其中的公文流转启动功能进行详细讨论。
公文流转启动功能包括模板的选择生成,工作流实例的生成、公文流转启动三个主要实现步骤。模板选择功能为用户提供了标准的公文模板,使公文的起草更为规范。公文的模板具体定义在XML文档中,主要是利用XML的节点定义公文模板的不同组成部分,并在节点中存储具体的内容。在该功能执行过程中,根据公文的结构,从公文模板中提取相应的内容进行显示。具体的代码如下:
//定义公文模板的代码
public abstract class OfficalDoc{
public abstract void BuildHead();
public abstract void BuildTitle();
public abstract void BuildCall();
public abstract void BuildTAG();
public void ShowDoc(){
//将公文模板的内容在界面中显示
}}
以上定义了公文模板的构成代码,将公文结构分割为多个组成部分,采用抽象方法的定义方式,使得所有继承与该类的具体类都需要实现所有的方法;ShowDoc方法用于将所选择的模板内容在界面进行显示。以申请类的公文模板为例进行说明,其内容如下:
public class ApplicationDoc:OfficalDoc{
public override void BuildHead(){//获取申请类公文头内容 }
public override void BuildTitle(){//获取申请类公文标题内容 }
public override void BuildCall(){//获取申请类公文称呼内容 }
public override void BuildTAG(){//获取申请类公文结尾内容 }}
由以上代码可知,当出现一类新的公文类型时,在系统中新建一个类,继承于OfficalDoc类,并实现该类中所有的方法,从XML文档中获取当前类型公文各部分的内容,再在客户端调用ShowDoc方法,在界面显示公文模板。
在完成了公文的起草后,系统将自动根据用户所选择的公文类型,给出对应的流转流程,确认后生成公文流转实例,用户确认启动后,将公文流转的状态设置为激活,启动流转程序。首先调用GetFlowModel(int type)方法获取公文对应的流转模板,参数type表示公文的类型,获取WFlowModel结构类型结果参数,再调用GetInstanceofFlow (WFlowModel wm)方法,由公文流转模板生成流转的实例。此时需要将公文流转实例交给工作流引擎进行统一管理,工作流引擎的对象为WFEngine,通过调用该对象ManageWFS()方法,将公文流转实例加载到工作流引擎中,当启动工作流时,调用WFEngine.Invoke(int FID)实现。具体代码如下:
main(){
WFlowModel WFM = GetFlowModel(ItemList.Value);
WFlowInstance WFI = GetInstanceofFlow(WFM);
WFEngine.ManageWFS(WFI);
if(IsStart == true){
WFEngine.Invoke(WFI.ID);}}
3 系统测试分析
在进行系统测试之前,对基于工作流的企业公文流转系统进行了调试。基于系统开发中构建的硬件和软件环境,对系统进行了安装和部署,经过一段时间的试运行,排除了多个系统中存在的错误。在这一前提下,对系统进行了测试。
系统测试的目的是验证系统的功能和性能是否能够达到用户的使用需求。针对系统中的主要功能模块设计测试用例,系统测试的结果如表1所示:
测试表明,基于工作流的企业公文流转系统各项功能指标和性能指标都达到了设计的要求,能够满足用户的日常应用需求。
4 结束语
基于工作流的企业公文流转系统的设计和开发主要是为了解决当前企业在公文流转方面存在的诸多问题,为企业的办公自动化系统等提供公文流转的支持,从而进一步提高企业的办公效率。
参考文献:
[1] 张双喜.论办公自动化系统的发展与建设[J].山西焦煤科技,2012(3):10-12.
[2] 周洪娟.基于WEB模式办公自动化系统的设计与实现[J].电脑知识与技术,2012(6):200-202.
[3] 田茁.网络办公自动化系统开发分析[J].现代情报,2012(12):153-154.
[4] 孙汝萍.简述OA办公系统在实际工作中的应用[J].办公室业务,2012(7):57-59.