• 1.50 MB
  • 2022-04-22 13:49:52 发布

工业研究院办公自动化系统设计方案(附 MIS系统设计和网站设计).doc

  • 69页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'工业研究院办公自动化系统设计方案 XX工业研究院办公自动化系统设计第一章系统总体结构《XX工业研究院办公自动化系统》基于LotusDomino/Notes平台开发,系统的总体结构如下图所示:图1-1XX工业研究院办公自动化系统总体结构 XX工业研究院办公自动化系统设计第二章系统设计§2.1电子邮件电子邮件模块的结构如下图所示。图2-1-1电子邮件模块一.表单设计1.邮件表单(Memo)表2-1-1邮件表单设计数据域类型说明SendTo文本域收件人地址CopyTo文本域邮件抄送地址BlindCopyTo文本域邮件密送地址WebSubject文本域邮件主题Text文本域(允许多行)邮件正文haveread文本域邮件文件已读标志操作说明发送发送邮件保存为草稿将邮件保存为草稿回复回复邮件转发转发邮件 XX工业研究院办公自动化系统设计地址簿打开地址簿表单编辑编辑邮件删除删除邮件1.回信表单(Reply)表2-1-2回信表单设计数据域类型说明SendTo文本域收件人地址CopyTo文本域邮件抄送地址BlindCopyTo文本域邮件密送地址WebSubject文本域邮件主题Text文本域(允许多行)邮件正文haveread文本域邮件文件已读标志操作说明发送发送邮件保存为草稿将邮件保存为草稿回复回复邮件转发转发邮件地址簿打开地址簿表单编辑编辑邮件删除删除邮件2.转发表单(wForward)表2-1-3转发表单设计数据域类型说明SendTo文本域收件人地址CopyTo文本域邮件抄送地址BlindCopyTo文本域邮件密送地址WebSubject文本域邮件主题Text文本域(允许多行)邮件正文haveread文本域邮件文件已读标志 XX工业研究院办公自动化系统设计操作说明发送发送邮件保存为草稿将邮件保存为草稿回复回复邮件转发转发邮件地址簿打开地址簿表单编辑编辑邮件删除删除邮件1.信件邮递报告表单(NonDeliveryReport)表2-1-4信件邮递报告表单设计数据域类型说明OriginalSubject文本域被邮递的信件名称IntendedRecipient文本域被邮递信件的收件人地址FailureReason文本域邮件为邮递到目的地原因SendTo文本域被邮递邮件文件中指定的收件地址CopyTo文本域被邮递邮件文件中指定的抄送地址BlindCopyTo文本域被邮递邮件文件中指定的密送地址Subject文本域被邮递邮件文件的主题Body文本域(允许多行)被邮递邮件文件的内容haveread文本域邮件文件已读标志操作说明删除删除邮件二.视图设计1.收件箱($Inbox)收件箱通过文件夹实现,所有接收到邮件文件均由系统自动放入收件箱中。2.发件箱($Sent)用于所发送的邮件均自动保存在发件箱中。文档选择条件为:SELECTDeliveredDate=""&PostedDate!="" XX工业研究院办公自动化系统设计&!(@IsMember("S";ExcludeFromView))&Viewtag!="Delete"3.草稿箱($Drafts)所有保存为草稿的邮件均显示在草稿箱中。文档选择条件为:SELECTPostedDate=""&$MessageType=""&@IsNotMember("D";ExcludeFromView)&ISMAILSTATIONERY!=1&Viewtag="Istrash"4.垃圾箱(Carbage)所有被删除的邮件均保存在此视图中。在此视图中再次删除的话,则邮件文件被真正删除。文档选择条件为:SELECT(FORM="Memo"|form="Reply"|Form="wForward")&Deleted="true" XX工业研究院办公自动化系统设计§2.2公文流转一.结构设计XX工业研究院OA系统公文流转模块总体结构如下图所示。图2-2-1公文流转模块结构设计二.功能设计公文流转模块提供的具体功能如下图所示:图2-2-2公文流转模块功能设计 XX工业研究院办公自动化系统设计三.表单设计1.公文表单(Data)公文表单用于记录公文的相关信息。具体设计如下:表2-2-1公文表单设计数据域类型说明GWLX列表框公文类型DJBM列表框公文的登记部门DJSJ文本域公文的登记时间Subject文本域公文标题NGR文本域公文起草人姓名GWHJ列表框公文缓急信息列表ZTCB文本域公文的主题词ZBDW文本域主办单位名称ZCDW文本域主送单位名称CSDW文本域抄送单位名称CBDW文本域抄报单位名称Info文本域(允许多行)公文正文内容Data_Number文本域公文的编号SelectWorkFlow列表框显示过程定义模版列表PersonAnswer文本域显示处理人的批复意见Data_Personlist文本域允许处理本公文的用户列表Start文本域公文是否为首次提交Data_Current_Editor文本域记录当前编辑公文的用户姓名CuiBan文本域是否存在公文催办通知操作说明提交流转提交公文进入流转过程暂存将公文保存为草稿签收处理人打开公文进行编辑编辑公文作者编辑公文删除删除公文催办发出公文催办通知 XX工业研究院办公自动化系统设计说明:(1)Subject、Info等用于记录公文的内容信息,公文的内容信息包括公文主题、公文编号、公文内容、公文密级、公文缓急等。(2)NGR、DJSJ分别记录公文文档的创建人和创建时间,工作流的管理与监控功能会用到这些信息。(3)SelectWorkFlow是列表框,用于显示所有可供使用的过程定义模版。在公文的创建阶段,用户从列表中选择要使用的流程;在公文进入流转过程以后,由工作流引擎根据所选择的流程,自动生成过程定义实例,之后实现公文文档同过程定义实例的绑定操作。(4)Data_Personlist域用于记录所有对本文档具有处理权限的用户的用户名列表,只有在此列表中列出的用户才能够对公文进行处理。其取值由工作流引擎自动填写。1.公文附件表单(AddAttachment)公文附件表单用于存储某一公文所包含的附件文件,一个公文可以包含多个附件,每个附件对应一个公文附件表单。表2-2-2公文附件表单设计数据域类型说明Attachment_Info文本域对附件的简要说明FileUpload控件上载文件控件ParentId文本域此附件表单所从属的公文表单IDAttachment_Name文本域附件文件名Attachment_Size文本域附件文件大小操作说明保存附件保存公文附件表单删除附件删除公文附件表单关闭窗口关闭公文附件上载窗口2.公文正文表单(AddDocumentBody)公文正文表单用于存储某一公文所包含的正文文件,一个公文可以包含多个正文文件,每个正文文件对应一个公文正文表单。 XX工业研究院办公自动化系统设计表2-2-3公文正文表单设计数据域类型说明Attachment_Info文本域对正文文件的简要说明FileUpload控件上载文件控件ParentId文本域此公文正文表单所从属的公文表单IDAttachment_Name文本域附件文件名Attachment_Size文本域附件文件大小操作说明保存正文保存公文正文表单删除正文删除公文正文表单关闭窗口关闭公文正文上载窗口1.工作流信息表单(WorkFlowInfo)工作流信息表单用于存储工作流程模版的基本属性信息。在流程信息表单中定义的重要数据域如下:表2-2-4工作流信息表单数据域类型说明Workflow_Name文本域流程名称Workflow_Type列表框流程类型,可选值为“预定义流程”和“自定义流程”Workflow_Author文本域此流程创建人姓名Workflow_Created文本域此流程创建时间Workflow_Body文本域此流程功能简要说明操作说明修改编辑工作流信息表单保存保存工作流信息表单删除删除工作流信息表单2.流程节点表单(event) XX工业研究院办公自动化系统设计流程节点表单用于记录过程定义中流程节点所包含的信息。过程定义中的每个流程节点都与Domino数据库中的一个流程节点文档对应。表2-2-5流程节点表单设计数据域类型说明Workflow_Id文本域节点所从属的工作流信息文档IdData_Id文本域与此过程定义所绑定的应用数据文档IdEvent_Id文本域流程节点文档Id,在节点文档生成后自动填写Event_Name文本域流程节点功能描述名称,如初审、批阅等。Event_Pre_Names列表框此流程节点的全部前趋节点列表Event_Personlist文本域此节点允许处理人名称Event_Personlist_Type列表域指定处理人类型:“个人”、“交色”SXQM复选框是否使用手写签名功能Event_Body文本框(允许多值)此节点功能简要说明Event_Pre_Name文本域(允许多值)以节点名称表示的前驱节点列表Event_Pre_Id文本域(允许多值)以节点Id表示的前驱节点列表Evemt_Next_Name文本域(允许多值)以节点名称表示的后继节点列表Event_Next_Id文本域(允许多值)以节点Id表示的后继节点列表Event_Status文本域流程节点状态Event_Period文本域流程节点文档状态Event_Period文本域用于区分模版和实例,可取值为“模版”、“实例”SelectPre复选框此节点是否为选择性收点SelectNext复选框此节点是否为选择性发点SelectNode文本域如果此节点是选择性发点,则此域用于记录所选定的后继节点名称 XX工业研究院办公自动化系统设计操作说明修改编辑流程节点表单保存保存流程节点表单删除删除流程节点表单说明:(1)流程节点定义中的Att(事件属性集合)通过数据域Workflow_Id、Data_Id、Event_Id、Event_Name、Evnent_Personlist、SXQM等表达出来。Event_Pre_Name、Event_Pre_Id为允许多值的文本域,以节点名称和节点文档Id两种方式表达此节点的前驱节点集合Pre;Event_Next_Name、Event_Next_Id则以节点名称和节点文档Id两种方式表达此节点的后继节点集合Next。Event_Status表达节点状态信息。(2)Workflow_Id数据域用于标识此流程节点文档所从属的工作流程。属于同一工作流程的流程节点文档具有相同的Workflow_Id。(3)Data_Id数据域用于实现应用数据实例同过程定义实例的一一对应。Data_Id的值为公文表单的文档实例的文档Id,由工作流管理系统自动填写。组成一个过程定义实例的所有流程节点文档具有相同的Data_Id值。(4)Event_Status标识流程节点的状态信息,由工作流引擎自动设置。(5)构成过程定义的流程节点文档在工作流进入运行期之前,存储在过程定义模版库中;在运行期,则存储到过程定义实例库。因此,在流程节点表单中使用Event_Period数据域来标识过程定义的状态。属于同一过程定义的节点文档的Event_Period域的值是相同的。其可能取值为“模版”和“实例”。(6)SelectPre数据域用于标识此节点是否为选择性收点。在工作流实例运行期间,工作流引擎需要根据此数据域的取值选择不同的启动条件构造算法。(7)SelectNext数据域用于表示此节点是否为选择性发点。在工作流实例运行期间,工作流引擎需要根据此数据域的取值选择不同的完成条件构造算法。节点所选定的后继节点的名称保存在SelectNode数据域中。1.已办公文记录表单(DoneRecord)已办公文记录表单用于记录用户已经处理完成的公文的相关信息,以备日后查阅。 XX工业研究院办公自动化系统设计表2-2-6已办公文记录表单设计数据域类型说明Subject文本域公文标题NGR文本域记录公文的拟稿人姓名SDSJ文本域收到此公文的时间BJSJ文本域完成处理的时间PYYJ文本域用户的批阅意见操作说明删除删除已办公文记录表单1.用户角色设置表单(UserRuls)用户角色设置表单用于记录用户同其职务的对应关系。表2-2-7用户角色设置表单设计数据域类型说明RulName文本域角色名称SendTo文本域人员名称ZhiNeng文本域角色职能说明操作说明修改编辑用户角色设置表单保存保存用户角色设置表单删除删除用户角色设置表单2.搜索表单(SearchForm)搜索表单用于输入文档检索条件。表2-2-8搜索表单设计数据域类型说明Search_ViewName列表框选择要检索的视图Search_Info文本域人员名称Search_Type文本域角色职能说明HTML文本域文档检索结果 XX工业研究院办公自动化系统设计操作说明检索文档进行检索操作四.视图设计1.工作流名称列表用于显示数据库中所有工作流信息文档。文档选择条件:SELECTform="WorkFlowInfo"2.模版事件列表用于显示所有具有“模版”属性的流程节点文档。文档选择条件如下:SELECT((Form="流程节点")&(Event_Period="模版"))3.激活事件列表用于显示所有具有“激活”属性的流程节点文档。文档选择条件如下:SELECT((Form="流程节点")&(Event_Period="激活"))4.数据表单列表用于显示所有公文文档。文档选择条件如下:SELECTform="数据表单"&Start=05.公文草稿列表用于显示所有保存为草稿的公文文档。文档选择条件如下:SELECTform="数据表单"&Start=16.公文附件列表用于显示所有公文附件文档。文档选择条件如下:SELECTform="AddAttachment"7.公文正文列表用于显示所有公文正文文档。文档选择条件如下: XX工业研究院办公自动化系统设计SELECTform="AddDocumentBody"1.已办公文列表用于显示所有已办公文记录文档。文档选择条件如下:SELECTform="DoneRecord"五.工作流流转控制算法设计1.功能分析将工作流引擎的功能细化为以下几个子功能:(1)创建过程定义实例在工作流进入运行期以前,过程定义以模版的形式保存在过程定义模版库中。工作流进入运行期,工作流引擎必须根据用户所选定的过程定义模版自动生成过程定义实例,并存入负载最低的过程定义实例子库。(2)完成应用数据实例和过程定义实例的绑定操作在过程定义实例生成以后,工作流引擎必须将其同对应的应用数据实例绑定,实现一一对应,从而完成数据单元实例的组建。(3)在工作流实例运行期间,对流程节点的状态信息进行维护在基于流程节点单一设计元素的过程定义模型中,定义了流程节点状态信息来描述节点对应用数据的处理状态。而整个工作流实例的运行状态会通过流程节点的状态表达出来。工作流引擎需要根据流程节点的启动条件和完成条件来对节点的状态进行设置,从而模拟出数据流动的效果。这是工作流引擎的核心功能。(4)对应用数据文档的访问控制列表进行维护流程节点状态信息的变化必须转化为用户对应用数据处理权限的变化。某一流程节点状态信息变为active,实际意味着在此节点定义中指定的处理人获得了对应用数据文档的处理权;状态信息为inactive或done则表示指定的处理人没有处理文档的权限。因此,工作流引擎需要根据流程节点状态信息的变化,对应用数据表单中的用户访问控制列表进行修改,从而实现节点状态信息和用户对文档处理权限的一致变化。(5)工作流实例运行期间,给予用户对过程定义实例的动态修改的能力由于实际业务处理过程往往表现出一定的随意性,因此,工作流引擎应该向 XX工业研究院办公自动化系统设计用户提供在工作流实例运行期间,对过程定义实例的修改能力,使用户可以根据文档处理的需要,对预定义的流程进行临时性的修改。这种动态修改流程的能力,可以大大加强工作流系统的灵活性,使工作流系统更加满足用户的实际需求。下图表示了当用户完成应用数据文档的处理,将文档保存提交以后,工作流引擎处理数据的过程:图2-2-3工作流引擎处理数据流程1.创建过程定义实例和同应用数据实例绑定在流程节点表单(Event)中定义了数据域Event_Period来区分属于过程定义模版库的节点文档和过程定义实例库的节点文档;而Data_Id域用于记录对应应用数据文档的文档Id信息。工作流引擎通过四个步骤完成过程定义实例的创建和同应用数据文档的绑定操作。(1)流程节点文档复制将过程定义模版库中属于相应过程定义的流程节点文档复制,生成一个新的 XX工业研究院办公自动化系统设计流程节点文档。此新节点文档的数据域的值同其原型完全相同。关键代码如下:‘在数据库中创建新文挡Setnewnode=NewNotesDocument(db)‘将模版库中的节点文档node的全部数据域复制到新文档Callnode.CopyAllItems(newnode,True)(2)置Event_Period域将新建流程节点文档中Event_Period数据域的值由“模版”改为“实例”。关键代码如下:newnode.Event_Period=“实例”(3)同应用数据实例绑定将应用数据文档如公文文档的文档Id值置入新建流程节点文档的Data_Id域,从而完成绑定操作。关键代码如下:‘data为应用数据文档newnode.Data_Id=data.Universalid1.维护流程节点状态信息a)原理流程假设某节点node完成了应用数据文档处理,接下来工作流引擎会通过设置流程节点的状态信息来更新工作流实例的运行状态。工作流实例运行状态的更新过程可以用下图所示的原理流程表达: XX工业研究院办公自动化系统设计图2-2-4状态更新原理流程从状态更新的原理流程中可以看出,状态更新过程由节点node完成对应用数据文档的处理触发,之后工作流引擎分三步来修改节点状态:a.设置节点node状态为done当流程节点处理完成后,状态有active变为done。b.激活新流程节点流程节点的启动条件决定了节点何时被激活,何时获得处理权限。在此步骤中,工作流引擎通过构造各个流程节点的启动条件,判断其值来完成节点处理权限的传递。因为流程节点的启动条件可以通过其所有前驱节点的状态信息和流转顺序信息的逻辑组合表达出来,所以在节点node完成处理后,工作流引擎没有必要计算构成过程定义实例的所有节点的启动条件,而只需要计算节点node的所有后继节点的启动条件即可。c.决定哪些节点的状态有done变为inactive流程节点状态由done转化为inactive的必要性在过程定义模型部分已经作 XX工业研究院办公自动化系统设计了说明,节点的完成条件规定了这一状态转化的条件。在某节点完成处理后,工作流引擎通过计算其它节点的完成条件,来确定哪些状态为done的节点可以将状态设置为inactive。b)步骤1的具体实现步骤1的目的是在节点node完成对应用数据文档的处理以后,将节点状态设置为done。关键代码如下:node.Event_Status=“done”c)后继节点状态设置算法步骤2的目的是设置节点node的后继节点的状态,节点node的类型以及其后继节点的类型决定了步骤2有不同的实现方式。设置node后继节点状态的过程可以用下图表达:图2-2-5后继节点状态设置算法从图中可以看出,将设置算法依据节点node的分类分为两种情况: XX工业研究院办公自动化系统设计a.节点node为唯一后继节点或者发点此种情况下,节点node需要遍历其所有的后继节点,计算每个后继续节点的启动条件的取值。b.节点node为选择性发点当节点node为选择性发点时,根据选择性发点的定义,只有一个后继节点可以获得处理权,因此不需要遍历其所有的后继节点,只需计算其所选定的后继节点的启动条件即可。根据后继节点的类型,计算启动条件分为两种情况(状态设置算法1和状态设置算法2):a.后继节点为收点或唯一前驱节点当节点node的某个后继节点next为收点或唯一前驱收点时,在遍历next的所有前驱节点时,对每个前驱节点计算判断式(select(prei)CTNnext)AND(status(prei)=“done”)的值,只要有一个为false,则next的启动条件必然不成立,即可以终止遍历循环。判断next的启动条件值的关键代码如下:DimflagasBooleanflag=false‘遍历next的全部前驱节点ForallnInnext.Event_Pre_IdSetprenode=db.GetDocumentByUNID(n)IfNot(Select(prenode,next)=trueANDprenode.Event_Status(0)=“done”)Then‘Select()函数用于判断prenode所选定的后继节点列表中是否包括nextflag=trueExitForAllEndIfEndForall ‘设置后继节点next的状态Ifflag=truethen XX工业研究院办公自动化系统设计‘节点next的启动条件不满足,状态不变Else‘节点next的启动条件满足,将状态变为activenext.Event_Status=“active”next.saveTrue,True,TrueEndIfb.后继节点为选择性收点当节点node的某个后继节点next为选择性收点时,不需要遍历next的所有前驱节点,而只需要判断下式对节点node的取值即可。(select(node)CTNnext)AND(status(nodei)=“done”)关键代码如下:If(Select(node,next)=trueANDnote.Event_Status(0)=“done”)then‘Select()函数用于判断node所选定的后继节点列表中是否包括nextnext.Event_Status=“active”next.saveTrue,True,TrueElse‘next状态保持不变EndIfd)设置完成条件得到满足的流程节点状态当完成对流程节点node的后继节点状态设置以后,其后继节点状态的变化可能使某些节点的完成条件得到满足,从而完成流程节点状态信息由done向inactive的转化。在判断流程节点的完成条件时,没有必要计算组成过程定义实例的所有流程节点的完成条件,只需要检查节点node的获得了处理权的后继节点的所有前驱节点的完成条件即可。判断完成条件的处理流程如图2-2-6所示。从流程中可以看到,根据next的前驱节点类型,构造next的前驱节点的完成条件有两种方式(完成条件判断算法1和完成条件判断算法2):(2)next的前驱节点为唯一后继节点或者发点关键代码如下:DimflagasBooleanflag=false‘假设prenode为next某个前驱节点,nextnode为prenode的某个后继节点 XX工业研究院办公自动化系统设计ForallxInprenode.Event_Next_NameSetnextnode=db.getdocumentbyunid(GetIdByName(y))Ifnextnode.Event_Status(0)<>“active”Thenflag=TrueEndIfEndForallIfflag=TrueThen‘prenode的完成条件不满足,保持状态不变Elseprenode.Event_Status=“inactive”prenode.saveTrue,True,TrueEndIf(2)next的前驱节点为选择性发点关键代码如下:‘假设prenode为next的某个具有选择性发点类型的前驱节点,nextnode为prenode所选定的获得处理权的唯一后继节点Setnextnode=db.getdocumentbyunid(GetIdByName(prenode.SelectEvent(0)))Ifnextnode.Event_Status(0)=“active”then‘prenode的完成条件得到满足prenode.event_system=“inactive”prenode.saveTrue,True,TrueElse‘prenode的完成条件不成立,状态保持不变EndIf XX工业研究院办公自动化系统设计 XX工业研究院办公自动化系统设计图2-2-6流程节点完成条件判断算法e)设置应用数据文档的访问控制列表公文表单中的Data_Personlist数据域用于存储允许访问列表,只有列在此列表中的用户才具有对文档的处理权限。通过查找过程定义实例中所有状态为active的流程节点,将它们在Event_Personlist数据域中所指定的处理人姓名添加到应用数据文档的Data_Personlist数据域,来完成节点状态和应用数据文档处理权限的同步变化。关键代码如下:‘假设过程定义实例存储在过程定义实例视图view中,data为应用数据文档Setitem=data.getfirstitem(“Data_Personlist”)Setnode=view.getfirstdocumentWhileNot(nodeIsNothing)‘判断与此应用数据文档相绑定的流程节点的状态If((node.Data_Id(0)=data.Universalid)And(node.Event_Status(0)=“active”))Then‘找到了具有处理权的流程节点,将其指定的处理人加入到应用数据文档的Data_Personlist数据域中Callitem.appendtotextlist(node.Event_Personlist(0))data.saveTrue,True,TrueEndIfSetnode=view.getnextdocument(node)Wend六.工作流流程定义工具设计流程定义工具的功能可以细分为:(1)向用户提供定义工作流的操作界面(2)根据用户的输入自动生成以文本形式表达的工作流抽象描述(3)将以文本形式表达的工作流抽象描述发送给格式转化工具组件1.类关系将流程节点抽象为流程节点类(Node XX工业研究院办公自动化系统设计),同时,将流程节点定义中的事件属性集合、前驱节点集合、后继节点集合均做对象化处理,由此产生属性信息(Attibute)、前驱节点信息(PreNodes)、后继节点信息(NextNodes)三个类。这三个类同流程节点类构成复合聚合的关系,如下图所示。图2-2-7复合聚合型的类关系1.类结构设计(1)流程节点类(Node)ClassNode{privateStringnode_id;privateAttibuteatt;privatePreNodesp;privateNextNodesn;privateStringtype;privateStringstatus;PublicStringgetId();PublicvoidsetId(Strings);PublicAttibutegetAtt();PublicPreNodesgetP();PublicNextNodesgetN();PublicStringgetStatus();PublicvoidsetStatus(Strings);} XX工业研究院办公自动化系统设计实际业务处理过程最终会抽象表达为一系列流程节点类实例的集合。对流程节点类的定义完全遵循流程节点的定义。类定义中成员变量和方法的含义在下表中加以说明:表2-2-9流程节点类设计成员变量含义node_id流程节点的唯一标识符att对流程节点属性信息类(Attribute)的引用p对流程节点前驱节点信息类(PreNodes)的引用n对流程节点后继节点信息类(NextNodes)的引用type流程节点的类型方法作用getId()取得流程节点唯一标识setId()设置流程节点唯一标识getAtt()取得节点状态信息类的指针getP()取得节点前驱节点信息类的指针gerN()取得节点后继节点信息类的指针getType()取得节点类型信息serType()设置流程节点类型信息(2)属性信息类(Attibute)ClassAttibute{privateStringnode_name;privateStringnode_person;privateBooleannode_reply;privateBooleannode_sign;privateStringnode_body;PublicStringgetName();PublicvoidsetName(Strings);PublicStringgetPerson(); XX工业研究院办公自动化系统设计PublicvoidsetPerson(Strings);PublicStringgetReply();PublicvoidsetReply(Booleanb);PublicStringgetSign();PublicvoidsetSign(Booleanb);PublicStringgetBody();PublicvoidsetBody(Stirngs);}属性信息类用于表达流程节点所代表的实际业务步骤的重要属性信息。属性信息类定义中成员变量和方法的含义在下表中加以说明:表2-2-10属性信息类设计成员变量含义node_name流程节点标识名称node_person流程步骤的处理人。当节点获得了处理权以后,只有在此变量中列出的人员才能够对应用数据进行处理node_reply节点完成处理以后,是否向工作流发起人发送已办通知,取值为false或truenode_sign是否在节点完成处理时,使用手写签名认证功能,取值为false或truenode_body对节点所代表的实际业务步骤的功能的说明方法作用getXXXX()取得相应属性值setXXXX()设置相应属性值(3)前驱节点信息类(PreNodes)ClassPreNodes{ArrayListpreList;PublicvoidaddPre(); XX工业研究院办公自动化系统设计PublicObjectgetPre(Strings)PublicintgetAcount();PublicvoidemptyList();}前驱节点信息类用于对流程节点的前驱节点进行记录和管理。类定义中成员变量和方法的含义在下表中加以说明:表2-2-11前趋节点信息类设计成员变量含义preList节点的前驱节点引用列表数组方法作用addPre()向列表中添加新节点引用getPre()从列表中取得前驱节点引用getAcount()取得前驱节点数目emptyList()清空前驱节点列表(4)后继节点信息类(NextNodes)ClassNextNodes{ArrayListnextList;PublicvoidaddNext();PublicObjectgetNext(Strings);PublicintgetAcount();PublicvoidemptyList();}后继节点信息类用于对流程节点的后继节点进行记录和管理。类定义中成员变量和方法的含义在下表中加以说明:表2-2-12后继节点信息类设计成员变量含义nextList节点的后继节点引用列表 XX工业研究院办公自动化系统设计方法作用addNext()向列表中添加新后继节点引用getNext()从列表中取得指定后继节点引用getAcount()取得后继节点数目emptyList()清空后继节点列表1.过程定义工具文本输出格式选择XML作为工作流抽象描述文本的输出格式。定义DTD如下:在DTD中定义了两种元素:workflow和node。workflow元素用于记录用户所定义的工作流流程的名称、类型、创建人信息。一个workflow可以包括一个或者多个node元素实例。node元素用于记录过程定义中某一流程节点的信息,其属性值对应上节所定义的流程节点类(Node)中所包含的信息。七.格式转化工具设计格式转化工具的功能可以细分为:(1)接收工作流过程定义工具的文本输出流 XX工业研究院办公自动化系统设计(2)对接收到的抽象表达工作流的文本序列进行分析,生成相应的数据库操作指令。格式转化功能的实现流程可以用下图来表达:图2-2-8格式转化功能实现流程通过JAVA语言提供的SAX(扩展标记语言简易应用程序编程接口)[25]来读取XML格式文本序列中的信息。支持SAX接口的XML解析器对接收到的XML格式工作流抽象描述文本序列进行分析,当它发现了一个元素实例后,随即触发文档处理器中用于处理该种元素实例的代码。不同种类元素实例的处理代码均在文档处理器中定义。元素实例处理代码首先取得元素实例的所有属性信息,之后利用数据库提供的数据库远程操作接口,在数据库中创建相应的数据文档。以流程节点文档的创建过程为例。XML格式工作流抽象描述文本中的node元素实例被XML解析器解析出来,触发文档处理器中针对node元素实例的处理程序。处理程序首先取得node元素实例的参数值,作为在Domino数据库中创建的流程节点文档的数据域的值,随后通过Domino系统为JAVA语言提供的数据库远程操作接口完成流程节点文档的创建。当XML格式文本序列中所包含的workflow元素实例和多个node XX工业研究院办公自动化系统设计元素实例所对应的数据库文档均创建完成以后,格式转化工作即告完成。 XX工业研究院办公自动化系统设计§2.3公共事务一.总体结构设计XX工业研究院公共事务模块整体结构如下:公共事务日程安排会议安排办公室设备管理其他日常事务全部会议日程全部日程列表日程草稿列表审批日程列表空闲时间查询空闲日期查询全部会议列表全部会议列表审批会议列表会议记录列表会议纪要列表空闲会议室会议室空时段会议室管理固定资产管理来宾接待图2-3-1公共事务模块结构图二.表单设计1.日程安排表单 XX工业研究院办公自动化系统设计日程安排表单用于记录日程安排的相关信息。具体设计如下:表3.1日程安排表单条目域功能备注表单安排名称Arrange_Name输入该安排名称文字域任务范围Arrange_Range选择该安排涉及范围全公司、个人起始时间Arrange_Starttime选择安排起始时间时间域结束时间Arrange_Stoptime选择安排结束时间时间域涉及处室Arrange_Dept选择涉及的处室文字域涉及人员Arrange_Person选择涉及的人员文字域安排描述Arrange_Describe输入该阶段的任务文字域审批类型Review_Type选择审批类型并行、串行审批人名单Reviewer_List输入所有审批人姓名域审批意见Choice选择同意或不同意同意、不同意审批建议Suggestion输入审批建议文字域状态标志Status表示安排所处状态文字域发布标志Arrange_Status表示安排发布状态文字域工具条存储安排X存储编辑的日程安排保存草稿X保存日程安排的草稿提交审批X提交日程安排审批完成审批X完成日程安排审批填写意见X填写审批意见编辑X重新编辑日程安排草稿删除X删除日程安排退出X退出日程安排的编辑说明:日程安排的发布范围为全公司时,才进行审批流程,因此在发布范围为个人时,与审批相关域与工作条为隐藏状态。Status域包含3种状态,分别用数字1、2、3表示,1表示安排处于新建立状态,2表示安排处于审批状态,3表示安排处于审批完成状态。Arrange_Status域包含2种状态,分别用数字0、1表示,0表示安排未发布,1表示安排已被发布。删除和编辑工作也是只由日程安排起草者完成。对于其他用户呈隐藏状态。2.会议安排表单会议安排表单用于记录会议安排的相关信息。具体设计如下:表3.2会议安排表单条目域功能备注表单会议主题Arrange_Name输入该安排名称文字域任务范围Arrange_Range选择该安排涉及范围全公司、本部门、指定起始时间Arrange_Starttime选择安排起始时间时间域结束时间Arrange_Stoptime选择安排结束时间时间域 XX工业研究院办公自动化系统设计会议主持人President会议主持人姓名姓名域会议起草人Draftman会议起草人姓名姓名域涉及处室Arrange_Dept选择涉及的处室文字域涉及人员Arrange_Person选择涉及的人员文字域会议描述Arrange_Describe输入该阶段的任务文字域审批类型Review_Type选择审批类型并行、串行审批人名单Reviewer_List输入所有审批人姓名域审批意见Choice选择同意或不同意同意、不同意审批建议Suggestion输入审批建议文字域状态标志Status表示会议所处状态文字域发布标志Meeting_Status表示会议发布状态文字域工具条发布通知X存储编辑的会议安排保存草稿X保存会议安排的草稿填写记录X填写会议记录提交审批X提交会议审批完成审批X完成会议审批填写意见X填写审批意见编辑X重新编辑会议草稿删除X删除会议退出X退出会议的编辑说明:会议安排的发布范围为全公司、本部门、指定三种,三种状态下均能进入审批流程。Status域包含3种状态,分别用数字1、2、3表示,1表示会议处于新建立状态,2表示会议处于审批状态,3表示会议处于审批完成状态。Meeting_Status域包含2种状态,分别用数字0、1表示,0表示会议未发布,1表示会议已被发布。3.会议记录表单会议记录表单用于记录会议记录的相关信息。具体设计如下:表3.3会议记录表单条目域功能备注会议时间Meeting_Time显示会议的时间文字域,自动生成会议地点Meeting_Location显示开会地点文字域,自动生成会议起草人Meeting_Draftman显示会议起草人文字域,自动生成会议主题Meeting_Topic显示会议主题文字域,自动生成会议主席Meeting_President显示会议的主席文字域与会者Meeting_Member显示与会者文字域缺席者Meeting_unabsent显示缺席者文字域记录页数Record_Page显示记录页数文字域审批类型Review_Type选择审批类型并行、串行审批人名单Reviewer_List输入所有审批人姓名域审批意见Choice选同意或不同意同意、不同意审批建议Suggestion输入审批建议文字域状态标志Status表示记录所处状态文字域发布标志Record_Status表示记录发布状态文字域 XX工业研究院办公自动化系统设计工具条发布记录X存储会议记录填写纪要X填写会议纪要提交审批X提交记录审批完成审批X完成记录审批填写意见X填写审批意见编辑X重编会议记录删除X删除会议记录退出X退出会议记录说明:会议记录为详细的会议内容记录,包括文字和语音文件,同时需要进行详细的审批工作。并详细记录与会人员情况。Status域包含3种状态,分别用数字1、2、3表示,1表示记录处于新建立状态,2表示记录处于审批状态,3表示记录处于审批完成状态。Record_Status域包含2种状态,分别用数字0、1表示,0表示记录未发布,1表示记录已被发布。4.会议纪要表单会议纪要表单用于记录会议纪要的相关信息。具体设计如下:表3.4会议纪要表单条目域功能备注会议时间Meeting_Time显示会议的时间文字域,自动生成会议地点Meeting_Location显示开会地点文字域,自动生成会议起草人Meeting_Draftman显示会议起草人文字域,自动生成会议主题Meeting_Topic显示会议主题文字域,自动生成会议简要Meeting_Summary会议简要内容文字域会议主席Meeting_President显示会议的主席文字域与会者Meeting_Member显示与会者文字域缺席者Meeting_unabsent显示缺席者文字域工具条发布通知X存储会议纪要编辑X重编会议纪要删除X删除会议纪要退出X退出会议纪要说明:会议纪要是简略的会议记录,是在会议记录上精简而成。作为最终的存稿。1.空闲时间查询表单空闲时间查询表单用于进行公司用户公共空闲时间查询。具体设计如下:表3.5公共空闲时间查询表单条目域功能备注被查询人员Search_Persons输入被查询人员文字域 XX工业研究院办公自动化系统设计查询日期Search_Date输入查询日期文字域工具条查询X启动查询工作退出X退出查询说明:公共空闲时间查询主要功能是查找指定人列表中所有人在指定日期内的公共空闲时间段。查询结果就是表单中各空闲时间段保持原有颜色,而非空闲时间段变色为红色。1.空闲日期查询表单空闲日期查询表单用于进行公司用户公共空闲日期查询。具体设计如下:表3.6公共空闲日期查询表单条目域功能备注被查询人员Search_Persons输入被查询人员文字域工具条查询X启动查询工作退出X退出查询说明:公共空闲日期查询主要功能是查找指定人列表中所有人在最近4周内空闲日期分布情况。查询结果就是表单中各空闲日期保持原有颜色,而非空闲日期变色为红色。而点击每个日期可以显示指定日期时间段分布情况。2.会议室管理表单会议室管理表单用于进行公司内部会议室信息管理存储。具体设计如下:表3.7会议室管理表单条目域功能备注会议室名称Room_Name输入会议室名文字域会议室别名Room_Alias输入会议室别名文字域会议室容量Capacity输入会议室容纳人数文字域说明Comment输入会议室情况说明文字域工具条保存X保存会议室信息删除X删除已有信息编辑X再编辑已有信息退出X退出会议室信息表单说明:会议室由于存在地点和名称两重属性,因此这里设置了名称和别名两种名称属性,用于会议室的区分。3.空闲会议室查询表单空闲会议室查询表单用于进行公司内部空闲会议室查询。具体设计如下: XX工业研究院办公自动化系统设计表3.8空闲会议室查询表单条目域功能备注开始时间Start_Time输入查询时间段开始时间时间域结束时间End_Time输入查询时间段结束时间时间域工具条查询X启动查询工作退出X退出查询说明:空闲会议室查询在输入了所要查询时间段的开始和结束时间后,查询输出,在指定时间段内尚无安排的公司内部会议室列表。1.会议室空时段查询表单会议室空闲时段查询表单用于查询公司内部会议室在何时段内尚未安排使用。具体设计如下:表3.9会议室空闲时段查询表单条目域功能备注会议室名Room_Name输入查询会议室名称文字域查询日期Search_Date输入查询日期时间域工具条查询X启动查询工作退出X退出查询2.来宾接待表单来宾接待表单用于记录公司来宾接待情况。具体设计如下:表3.10来宾接待表单条目域功能备注来宾姓名Guest_Name输入来宾姓名文字域来宾单位Guest_Inst输入来宾单位文字域来访目的Visit_Aim输入访问的目的文字域被访人Visited_Person输入被访人姓名文字域来访时间Visit_Time输入来客访问时间时间域离开时间Depart_Time输入来客离开时间时间域备注Comment输入来宾其他访问信息文字域工具条保存X保存来宾访问信息编辑X再编辑来宾访问信息删除X删除原有来宾信息退出X退出来宾接待三.视图设计 XX工业研究院办公自动化系统设计1.会议安排视图选择关系:SELECTform="Document"&Meeting_Status="1"包括与用户相关的所有已发布会议安排文档。2.会议草稿视图选择关系:SELECTform="Document"&meeting_status="0"&status="1"包括用户起草的所有未发布并且新建成的会议安排文档。3.在审会议视图选择关系:SELECTform="Document"&status!="1"包括与用户有关的所有在审会议安排和审批完成的会议安排文档。4.议记录视图选择关系:SELECTform="Meeting_Record"包括所有由用户起草的会议记录文档。5.议纪要视图选择关系:SELECTform="Meeting_Info"包括所有与用户有关的会议纪要文档。6.日程安排视图选择关系:SELECTform="Appointment"&Arrange_Status="1"包括与用户相关的所有已发布日程安排记录。7.日程草稿视图选择关系:SELECTform="Appointment"&Arrange_status="0"&status="1"包括用户起草的所有未发布并且新建成的日程安排文档。8.在审日程视图选择关系:SELECTform="Appointment"&status!="1"包括与用户有关的所有在审日程安排和审批完成的日程安排文档。9.会议室视图选择关系:SELECTform="meetingroom"包括所有会议室信息文档10.来宾接待视图选择关系:SELECTForm="guest"包括所有来宾接待信息文档 XX工业研究院办公自动化系统设计§2.4电子讨论区一.讨论区功能模块设计讨论区模块提供的具体功能如下图所示:2-4-1讨论区功能模块结构图二.讨论板块Ø数据表单讨论区内各个板块公用一套表单与视图,表单中增加了一个作用域,用来区分讨论区的类别。数据表单具体设计如下:讨论区表单设计(MainTopic)数据域类型说明Subject文本框讨论主题WebCategories列表框分类 XX工业研究院办公自动化系统设计FileUpload控件上载附件Choiceone单选框表情Author文本框作者,为讨论区内用户注册的笔名Password文本框密码Body多行文本域讨论内容NoticeDateComposed日期/时间公告发布时间(隐藏域)操作说明发布论题发布讨论正文表单新建答复新建答复删除删除讨论表单及表单的子表单返回返回到上一页面Ø数据视图公司特快:SELECTForm=“MainTopic”&WebCategories=“公司特快”新闻实事:SELECTForm=“MainTopic”&WebCategories=“新闻实事”工作学习:SELECTForm=“MainTopic”&WebCategories=“工作学习”人文艺术:SELECTForm=“MainTopic”&WebCategories=“人文艺术”休闲娱乐:SELECTForm=“MainTopic”&WebCategories=“休闲娱乐”电脑应用:SELECTForm=“MainTopic”&WebCategories=“电脑应用”其它方面:SELECTForm=“MainTopic”&WebCategories=“其它方面”意见反馈:SELECTForm=“MainTopic”&WebCategories=“意见反馈”讨论区各板块视图条目域说明讨论主题Subject显示公告主题(链接,点击阅读)创建时间NoticeDateComposed显示创建时间作者Author显示发布作者回复文章数X显示回复的文章数操作说明新建论题进入新建论题页面上一页讨论区文章向上滚动下一页讨论区文章向下滚动搜索进入搜索讨论区页面三.用户笔名注册 XX工业研究院办公自动化系统设计Ø数据表单数据表单具体设计如下:笔名注册表单设计(MainTopic)数据域类型说明UserName文本框笔名Password1文本框密码Password2文本框密码确认操作说明提交提交注册内容取消取消操作 XX工业研究院办公自动化系统设计§2.5信息服务一.信息服务功能模块设计公告信息模块提供的具体功能如下图所示:2-5-1信息服务功能模块结构图二.电子布告栏Ø数据表单布告一览与布告草稿公用一套表单与视图,表单中增加了一个作用域,用来区分表单的属性,是布告还是草稿。数据表单具体设计如下:布告表单设计(Notice)数据域类型说明NoticeSubject文本框公告主题NoticeAuthor文本框发布者,自动生成,为当前用户 XX工业研究院办公自动化系统设计NoticeReader列表框发布范围(本部门、全公司)FileUpload控件上载附件Body多行文本域公告内容Filestatus文本域布告类型,已发布或草稿(隐藏域)NoticeDateComposed日期/时间公告发布时间(隐藏域)操作说明发布公告发布公告正文表单保存为草稿将未发布的公告保存未草稿编辑公告编辑公告正文表单删除公告删除公告正文表单删除草稿删除草稿返回返回到上一页面Ø数据视图布告一览:SELECTForm=“Notice”&Filestatus=“发布”布告一览视图条目域说明布告主题NoticeSubject显示公告主题(链接,点击阅读)范围NoticeReader显示发布范围发布时间NoticeDateComposed显示发布时间发布人NoticeAuthor显示发布人操作说明新建公告进入新建布告页面搜索公告进入搜索布告页面布告草稿:SELECTForm=“Notice”&Filestatus=“草稿”布告草稿视图条目域说明布告主题NoticeSubject显示公告主题(链接,点击阅读)发布时间NoticeDateComposed显示发布时间操作说明新建公告进入新建布告页面搜索草稿进入搜索布告草稿页面三.公共信息查询 XX工业研究院办公自动化系统设计1.员工地址簿员工地址簿取“系统维护”中相应的表单及视图。2.个人名片夹Ø数据表单个人名片夹为个人编辑,且只有对编辑者可见。由表单中的作者域来控制。个人名片夹表单设计(MingPian)数据域类型说明Name文本框姓名Corp文本框工作单位Dept文本框工作部门Position文本框职位Phone_Home文本框家中电话Phone_Office文本框公司电话BP文本框呼机Phone_Mobil文本框移动电话EMail文本框电子邮件Address文本框家庭住址Others多行文本域其它信息Author作者域作者(隐藏域)Reader读者域读者域,与作者域的值相同(隐藏域)操作说明保存保存正文表单编辑编辑正文表单删除删除表单返回返回到上一页面Ø数据视图个人名片夹:SELECTForm=“MingPian”个人名片夹视图条目域说明姓名Name显示联系人姓名(链接,点击阅读)工作单位Corp显示工作单位家中电话Phone_Home显示家中电话 XX工业研究院办公自动化系统设计工作电话Phone_Office显示工作电话操作说明新建纪录进入新建个人名片夹表单搜索进入搜索页面1.列车时刻表Ø数据表单列车时刻表表单设计(TrainTime)数据域类型说明Number文本框车次Start文本框始发站End文本框终点站Start_Time文本框发车时间End_Time文本框到站时间Price文本框票价Sequent文本框频次Body多行文本框备注操作说明保存保存正文表单编辑编辑正文表单删除删除表单返回返回到上一页面Ø数据视图列车时刻表:SELECTForm=“TrainTime”列车时刻表视图条目域说明车次Number显示车次(链接,点击阅读)始发站Start显示始发站终点站End显示终点站发车时间Start_Time显示发车时间到站时间End_Time显示到站时间操作说明新建纪录进入新建列车时刻表表单 XX工业研究院办公自动化系统设计搜索进入搜索页面1.航班时刻表Ø数据表单航班时刻表表单设计(PlaneTime)数据域类型说明Number文本框航班号Start文本框起飞机场End文本框降落机场Start_Time文本框起飞时间End_Time文本框降落时间Sequent文本框班期Corp文本框航空公司Model文本框机型Line文本框全程Price文本框票价Body多行文本域备注操作说明保存保存正文表单编辑编辑正文表单删除删除表单返回返回到上一页面Ø数据视图航班时刻表:SELECTForm=“PlaneTime”航班时刻表视图条目域说明航班号Number显示航班号(链接,点击阅读)起飞机场Start显示起飞机场降落机场End显示降落机场起飞时间Start_Time显示起飞时间降落时间End_Time显示降落时间操作说明新建纪录进入新建航班时刻表表单 XX工业研究院办公自动化系统设计搜索进入搜索页面1.邮编及电话区号Ø数据表单邮编及电话区号表单设计(PostCode)数据域类型说明Province文本框省区City文本框县市PostCode文本框邮政编码Prefix文本框电话区号操作说明保存保存正文表单编辑编辑正文表单删除删除表单返回返回到上一页面Ø数据视图邮遍及电话区号:SELECTForm=“PostCode”邮编及电话区号视图条目域说明省区Province显示省区县市City显示县市(链接,点击阅读)邮政编码PostCode显示邮政编码电话区号Prefix显示电话区号操作说明新建纪录进入新建邮编及电话区号表单搜索进入搜索页面2.公司大事记Ø数据表单公司大事记表单设计(Matter)数据域类型说明Name文本框事件主题Date文本域事件日期(自动生成)Persons文本框涉及人员 XX工业研究院办公自动化系统设计Author文本域编辑人(自动生成)FileUpload控件附加文件Body多行文本域事件描述操作说明发布保存正文表单编辑编辑正文表单删除删除表单返回返回到上一页面Ø数据视图公司大事记:SELECTForm=“Matter”公司大事记视图条目域说明事件主题Name显示联系人姓名(链接,点击阅读)事件时间Date显示工作单位操作说明新建纪录进入新建公司大事记表单搜索进入搜索页面 XX工业研究院办公自动化系统设计§2.6系统维护系统维护模块的结构如下图所示:图2-6-1系统维护模块结构一.表单设计1.组织机构设置表单(Department)表2-6-1组织机构设置表单设计数据域类型说明Dept_Name文本域组织机构名称Dept_Up_Name列表框此机构的上级机构名称Dept_Up_Id文本域此机构的上级机构文档IDDept_Info文本域简要说明Dept_SendTo文本域属于此机构的用户列表操作说明保存保存组织机构设置编辑编辑当前组织机构设置文档删除删除当前组织机构设置文档2.用户信息注册表单(UserInfo)表2-6-2用户信息注册表单设计数据域类型说明LastName文本域姓FirstName文本域名MiddleInitial文本域同名区分 XX工业研究院办公自动化系统设计ShortName文本域用户简称Password文本域用户密码ZZMM文本域政治面貌Department列表框所属部门OfficePhoneNumber文本域办公室电话号码OfficeFaxNumber文本域办公室传真机号码CellPhoneNumber文本域手机号码电子布告栏单选框设置用户在电子布告栏部分的权限电子讨论区单选框设置用户在电子讨论区部分的权限日程会议单选框设置用户在日程会议部分的权限公共信息查询单选框设置用户在信息查询部分的权限公司大事记单选框设置用户在公司大事记部分的权限手写体采样管理单选框设置是否起用手写签名功能操作说明保存保存用户信息表单编辑编辑当前用户信息文档删除删除当前用户信息文档1.用户职务注册表单(Caste_Name)表2-6-3用户职务注册表单设计数据域类型说明Leader文本域(允许多值)领导职务名称Positions文本域(允许多值)其他职务名称操作说明保存保存用户职务设置表单编辑编辑当前用户职务设置文档删除删除当前用户职务设置文档2.用户信息列表显示表单(PagePersons)表2-6-4用户信息列表显示表单设计数据域类型说明CurrentDB文本域当前数据库名称HTML文本域以HTML XX工业研究院办公自动化系统设计代码表达的用户信息列表操作说明新建用户新建用户信息注册表单1.用户密码设置表单(Password)表2-6-5用户密码设置表单设计数据域类型说明OldPassword文本域旧密码NewPassword文本域新密码NewPassword1文本域新密码确认操作说明确认修改保存修改信息放弃修改放弃修改信息二.视图设计1.组织机构列表(DepartmentList)此视图用于显示所有组织结构文档。文档选择条件为:SELECTForm="Department"2.用户列表(Persons)此视图用于显示所有用户注册文档。文档选择条件为:SELECTForm="UserInfo"3.职务列表(Caste_Name)职务列表用于显示用户所创建的职务注册文档。文档选择条件为:SELECTform="Caste_Name"4.用户权限列表(Limit)此视图用于显示用户注册文档中的权限信息。文档选择条件为:SELECTForm="UserInfo" 附录1XX工业研究院MIS系统设计附录1XX工业研究院MIS系统设计§1概述开发的工研院MIS系统的前台工具为Sybase公司的PowerBulider,后台数据库为Sybase。MIS系统与网站系统共用一个数据库。这套系统主要完成对项目预申请书、正式申请书、合同书进行管理和汇总。申请书以及合同书的基本数据均由外部网站上提交到数据库。系统管理员通过MIS系统管理这些数据,包括删除、评论、汇总以及大印等。§2需求分析一、科技项目管理l项目申报(科委项目、工研院项目)项目预申报书的查询,管理,汇总项目正式申报书的查询,管理,汇总l合同管理工研院合同书的查询,管理,汇总l项目跟踪项目执行情况年报的查询,汇总对于申请书以及合同书的原始数据均通过web方式在网上由用户直接提交至数据库。二、教育培训管理l职工教育培训已有培训报表的上报系统l招生管理职工子女报考行业院校生源表的录入、查询三、科技情报管理l科技情报发布情报资料录入、查询、发布l下属单位需求科技情报需求的录入、查询四、申请书编号管理正式申请书、合同书编号、密码的自动生成和管理。五、用户权限管理MIS系统的用户管理,包括新建用户、删除用户、权限管理、更改密码。 附录1XX工业研究院MIS系统设计§3功能表格编号表名功能说明科技项目管理X录入查询删除汇总打印GYYX01科技项目预申报书√√√√汇总到GYYX03(自动、手动)GYYX02科技项目正式申请书√√√√汇总到GYYX04(自动、手动GYYX03科技项目预申请书汇总√√√由GYYX01汇总GYYX04科技项目正式申请书汇总√√√由GYYX02汇总GYYX05科技项目预申请书一览表√√√GYYX06工研院合同书√√√√汇总到GYYX07(自动、手动GYYX07工研院合同书汇总√√√√由GYYX06汇总。GYYX08项目跟踪√√√√√由合同书半年执行情况汇总教育管理培训J录入查询删除汇总打印GYYJ01????年工研院系统职工子女(亲属)报考行业院校生源表√√√√√GYYJ02????年工研院系统职工教育培训报表√√√√√科技情报管理Q录入查询删除汇总打印GYYQ01科技情报资料表√√√整理后向下属单位发布GYYQ02科技情报资料需求表√√√说明:1.汇总自动汇总指每次填写基础数据表后自动填入汇总表,在汇总表中增加相应的记录。手动汇总指由操作者来控制重新对基础数据表中的数据进行统计汇总,将结果填入汇总表。2.打印一般查询、汇总等均设计打印功能。 附录1XX工业研究院MIS系统设计§4功能模块设计一.功能模块工研院系统主要包括科技项目管理、教育培训管理、科技情报管理、编号管理和用户权限管理等部分,系统具体功能结构如下所示。各个功能模块的具体功能分别如下。l科技项目管理 附录1XX工业研究院MIS系统设计l教育培训管理l科技情报管理二.功能说明l科技项目管理1)项目申报申请书:可以对在web上提交的预申请书进行评注、删除、查询功能。申请书汇总:可以对提交申请书汇总和打印。2)合同管理 附录1XX工业研究院MIS系统设计合同书:可以对在web上提交的合同书进行评注、删除、查询功能。合同书汇总:可以对提交的合同书汇总和打印。1)项目跟踪可以完成科技项目执行情况年报表的、查询、汇总、删除和打印功能。l教育培训管理2)职工教育培训由于已有职工教育培训管理系统,所以本系统不作职工教育培训管理功能模块。3)招生管理主要完成广西烟草系统职工子女(亲属)报考行业院校生源表的录入、查询、打印功能。l科技情报信息管理4)科技情报发布科技情报资料发布,主要完成科技情报资料的录入、发布功能,可以对现有工研院情况资料进行检索。5)下属单位需求科技情报需求登记,可以对下级单位的科技情报需求情况进行录入和查询。§5数据表格设计说明:数据类型,V-varchar,C-char,T-text,D-datetime,I-int,F-float。一.科技项目及合同管理l科技项目申请表表名:application名称C名称E类型长度为空说明编号projectnumV15N主键申报书类别classC1N1:科委预申请;2:科委正式申请;3:工研院预申请;4:工研院正式申请;5:工研院合同密级secretlevelC1项目名称projectnameV50课题名称tasknameV50项目负责人principalV10技术领域分类sortC1可选择申请经费额度appsumN- 附录1XX工业研究院MIS系统设计申报日期appdateD-取系统时间项目开始时间StartdateD-项目技术时间enddateD-单位名称name_1V40单位性质kind_1C1可选择上级主管部门supcharge_1V40单位地址address_1V50邮政编码postcode_1C6项目联系人linkman_1V10电话phonenum_1V15Emailemail_1V20固定资产原值originalfixedassets_1D—固定资产净值netfixedassets_1D—利润总额profit_1D—总收入grossincome_1D—资产负债率debtassets_1D—自由流动资金flowfund_1D—上缴税金tax_1D—银行信用等级creditlevel_1C1单位名称name_2V40单位性质kind_2C1可选择上级主管部门supcharge_2V40单位地址address_2V50邮政编码postcode_2C6项目联系人linkman_2V10电话phonenum_2V15Emailemail_2V20固定资产原值originalfixedassets_2D—固定资产净值netfixedassets_2D—利润总额profit_2D—总收入grossincome_2D—资产负债率debtassets_2D— 附录1XX工业研究院MIS系统设计自由流动资金flowfund_2D—上缴税金tax_2D—银行信用等级creditlevel_2C1工作内容与业务水平contentV100技术基础及水平techlevelV100分工divideV100项目经费概算和来源estimateV100项目进度scheduleV100成果形式及预期达到的性能指标和水平formV100项目摘要abstractV100技术考核指标techtargetV100效益考核指标benefittargetV100文档路径docpathV70申请项目简介introductionpathV70l申请一览表表名:b_schedule名称C名称E类型长度为空说明预申请书编号projectnumV15N主键产业化阶段phaseC1立项条件评估evaluationT—项目部意见dept_oppT—院长意见dean_oppT—立项日期setup_dateD—立项编号setup_numberV15备注remarkV100l工研院项目执行情况报告书表名:execution名称C名称E说明 附录1XX工业研究院MIS系统设计类型长度为空申请书编号projectnumV15N主键执行类别sortV5报告开始时间startdateD报告结束时间enddateD填报人appnameV10填报日期appdateD规定进度要求和指标prescriptivetargetT实际进度要求和指标realtargetT问题及措施issueandmeasureT工研院意见opinionT文档路径docpathV70一.教育管理培训生源表表名:student名称C名称E类型长度为空说明年份yearI-N主键编号numberV5N姓名nameV8性别sexC1可选择准考证号cardnumV20主键高考成绩score1F-中考成绩score2F-填报志愿willV40父母单位corpnameV40父母姓名parentnameV20联系电话phonenumV30二.科技情报管理l科技情报发布表名:informpub名称C名称E类型长度为空说明编号informnumV6N主键情报名称nameV40提供时间providedateD-情报类别classV10所在刊物名publicationV30 附录1XX工业研究院MIS系统设计页码pageI-年份yearI-期数issueI-作者authorV20备注commentV50l下属单位需求表名:informreq名称C名称E类型长度为空说明需求编号requirenumV6N主键需求单位corpnameV40需求内容contentV50需求类别classV10查询结果resultC1 XX工业研究院网站设计附录2网站设计§1概述本次开发是为北京-工业开发研究院开发一个网站,网站架构在NT4.0上。网站服务器为微软的IIS4.0,前台为ASP和Javascript,后台数据库为VBScript和Sybase。网站实现工研院的信息发布,包括工研院的简介,组织形式,部门机构,研究发展,信息公告,友情连接等信息。网站提供工研院的通知和项目介绍,用户可以通过网站上传提交项目申请书。管理员可以通过网站进行信息的管理。§2功能设计一.情况介绍网站的开发决定分为三个部分。1)信息发布区。本部分为静态页面,用户直接浏览即可。2)申请书上传下载区包括工研院项目预申请书、工研院项目正式申请书、工研院项目合同书、工研院项目合同半年总结、工研院合同总结、市科委项目预申请书和市科委项目正式申请书七种类型申请书的上传、下载和提交。3)管理员功能区二.需求分析1.信息发布区1)“首页”提供工研院的通知通报、最新信息、简报简讯和媒体报道。还提供友情连接和工研院的联系方式。2)“概述”提供工研院的简介。3)“组织形式”提供工研院的理事会成员。4)“部门机构”包括理事会、院长、办公室、项目部、企管部、投资部和培训部的介绍。5)“研究发展”为重点项目、研发项目、重点企业和重点品牌的介绍。6)“项目申请”在申请书上传下载详细分析。7)提供英文的简介。2.申请书上传下载区1)提供用户网上注册和密码查询。2)提供用户信息修改和用户密码修改。3)提供七种文档的下载功能。4)提供七种文档的表格填写和上传功能。对每一类文档有如下功能:填写表格,写入数据库,供后台mis使用。上传文档草稿,可以上传多个,提交时选择其中的一个提交。提交文档。 XX工业研究院网站设计3.管理员功能区1)提供八种信息的添加。八种信息为通知通报、最新信息、简报简讯、媒体报道、重点项目、研发项目、重点企业和重点品牌。每种信息要求能显示email链接和http地址链接。每种信息可以包含图片和相关文档下载。2)网站上注册用户的列表。一.功能模块及实现1.数据库的连接网站前台为asp,后台为sybase数据库。之间的连接用的是ado组件。公用函数如下:subCreateCnndimcnnifnotisobject(session("cnn"))thensetcnn=server.CreateObject("adodb.connection")cnn.Open"Driver={SybaseSystem11};db=gyy_mis;srvr=sybase;uid=gyy_mis;pwd=sixian"setsession("cnn")=cnnendifendsub使用方法如下:callcreatecnnsetcnn=session("cnn")Setrs=Server.CreateObject("ADODB.Recordset")SQL="select*fromweb_informationwheresort="2"orderbycreatedatedesc"SETrs=cnn.execute(SQL)2.文档上传功能的实现文档上传使用了一个share组件(LyfUpload.dll),需要先在机器上注册这个组件。3.网上申请的流程提交新文档的流程图如下图所示: XX工业研究院网站设计其中,工研院正式申请、工研院合同书、半年总结和项目总结以及市科委正式申请在提交新文档时还要输入文档的密码,这个密码需要管理员通过其他方式(如电话等)通知用户。1.管理员添加信息的流程管理员登录的页面和用户登录的不是同一个页面。管理员登录的页面不对外发布,即只有工研院内部才知道管理页面的地址。增加信息时,标题和内容为直接输入,信息类型为下拉框选择,分为八类,通知通报、最新信息、简报简讯、媒体报道、重点项目、研发项目、重点企业和重点品牌。二.数据接口1.网站与mis的接口网站与mis程序没有直接的接口,之间的连接完全通过数据库实现。1.各类申请书的信息录入。 XX工业研究院网站设计包括工研院预申请、工研院正式申请、工研院合同、工研院项目半年总结、工研院项目总结,市科委预申请和市科委正式申请的表单录入。其中工研院预申请、工研院正式申请、工研院合同、市科委预申请和市科委正式申请写入表(before_application),工研院项目半年总结和工研院项目总结写入表(execution),表的结构可参见第三部分数据库的设计。1.正式申请和合同的编号和密码的生成由于工研院正式申请、工研院合同、市科委正式申请的编号工研院要进行控制,即用户不可以随便提交这几类申请,所以这几类申请的编号和密码由mis生成,在由管理员通过其他方式(如电话等)通知申请人,申请人通过编号和密码到工研院的网站上录入申请书、上传申请书,最后提交。2.一览表主键的生成在用户正式提交的时候,网站会在一览表里插入用户提交信息的主键供mis使用。3.对申请书反馈意见的填写用户提交申请书后,网站管理员或工研院的管理员要对给申请书填写意见,以便反馈给用户。这个反馈意见在mis中实现。2.网站与OA的接口在网站的首页上有OA办公的地址链接,即在网站首页上通过点击可以直接进入OA办公区。二.网站目录结构网站的源代码在IIS的默认目录/Inetpub/Wwwroot下。1./admin目录下存放的是管理员功能区的代码。2./data目录下存放的是申请书的样本和用户上传的申请书。3./dll目录下是一个上传组件。4./images目录下是网站的图片。5./inc目录下是各个页面的公用模块。6./request目录下存放的是申请书上传下载区的代码。7./web目录下存放的是信息发布区的代码。§3数据库设计说明:数据类型,V-varchar,C-char,T-text,D-datetime,I-int,F-float。1.用户信息表(user_information)表名:user_information说明:存放在网上注册的用户信息名称C名称E类型长度为空说明 XX工业研究院网站设计用户IDUseridC20N密码PasswordC20N密码提示问题QuestionC50密码提示问题答案AnswerC50真实姓名TruenameC10性别GenderC2出生日期BirthdayC8文化程度KnowledgeC8公司名称CorpnameC100公司地址CorpaddressC100职务DutyC20职称TitleC20专业方向SpecialtyC50研究领域StudyfieldC50通讯地址AddressC50邮政编码PostalcodeC6电话PhoneC20传真FaxC20电子邮件EmailC50家庭住址HomeaddressC100家庭电话HomephoneC15身份RankI0-一般用户1-管理员注册日期RegistedateD1.网站信息表(web_information)表名:web_information说明:存放工研院在网站上发布的信息和项目介绍名称C名称E类型长度为空说明信息IDInfo_idIN类型SortC10类型有8个,分别为通知通报最新信息简报简讯媒体报道重点项目研发项目重点企业重点品牌标题TitleC100内容ContentT建立日期CreatedateD状态StateC6建立人CreatorC20图片1描述Headpic_desC60 XX工业研究院网站设计图片1地址Headpic_pathC100图片2描述Endpic1_desC60图片2地址Endpic1_pathC100图片3描述Endpic2_desC60图片3地址Endpic2_pathC100图片4描述Endpic3_desC60图片4地址Endpic3_pathC100文档1描述Doc1_desC60文档1地址Doc1_pathC100文档2描述Doc2_desC60文档2地址Doc2_pathC100文档3描述Doc3_desC60文档3地址Doc3_pathC100文档4描述Doc4_desC60文档4地址Doc4_pathC100文档5描述Doc5_desC60文档5地址Doc5_pathC100负责人LinkmanC10工作单位WorkplaceC40职务职称RankC10办公电话OfficephoneC20传真OfficefaxC20电子邮件EmailC40家庭电话HomephoneC20手机HandphoneC20呼机BpC20通信地址AddressC40邮政编码postcodeC101.申请书信息表(request_information)表名:request_information说明:存放各类申请书的简要信息和上载人。名称C名称E类型长度为空说明申请书IDRequest_idC20N文档编号Doc_sericalIN项目名称Project_nameC50申请书提交人User_idC20评论CommentC100申请书路径File_pathC50申请书文档名称File_nameC50 XX工业研究院网站设计类别ClassC1上载日期CreatedateD状态StateC61.科技项目详细信息表(before_application)表名:before_application说明:保存工研院预申请书、工研院正式申请书、工研院合同书、市科委预申请书和市科委正式申请书的详细信息。名称C名称E类型长度为空说明编号ProjectnumV15N主键申报书类别ClassC1N1:科委预申请;2:科委正式申请;3:工研院预申请;4:工研院正式申请;5:工研院合同密级secretlevelC1项目名称projectnameV50课题名称tasknameV50项目负责人principalV10技术领域分类sortC1可选择申请经费额度appsumN-申报日期appdateD-取系统时间项目开始时间StartdateD-项目技术时间enddateD-单位名称name_1V40单位性质kind_1C1可选择上级主管部门supcharge_1V40单位地址address_1V50邮政编码postcode_1C6项目联系人linkman_1V10电话phonenum_1V15Emailemail_1V20固定资产原值originalfixedassets_1D—固定资产净值netfixedassets_1D—利润总额profit_1D—总收入grossincome_1D—资产负债率debtassets_1D— XX工业研究院网站设计自由流动资金flowfund_1D—上缴税金tax_1D—银行信用等级creditlevel_1C1单位名称name_2V40单位性质kind_2C1可选择上级主管部门supcharge_2V40单位地址address_2V50邮政编码postcode_2C6项目联系人linkman_2V10电话phonenum_2V15Emailemail_2V20固定资产原值originalfixedassets_2D—固定资产净值netfixedassets_2D—利润总额profit_2D—总收入grossincome_2D—资产负债率debtassets_2D—自由流动资金flowfund_2D—上缴税金tax_2D—银行信用等级creditlevel_2C1工作内容与业务水平contentV100技术基础及水平techlevelV100分工divideV100项目经费概算和来源estimateV100项目进度scheduleV100成果形式及预期达到的性能指标和水平formV100项目摘要abstractV100技术考核指标techtargetV100效益考核指标benefittargetV100文档路径docpathV70申请项目简介introductionpathV701.工研院项目执行情况报告书(execution)表名:execution说明:保存工研院项目执行情况的详细信息。名称C名称E长度为空说明 XX工业研究院网站设计类型申请书编号ProjectnumV15N主键执行类别SortV5报告开始时间startdateD报告结束时间enddateD填报人appnameV10填报日期AppdateD规定进度要求和指标prescriptivetargetT实际进度要求和指标realtargetT问题及措施issueandmeasureT工研院意见opinionT文档路径docpathV70'