一种C/S结构向B/S结构移植的方法与流程

文档序号:12119540阅读:257来源:国知局
本发明涉及一种网络管理信息的方法,特别是涉及一种C/S结构向B/S结构移植的方法。
背景技术
::传统的C/S模式下应用系统一般由服务器(Server)和客户端(Client)应用程序组成。数据一般存放在服务器上,应用程序一般存放在客户端计算机上。这样的系统虽然解决了数据共享等问题,但却具有不易维护、操作风格不一致、能够处理的数据类型不易扩展等缺点。尽管后来将企业逻辑从客户端划分出来,但随着网络应用系统的发展,传统C/S模式应用系统的缺点还是不断的暴露出来,促使B/S模式应用系统的产生和发展。B/S模式应用系统由浏览器(Browser)和服务器(WebServer、OtherServer、MiddleWare)组成。数据和应用程序分别存放在应用服务器和数据库服务器上,浏览器可以通过Web服务器调用应用服务器,从而得到动态结果集。以B/S模式开发的系统维护工作集中在服务器上,客户端不用维护,操作风格比较一致,只要有浏览器的合法用户都可以十分容易地使用。为了从分利用Internet巨大的资源为企业创造更多经济效益和社会效益,对当前大多数企业来说使用的管理信息系统(MIS系统)从原有的C/S结构改造成3层甚至N层的C/S或B/S结构就成为一个关键性的问题。如果完全放弃原有的MIS系统,重新投资,组织人力、物力开发新的基于B/S结构的MIS系统,无论是在时间上还是在人力物力上将会损失很大。但如果要利用现有的条件,对原有的系统进行局部改造,实现向B/S结构移植,不仅可以节约大量的人力物力,而且更重要的是节约时间,使企业能够紧跟时代发展潮流并为企业创造更多的价值。技术实现要素:本发明的目的在于提供一种C/S结构向B/S结构移植的方法,该方法利用原有的C/S结构的MIS系统改造成B/S结构的MIS系统会使企业节约大量成本,是一个极有价值的方法。通过ASP技术调用原有系统中数据库服务器的存储过程来获得所需的数据,这样同样可以节省很大成本。本发明的目的是通过以下技术方案实现的:一种C/S结构向B/S结构移植的方法,所述方法包括以下过程:首先,C/S结构的应用系统向B/S结构移植的实现;使用PB开发的C/S结构的MIS系统向B/S结构移植;(1)原有C/S结构的MIS系统的数据库可以完全保留,应用服务器中的企业逻辑大部分可以保留,剩下的一部分仅做修改即移植到B/S结构中,而用户界面中的一部分改造而加以保留;(2)原有C/S结构的MIS系统中的企业逻辑主要有两大部分:数据窗口对象、用户对象;用户对象的改造使之让Web服务器调用并将结果以HTML文档的形式送回浏览器上。所述的一种C/S结构向B/S结构移植的方法,所述对用户对象加以改造主要有以下两种方案:(1)利用Web.pb向导程序生成可以调用指定用户对象中的某一函数的网页;(2)将用户对象中的函数稍加改动使之返回一定的字符串,这些字符串即为HTML文档,直接传递给浏览器显示。所述的一种C/S结构向B/S结构移植的方法,所述HTML文档首先用数据存储的Object.Datawindow.data.htmltable方法获得一个数据表,然后再用脚本语言给它加上文件头和文件尾。本发明的优点与效果是:本发明利用原有的C/S结构的MIS系统改造成B/S结构的MIS系统会使企业节约大量成本,是一个极有价值的思想。本发明对以前使用PB开发的C/S结构的MIS系统进行改造移植,同样对于使用其它语言开发的系统而言,利用在原系统基础上进行改造的思想是可行的,但不同的开发工具使用的具体方法会有些出入。即使有些系统的企业逻辑部分很难改造,也可以保留数据库服务器中所有存储过程,通过ASP技术调用原有系统中数据库服务器的存储过程来获得所需的数据,这样同样可以节省很大成本。附图说明图1为WindowPlug_in的执行原理示意图。具体实施方式下面结合实施例对本发明进行详细说明。C/S结构的应用系统向B/S结构移植的实现。使用PB开发的C/S结构的MIS系统向B/S结构移植的方案:原有C/S结构的MIS系统的数据库可以完全保留,应用服务器中的企业逻辑大部分可以保留,剩下的一部分仅做一定的修改即可移植到B/S结构中,而用户界面中的一部分也可以适当改造而加以保留。原有C/S结构的MIS系统中的企业逻辑主要有两大部分:数据窗口对象、用户对象(主要是对使用PB开发的C/S结构的MIS系统而言)。其中数据窗口对象大部分可以完全保留,而大部分用户对象可做一定的修改而保留。可见使用PB开发的C/S结构的MIS系统向B/S结构移植的关键在于如何对C/S结构中的用户对象的改造使之可以让Web服务器调用并将结果以HTML文档的形式送回浏览器上。对用户对象加以改造主要有以下两种方案:(1)利用Web.pb向导程序生成可以调用指定用户对象中的某一函数的网页。这种方法快而简单,但生成的网页较单一而且样式普通。(2)将用户对象中的函数稍加改动使之返回一定的字符串,这些字符串即为HTML文档,可直接传递给浏览器显示。首先用数据存储的Object.Datawindow.data.htmltable方法来获得一个数据表而不是用Getfullstate函数捕获源数据窗口的当前状态。然后再用脚本语言给它加上文件头和文件尾。下面的例子就是一个典型的改造过程:一个典型的用户对象中的函数改造后的函数…………ds_employ.Retrieve()ds_employ.Retrieve()ll_rv=ds_employ.Getfullstate(lblb_data)st=ds_employ.Object.Datawindow.data.htmltable……//定义HTML文件头Stringis_header=”<html><head>”Stringis_title=”<title>产品清单</title></head>”Stringis_body=”<body>产品清单</body>”//定义HTML文件尾Stringis_foorer=”</body></html>”St_rv=is_header+is_title+is_body+st+is_foorerReturnSt_rv经过改造完毕的函数就可用HTML语言直接调用了。对于一部分用户界面可以利用PB的WindowPlug_in内插件使浏览器在预定位置显示该窗口,该窗口的运行和PB应用程序中的窗口的运行几乎一致。当浏览器装载一个包含WindowPlug_in数据源的主页时,浏览器将自动装载这个内插件的执行库和PB的运行文件,然后,在主页中显示起始的窗口。用户可以使用这个窗口中的控件来和浏览器进行交互。WindowPlug_in的执行原理如图1所示。具体的改写步骤如下:(1)将初始窗口的类型设为Child。(2)移去所有对全局变量的引用,包括在应用一级定义的全局变量和库中的窗口名称。(3)将应用中和MID框架窗口的Open事件中的起始代码移到初始窗口的Constructor事件中。当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1