将PB的C/S应用改造成B/S应用

作者:达通兴电脑科技公司(www.study01job.com) 郭宝利

PB在B/S应用流行之前就很流行了,所以很多PB开发的程序有转换成B/S应用的需求。本人就本人项目开发经验进行总结,总结转换过程中的技术问题,并没有给出具体的实例。如果朋友们有这种需求的话,可以电话联系我公司进行咨询。
  一、客户端需要安装的程序如下:
  1)PB的窗口插件支持文件:nppba70.dll。将该文件拷贝到浏览器的plugins目录中即可。
  2)PB的分发支持文件,包括:
  lPBVM70.DLL和LIBJCC.DLL是必须的两个文件,
  lPBDWE70.DLL是数据窗口支持文件,
  lNPPBA70.DLL是PB窗口插件支持文件,
  lSYSYB95.DLL是联结sybase数据库的支持文件
  lPBODB70.DLL是使用ODBC联结数据库的必须文件
  以上文件拷贝到操作系统的system目录中即可。
  3)设置ODBC:创建DSN,名称为gsDSN,SERVER为gs,数据库为gsj,使用sybase system 11联结。
  4)在用户的C盘创建bs_report目录,并且放置gs.ini和role.ini配置文件。
  5)安装Sybase的前台文件。
  
  二、服务器端需要做如下工作:
  1)设置www服务器,添加MIME类型为application/vnd.powerbuilder7,和pbd后缀相对应。
  2)将所有的pbd文件和页面文件统一放置到服务器的一个目录中。
  3)安装PowerBuilder的intenet工具。
  
  三、程序改造:
  1、合理划分模块,原则上每个PBD文件不应该大于1M(或者更大,具体视应用单位网络状况而定)。按照用户使用情况对模块进行划分,同类功能的程序放置在相同的PBD包中。
  2、对原来C/S体系结构中的程序结构进行比较彻底的清理,保证模块中不包含用不到的程序,从而保证模块短小,从而提高运行速度。
  3、统一规划窗口的界面风格,对现有C/S应用程序中的界面风格进行全面调整,保持和现有B/S系统总体界面的一致性。
  4、在保证原有C/S程序业务流程不变的情况下,根据B/S体系结构下程序的运行特点对原来的程序做适当的调整。
  5、在窗口的Open事件中的所有SetTransObject或者类似的设置事务对象的函数都放置到窗口的自定义事件中,并在Open事件中使用PostEvent函数来触发(注意,不能使用TriggerEvent函数)。
  6、应用程序不能包含Main类型的窗口,使用Child类型即可。在窗口上不能有控制菜单、最大和最小化按钮。最初窗口应用使用Child类型,可以在该窗口中打开其它的Response、Popup类型的窗口,但是不能打开Main、mdi、Child等类型的窗口。
  7、当页面从包含最初的Child窗口打开其它窗口后,最初页面跳转到其它页面,这是虽然最初的Child窗口关闭(相当于整个应用关闭),但是其它打开的窗口不会关闭,只能在Child的Close事件或者CloseQuery事件中关闭其它的窗口。在Child窗口的CloseQuery事件中,使用Return没有意义,不能阻止窗口的继续关闭。
  8、Application对象不起作用,仅仅在开发阶段用于调试。所有原来需要Application对象完成的工作都只能在最初被打开的Child窗口中完成。Child窗口的Activate事件无效。
  9、在程序中不能直接使用窗口的名称,只能使用This、Parent等指代词来表示窗口。

时间: 2025-01-24 21:57:01

将PB的C/S应用改造成B/S应用的相关文章

PB软件开发经验

作者:达通兴电脑科技公司(www.study01job.com) 郭宝利 一.PB编程规范 二.提高PB程序的通用性 1.PB中的指代词 2.PB动态创建菜单的核心算法描述 3.请问怎么向动态菜单中加入程序 三.PB公用模块开发 1.PB通用查询终结版系列文章1-如何编写向导程序 2.PB如何取服务器的时间 3.PB公用错误捕获模块的开发 4.在ITemChanged事件中对数据窗口中的数据进行校验 四.PB数据处理技术 1.datawindow的saveas()怎么样才能把抬头的中文名称也保存

通用权限管理工具,支所有ADO(包括ODBC)支持的数据库,不管用什么编程都行,VC/BCB/VB/PB/Delphi

