PowerBuilderR程序设计与系统开发.ppt
《PowerBuilderR程序设计与系统开发.ppt》由会员分享,可在线阅读,更多相关《PowerBuilderR程序设计与系统开发.ppt(85页珍藏版)》请在三一办公上搜索。
1、PowerBuilder 程序设计与系统开发,PowerBuilder 程序设计与系统开发,第一节、PowerBuilder基本原理第二节、基本知识(C/S,数据库)第三节、对象及控件的基本属性及方法第四节、数据窗控件(Datawindow)的特性及方法第五节、基本应用(Application)的建立第六节、PFC(Powerbuilder Founder Class)技术原理及实现。第七节、与数据库系统集成进行开发基本技术及方法第八节、高级编程技术,内容简介,关于 PB(About PowerBuilder).使用场合(Where)?谁需要(Who)?与数据库如何交互(How)?学习内容(课
2、程内容)(What)?,关于 PowerBuilder,Power Builder 最新版本为8.0。由Sybase公司出品,最早是由PowerSoft公司开发并发布销售的,并出品了到Power Builder 5.0为止的各个版本,初期在广大开发人员中反映并不强烈,到1995年左右,由Sybase收购PowerSoft公司开始并成功推出了Power Builder 6.0版本,由此开始,由于它的易用性、数据窗专利技术、对各种流行RDBMS的广泛支持、独特的开发方法及理念、独特的对象编程技术等等,成为现在为止可能是世界上用于数据库前端开发的最快捷、最方便、最强大的工具,一般而言,对一个小型的系
3、统,在系统充分分析好的前提下,熟悉的程序员可以在一周以内完成一个独立的系统。这对于其他数据库系统前端开发工具,如VB,Delphi,VFP,ORACLE Develop 2000等等,如果你用过这些工具,简直无法想象。虽然现在流行的开发工具并不是PB,因为现在到处都是B2B,B2C,PB在这方面能够实现,但比较其它专门工具而言,并不具有非常大的优势,而且实现的技术比较而言相对复杂。但对于C/S结构的数据库应用及Internet而言,Power Builder仍然是非常好的选择。,PowerBuilder应用场合,1、大型数据库系统C/S模式前端开发工具或B/S模式应用服务器开发工具,一般应用于
4、需要大型或中型数据库系统支持(如ORACLE,Sybase,MS SQL Server,DB2,Informix)作为后台数据支撑平台的管理类系统,一般可以承受千万级纪录量的系统,如:MRPII系统 物料资源计划 ERP系统 企业资源计划 CRM Customer Relation Management(客户关系管理)Call Center 呼叫中心(Haier)2、中、小型数据库系统开发,一般数据量为10万左右,支持并发或仅单机用户,如中、小型企业的内部信息管理、各种小型软件、共享软件等;3、与Sybase的Power Dynamo,Jaguar CTS,Power Site等集成,建立电子
5、商务应用服务支撑平台;4、与PHP,Java,ASP集成,作为Intranet或Internet的后台数据库系统维护工具,如异种平台(Unix,Linux,Solaris,NT)上的ORACLE,MySQL,DB2等的Client方式维护。,谁需要 PowerBuilder,PB可以做的事情很多,因此也就成为现在各软件公司进行系统开发的一种常用工具,如果你将从事下列工作或有这些需求,则最好了解或通晓PB:1、数据库系统前端开发中的程序设计;2、开发咨询或技术支撑;3、数据库系统分析及设计;4、需要掌握VB,Delphi,Developer 2000以外的其他工具;5、了解Internet网站建
6、设中可以保护现有PB资源的开发方式;注意:PB与数据库系统是不可分离的,因此,你只有对DBMS有基本的理解才可能用好PB,精通当然最好。如果你不知道DBMS是什么东西,请先学习相关内容,如南京大学数据库系统概论是非常好的入门教材,各流行数据库系统的基本概念都涵盖了。,PB 与数据库交互原理简介,PowerBuilder的吸引人的地方也就是它的数据窗技术,描述为:1、前端(Client)建立独立的Transaction(缓冲区,事务对象),用于响应用户请求及返回执行结果;2、任何事务都必须在某Transaction中执行,默认为SQLCA(SQL Connection Area),如 selec
7、t*from table_xxx using sqlca;Dw_xxx.settransobject(sqlca);3、数据窗通过Transaction提取数据、编辑数据、再根据需要回写数据,并保证在同一事务内,这样就完成了日常的数据的维护、更新等操作。4、数据窗现在已经作为标准的ActiveX可编程对象,可以嵌入到其他程序中使用,但总是在PB中最方便,具有专利技术的数据窗集成了数据编辑的几乎所有的常用算法、操作方式等等,非常方便。5、实际应用中,通过众多的数据窗和其它标准 Windows控件协调运行,就完成了最基本的功能。实际上远远不止这些,课程内容,内容:Power Builder基本原理
8、;PB基本知识(对象、函数、事件、变量、脚本、继承);对象及控件的基本属性及方法;数据窗控件(Data window)的特性及方法;基本应用(Application)的建立;与数据库系统集成进行开发基本技术及方法;PFC(Power builder Founder Class)技术基本原理;编程完成上机作业,期未验收。,PowerBuilder基本原理,编程原理开发界面库(Library)管理基本对象及控件运行方式,PowerBuilder运行原理,开发支持库Pblib.dllPbcmp.dllPbudo.dllPbrtc.dll,开发(PBLs),编译(Pcode,Mcode),应用(App
9、lication:DLL,Exe,PBD),BugFixing,运行支持库PBvm70.dllPBdwe70.dllLibjcc.dllPbo8470.dllPbrtc.dllYouOcx.OCXYouLIb.DLL,DBMS,发布(InstallShield),PowerBuilder基本原理-开发界面,脚本,预览,菜单,工具条,对象属性面板,函数及事件,状态条,PowerBuilder基本原理-开发界面,说明:1、PB开发为标准的MDI方式,即对应不同的开发对象,有它不同的菜单及工具条,对应不同的功能;2、可以创建的对象包括4大类:对象(窗口、函数、结构、菜单)数据窗对象(Grid,Fre
10、e Form,Tabular,Label,N-Up)数据库(Database Profile,Query,Pipeline)工程(Application,Proxy Library,COM CTS,OLE2,Java Proxy)3、常用工具Library,Editor,Class viewBrowser,DB Profile Editor,Debugger,DW Syntax等,数据库基本知识-1,一、C/S模式图示,DB Servers,TCP/IP,发送SQL语句到数据库服务器,返回SQL语句查询结果到客户机,WinNT,Linux,Unix,Microsoft SQL ServerOR
11、ACLESybase,DB2,Informix,Clients,Servers,Clients,Clients,1、客户端运行自己的程序,向服务器发送SQL请求及取回结果。2、服务器侦听网络,响应请求并返回处理结果。,物理设备,数据库基本知识-2,二、数据库系统基本组成,DBMS,Applications(应用),网络,协议介质,接口,DB Tools(管理工具),存储管理数据库管理数据库中的对象管理1.表单2.视图3.触发器4.索引5.存储过程4.函数、包,数据库基本知识-3,表单(Table):由属性和记录构成的二维关系表;视图(View):基于单表或多表的查询;存储过程(Store pr
12、ocedure):存储于数据库服务器上的一系列操作的合集,由服务器执行,可以增强可管理性和运行效率;触发器(Triggers):当对表的某种操作发生时,就引发其他的一些逻辑处理;索引(Index):服务于快速查询,寄生于表的一种服务;函数,包(function,package):类似于存储过程;数据库(database):上述各对象的集合;设备(device,tablespace,datafile):存放数据库的物理定义;日志(log):记录对数据库的任何操作,用于备份和恢复;用户(User):可以使用数据库中具体内容的人员定义;角色(Role):给同一用户赋予不同的角色,享有不同的权限;权限
13、(Privilege):赋予用户操作数据的权限;,三、关系数据库系统基本概念,数据库基本知识-4,Sybase 随PB发行的Adaptive Server Anywhere(ASA)6.0 是短小精悍的个人数据库系统,支持了大多数的关系数据库操作。如日志、事务、用户、触发器,并提供管理中心(Sybase central)来管理数据库的内容,在PB中,一个小型的数据库应用用ASA作为后台数据库已经完全可以胜任。本课程的后台数据库将主要放在ASA。Sybase Central实际上是以插件方式运行的,他可以管理Sybase产品中的大多数,如Sybase Enterprise(SYE)数据库,Jug
14、ar CTS PowerDynamo,等等.提供了统一的界面。当然也可以通过SQL语句来管理数据库。包括建表、索引、存储过程、触发器,数据更新,授权等等都可以通过SQL语句来执行。下面将通过演示来讲解关于Sybase Central的使用,特别是如何建库,建表等操作。,四、ASA中的数据库管理,应用-Applicaiton,如何建立应用(Application)事件及脚本(Events and Scripts)连接(Transaction)入口(Start Pointer),应用-1.建立,1、Menu-File-New-Application(菜单-文件-新建-开始向导-Applicatio
15、n)2、选择应用名称和存放的库文件一个应用就建立完毕。实际上这个应用没有任何脚本、窗口,也没有处理任何事情。应用建立完毕后,PB自动建立了一个PBL文件(PowerBuilder Library),并在这个PBL文件中创建了一个Application entry(应用条目)一般,一个应用都有一个主窗口,由这个窗口负责和用户的交互过程,而在应用的open事件的脚本中处理的就是如何打开这个窗口,如何和数据库建立连接,如何初始化一些全局变量,关闭应用时(Close事件)做如何处理等等。如:Open事件:.connect using sqlca;open(w_main_frame)Close事件:di
16、sconnect using sqlca;destroy xxxx就是在譬如,建立应用名为pb_lesson,存放库名为lesson.pbl,则在lesson.pbl中就存在了一个pb_lesson的条目,当然,可以在其他pbl中创建一个新的application.,应用-2.事件及用途(1),Application的事件Open当一个应用执行时,即触发此事件,实际上就是程序的入口,一般处理一些公用变量,公用对象,连接数据库,打开主窗口等操作;Close当主窗口关闭后触发此事件,如果没有打开任何窗口,则在Open事件后直接触发此事件,一般在这个事件中断开连接,清除变量等操作;Connectio
17、ngbegin当连接开始时触发此事件,由connect 函数直接触发此事件Connectionend当连接结束后触发此事件,由disconnect函数触发Idle idle(xxx second)函数触发,既当系统处于等待状态指定秒数xxx后触发该事件,一般处理如关闭系统,提醒用户等Systemerror当程序运行发生任何系统错误时触发该事件,一般处理记录错误,提醒用户等操作。常用事件:open,close,systemerror,应用-2.事件及用途(2),脚本(scripts)编写基本知识 一般依赖于某事件或函数,由事件或函数触发而执行,由换行或;表明一条语句的结束,如Connect us
18、ing sqlca;Open(w_main_frame)Disconnect using sqlca;任何嵌入式SQL都必须用;来表明该语句的结束,如Select student_name into:ls_name from table_1 where col_1=hello;大小写不敏感,如ls_name 和LS_Name表明同一个变量或对象 可以在一行写多条语句,用;隔开。如ls_name=xxx;ls_name2=yyy;li_cnt=2;变量或对象的引用前必须声明,如stirng ls_name=abc/初始值ls_name=LiujiangangMessagebox(Hello,My
19、 Name is+ls_name)就是弹出一个消息框,并提示标题为Hello,内容为 My Name is Liujiangang 的内容。并显示确认按钮用来接受用户响应。,应用-3.连接(1),一般地,在数据库前端开发中,都连接到某数据库服务器的某数据库,或者连接到本地的某数据库或ODBC源,而连接一般是在应用的Open事件中处理的,在Close事件中关闭此连接,连接实际上是Transaction对象,该对象有下列常用属性:DBMS:指定数据库管理系统的名称,如O84 ORACLE 8.0.4,ODBCServerName:指定数据库服务器名称,如EPCS_LOCAL,MSS_DB等Data
20、base:指定数据库服务器上的数据库,如MaterialDBUserID:指定数据库用户的ID号,如dboUserPassLogID:指定用于连接到数据库服务器的用户ID号,如 connectorLogPassDBParm:附加的连接参数,如ApplicaitonName=“asdfadsf”等,随DBMS而变化AutoCommit:是否自动提交,如True,false以上这些参数对特定的DBMS不是都必需的,一般DBMS,ServerName,都必须指定。其他属性(该对象创建后才具备):SQLCode:最近SQL语句执行的PB结果码,0,-100,-1三个数值SQLDBCode:最近事务中S
21、QL语句返回的数据库操作返回码;SQLErrtext:最近操作的错误信息;SQLNRows:最近操作返回的结果数据;一般,一个应用中已有默认的Transaction存在,即SQLCA,因此,在Application的OPEN事件中就可以指定它的具体属性用来连接数据库,如/Profile pb_classSQLCA.DBMS=ODBCSQLCA.AutoCommit=FalseSQLCA.DBParm=ConnectString=DSN=pb_class;UID=;PWD=;“,应用-3.连接(2),就指定了Transaction SQLCA的属性,然后就可以用数据库的四个方法中的Connect
22、来处理如一个Application的常用的Open事件脚本为:SQLCA.DBMS=ODBCSQLCA.AutoCommit=FalseSQLCA.DBParm=ConnectString=DSN=pb_class;UID=;PWD=;“Connect using sqlca;If sqlca.sqlcode=-1 then Messagebox(Error,cannt Connect to Server+sqlca.serverName,stopsign!)halt close/终止并处理Application的Close事件End ifOpen(w_frame),应用-4.入口,一个系统的
23、入口就是Application的Open事件,但是一般在这个事件中打开某窗口,如Open(w_frame)主要的事务就由w_frame来处理了。此时Application仍继续运行着并监控着W_frame的状态,一旦W_frame结束,就触发Close事件。,窗口-Window,窗口概述1、窗口(Window)是程序和用户进行交互的主要界面,类似于VB或Delphi的Form(窗体),在窗口上可以布置各种不同类型的控件以满足程序的要求,各控件间相互协作,完成预定功能。2、一个窗口可以只被打开一次或者作为一个实例变量而被创建(实例化)然后打开多次。3、任何窗口的最底层基类都是windows,可以
24、逐级继承,对于节省代码开支,界面一致性等非常有好处。4、数据窗作为标准控件可以直接嵌入到窗口中使用。,窗口-1.创建,有2种方式创建一个窗口:1.新建:从菜单中选择“文件-新建”,弹出新建向导,选择“对象-Windows”,系统就自动创建一个标题为 Untitled 的空窗口,没有任何脚本,但可以被打开。2.继承:菜单中选择“继承”,弹出可被继承的祖先清单,选择一个,系统自动从该祖先窗口继承,新窗口拥有祖先窗口的所有特性及脚本,并可以重载及覆盖这些属性或脚本。创建并修改完成,按Ctrl+S或文件-保存,输入窗口名称并制定放在那个PBL中,该窗口就可以被调用了。注意点:基于继承的窗口,一旦祖先的
25、属性修改,则该窗口中没有被重载或覆盖的部分即自动修改,实际上该窗口分为2部分:祖先和自己。,窗口-2 窗口的基本属性,窗口的属性非常多(41个),仔细理解属性的具体用途及含义对用好窗口对象非常重要。常用属性:,窗口-3.窗口支持的控件.1,窗口共支持以下33种标准控件,窗口-3.窗口支持的控件.2,这些控件各自有自己的属性,事件及函数(Properties,Events,Functions),以后我们将穿插在各章节中提及。UserObject是一种特殊的对象(控件),它以Custom Class,Stand Class,Custom Visible,External Visual,Stand
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PowerBuilderR 程序设计 系统 开发
链接地址:https://www.31ppt.com/p-6514968.html