监理公司管理系统 | 工程企业管理系统 | OA系统 | ERP系统 | 造价咨询管理系统 | 工程设计管理系统 | 甲方项目管理系统 | 签约案例 | 客户案例 | 在线试用
X 关闭

基于Lotus Domino的移动OA办公系统

申请免费试用、咨询电话:400-8352-114

本文以Lotus Notes/Domino的OA办公系统为基础,针对Domino数据库架构特点和移动办公需求,提出了实现其移动办公的技术和方法。采用PhoneGap跨平台开发技术,分别对Domino数据库读、写采用不同的技术方案,实现移动办公系统与原OA系统数据同步。

    Lotus Domino曾是主流的文档型办公系统开发平台之一,其数据库访问方式不同于SQL Server、Oracle等主流的数据库系统,它采用NSF(Notes Storage Facility)的面向文档的数据库来管理半结构化数据,并且利用其视图可以使查找特定文档变得高效。

    目前国内基于Domino的移动OA系统解决方案一般有以下几种:一是根据业务需要定制开发每项移动办公应用。这种方式移动应用体验良好,且具备较高的稳定性,但构建周期长,时间及财务成本均较大;二是利用VPN(虚拟专用网络)虚拟桌面技术,通过移动终端远程操作PC桌面。这种方式无需二次开发,且部署也相对简单。缺点是在较小的屏幕上操作PC界面,操作不方便,用户体验欠佳;三是对原有系统的Web页面进行数据抽取。这种方式适合大多数系统的移植,应用体验良好。缺点是难以抽取到业务系统的细节,容易造成处理数据不完整导致数据错乱,系统稳定性高度依赖于原业务系统的页面代码。

    本文以公司原有的Lotus Notes/Domino办公自动化系统为基础,针对移动OA功能需求和Domino数据库的读写特点,设计与开发基于Lotus Domino的移动办公系统,对数据库的读取操作调用Domino原生的数据库Web服务,克服非原生Domino移动OA系统的弊端;写入操作采用页面抓取方式与PC系统的处理进行同步,实现和原系统的无缝衔接。

1 系统架构设计和拓扑结构

    1.1 系统架构设计。Lotus Domino办公平台采用的是Web资源与Domino数据库整合的架构,更偏向于一种扁平和混合的特点,Domino的开发人员在构建系统时利用开发设计器——Domino Designer同时将前端显示和后端数据结构开发出来,传统的移动前端Web开发人员难以参与合作开发。

    本文采取一种分层的架构设计,整个Domino移动系统被显式的分为三部分:前端显示、逻辑服务和数据存储。前端显示与逻辑服务层之间通过各类以URL形式表现的服务来调用连接,以Web 2.0通常采用的XML作为交换的数据格式,逻辑服务层与数据存储层之间直接利用Domino URL命令调用表单或视图等Domino元素来实现这些服务。在这种架构下,前端显示层则可以完全由传统的前端Web开发人员完成,而服务层和数据存储层的相关实现则交由Domino开发人员负责。图1为分层架构设计图:

 

图1 Domino Web应用的分层架构设计

    1.2 系统拓扑结构。OA系统部署在公司内网,外网用户通过VPN方式访问OA系统。移动OA系统搭建在原OA系统服务器上,移动终端和服务器之间通过公网交互,依靠第三方VPN系统传输来保证交互的安全性。移动用户登陆VPN移动版客户端访问移动OA系统。拓扑图如下:

 

图2 系统拓扑结构

2 技术路线和系统实现

    2.1 系统功能需求。原有OA系统是B/S结构。移动OA适配原OA系统的部分功能,主要实现待办文件、待阅文件、已办文件三大功能,实现办理意见的展示和回写、正文和附件的查看,实现公文的正常流转,并与原OA系统的处理同步。

 

图3 系统实现功能

    2.2 使用PhoneGap实现跨平台开发。PhoneGap是一款HTML5平台,开发商可以使用HTML、CSS及JavaScript来开发本地移动应用程序,并且只编写一次应用程序,便能在7个主要的移动平台进行发布。选用PhoneGap有以下几个原因:(1)IOS和安卓是目前的主流手机操作系统,移动OA必须能够在这两个系统上运行;(2)开发成本低。理论上来说,相对于原生开发多个平台的客户端,PhoneGap的成本会低很多;(3)原系统是B/S结构,移动版使用B/S一致性更好。原系统中的页面资源能被PhoneGap重用。

    2.3 与原系统数据的同步。为了保证和原系统业务的一致性,应最大限度的重用原系统的业务代码,这就需要深入的研究原系统,提取出原业务代码直接重用,或者分析出其业务逻辑,编写一致的业务代码。本文采用如下策略保证了数据的一致性:

    (1)直接访问Domino数据读取接口,保证读取的速度和稳定性。根据原Domino数据库中的数据,在Domino Des igner中设计需要读取的视图,并采用URL指令从Domino数据库中读取数据,这样就最大程度保证了读取数据的正确与一致。下面是部分数据读取语句的示例。

    [发文待办]:发文运转库fwrun.nsf

    

    (2)数据回写采用抓取方式,保证业务一致性。针对Domino数据库架构,本文采用WEB模拟方式,即抓取原系统的POST请求,移动系统利用一致的请求实现相同功能。同时,抓取的数据正确性受到了WEB页面稳定性的影响,如果原系统页面代码进行了更改,会导致数据抓取的错误。因原OA系统已经运行多年,需求也相对稳定,无需对WEB代码进行变更,因此用数据抓取方式来实现数据同步是可行的。这个方法在保证业务一致性的同时,克服了Domino系统无法回写数据的问题。

 

图4 移动办公系统用户界面

3 结束语

    本文以较低的成本实现了Domino移动办公平台,并能实现程序的跨手机平台使用,这在国内目前的Lotus移动开发领域具有一定的创新意义。基于Lotus Domino平台的办公自动化系统在国内用户众多,且大多数都有将系统拓展到手机实现移动办公的需求,因此本文研究的方案有较好的推广前景。

发布:2007-04-13 10:27    编辑:泛普软件 · xiaona    [打印此页]    [关闭]
目标计划管理软件
联系方式

成都公司:成都市成华区建设南路160号1层9号

重庆公司:重庆市江北区红旗河沟华创商务大厦18楼

咨询:400-8352-114

加微信,免费获取试用系统

QQ在线咨询

泛普协同OA其他应用

信息管理系统 桌面日程安排软件 日程管理软件 知识管理系统 时间管理软件 目标管理软件 计划软件 任务管理软件 工作流管理系统 工作计划软件 工作日志管理软件 工作任务管理软件 协同管理软件 协同OA