ado|odbc|编程|数据|数据库 下面是一部分说明: 请细请到这里下载ExeDemo测试版通用权限管理工具的创作动机权限管理是MIS软件中很重要的一环.很多国内较出名的MIS软件厂商都设计了较完善的也具有自己特色的权限管理模块.但对于很多没那么规范的软件商(包括个人或小创作团体),他们经常是接到一单,设计一套权限管理系统,每套都不同:有的则不够重视,随便写上一段,哪里都拷过去用:有的也曾费尽心机,但结果总不能令自己满意.其实仔细想一下,每套软件的权限虽然各不相同,但其实所需实现的功能是相同的

pb如何连接oracle数据库

过ODBC或者PowerBuilder自带的DB PRofile或者专用接口连接上数据库,但仍然有许多使用者按此方法却无法连接上数据库,这方面的原因可能是PowerBuilder本身的原因,比如在安装PowerBuilder时的选项.ODBC的版本之类;也可能是在安装客户端的Oracle.Sybase.Informix.SQL Server等软件上的问题,下面就从最根本的ODBC配置开始,教你一步步如何连接上数据库. ODBC数据源的配置 进入控制面板,打开ODBC数据源(32位),如图1所示,

pb中将已经建好的Grid类型转为Tabular类型

作者:达通兴电脑科技公司(www.study01job.com) 郭宝利 如何将一建好的Grid数据窗口,不重新生成的情况下改变成FreeForm格式的数据窗口? 如果是在PowerBuilder8.0以上版本中,选中该数据窗口,点击鼠标右键,在弹出菜单中选择Edit Source,打开数据窗口的源代码,修改第2行中的processing属性,由1改为0就可以了. 如果在其它版本的PB中,只能首先导出数据窗口的语法,修改完之后再导入就可以了.

pb-急!求救!PB模糊查找代码问题

问题描述 急!求救!PB模糊查找代码问题 我想把用模糊查找出来的数据显示在左边框中,可是怎么都不会写代码,查找的是用户表.用户ID 解决方案 http://www.shangxueba.com/jingyan/107949.html 解决方案二: 一.你可以用数据窗口来实现 新建一个数据窗口,参数为as_id, sql为select 用户ID from 用户表 where 用户表.用户 = as_id; 然后在窗口中放一个数据窗口dw_1,dataobject为你刚才的数据窗口对象 程序中连接数

谁参与了中石化混改盛宴

中介交易 SEO诊断 淘宝客 云主机 技术大厅 昨日晚间,中国石化披露了参与竞投旗下销售业务板块的25家境内外投资者名单. 中石化旗下中国石化销售有限公司(下称"中石化销售")29.99%的股权将作价1071亿元出让,剩余70.01%的股份由中石化继续持有. 这是自今年2月以来,中石化宣布率先在油品销售业务引入社会和民营资本,实现混合经营后,取得的实质性进展,标志着油品销售业务重组引资工作的完成.它也是傅成玉执掌中石化集团及股份公司以来,所推出的重大改革举措之一.下一步,中石化销售有望

Win7系统中一键完成批量改照片名字

  现在大家外出旅游数码相机一定是不可缺少的随身装备之一,旅游回来之后把照片导出来可能就会发现非常震撼了,拍了几百张甚至上千张的照片这个时候想要很好地管理,那手边一款强大的照片浏览管理工具就非常需要了.然而有很多用户并不了解什么软件才能够管理好自己的所有这些照片,比如想要把这些照片都重命名,又要省力又要省时应该用什么软件好?其实类似这样的小功能用你的Windows7电脑就轻松解决问题了. Windows 7系统支持强大的多媒体功能,对于照片的浏览.管理.处理等功能都远比之前的WinXP和Vist

win7实用小功能一键完成批量改照片名字

现在喜欢旅游的人越来越多了,而很多人把图片上传到电脑的时候都是好几千张.而面对这几千张照片看到哪些名字想改名字呢量有太大了,不该名字又好难看.特别是有时候有一些我们比较喜欢的图片,那么才的名字,你下次跟朋友分享的时候,肯定会不知道看过的好图片在哪里. 1 win7比xp系统多了很多功能,即使是一样的功能也比xp系统强大很多.而上面说到问题,就可以用win7自带的功能来解决.下面就看看我是如何处理的吧. 2 处理图片 正常情况下,我们用拍照工具进行拍照,照片的名字都是摄像机根据时间和日期来进行命名

pb代码解答-PB 如何截取字符串分别放入数组中

问题描述 PB 如何截取字符串分别放入数组中 "三厂,二厂,一厂" 我的里面有三个内容我想要取成 软件分厂 二厂 一厂 将这三个值放进数组 求大神解答 解决方案 string str =substring(字符串,开始位置,截取长度); 解决方案二: 采用以下函数 global type gf_split_parm from function_object end type forward prototypes global function integer gf_split_parm