数据库原理及应用 ——“十一五,国家级规划教材 1
第 6章 PowerBuilder概述
本章重点内容
PowerBuilder的特点
PowerBuilder的开发环境
PowerBuilder应用系统的构成和开发过程数据库原理及应用 ——“十一五,国家级规划教材 2
6.1 PowerBuilder 9.0简介
PowerBuilder 9.0是 Sybase公司最新推出的一个功能超群、使用方便、易于开发复杂应用系统的数据库前端开发工具。利用 PowerBuilder提供的功能强大的开发工具,可以快速开发大型数据库应用系统。由于对网络功能的巨大支持,
PowerBuilder正在成为客户 /服务器应用程序开发的标准。与其它客户 /服务器开发环境相比,
PowerBuilder可以使开发人员的开发进度更快、
成本更低、质量更高、功能更强。
PowerBuilder为应用的开发提供了全面综合的支持。
数据库原理及应用 ——“十一五,国家级规划教材 3
PowerBuilder 9.0具有以下优异的功能和特点。
( 1) 跨平台开发 。
( 2) 开放的数据库连接 。
( 3) 面向对象的编程 。
( 4) 事件驱动的应用程序 。
( 5) 功能强大的编程语言与函数 。
( 6) 强大的 Web及分布式开发能力 。
6.1 PowerBuilder 9.0简介数据库原理及应用 ——“十一五,国家级规划教材 4
PowerBuilder应用系统可以运行在 Windows
95/98/2000/NT,Macintosh,UNIX,Sun Solaris、
HP-UX,IBM AIX RS 6000等多种开发平台上。
PowerBuilder支持跨平台的开发和分布。例如,在
Windows系统上利用 PowerBuilder开发的应用程序可以将该应用程序分布到 UNIX上运行,反之亦然。
开发人员可以组成跨平台的开发小组,其中一些人在 Windows平台上开发,另一些人在 UNIX平台上开发,开发人员可以自由的共享在 PowerBuilder中的对象,因为 PowerBuilder所支持的不同计算环境的对象是完全一样的。
6.1.1 跨平台开发数据库原理及应用 ——“十一五,国家级规划教材 5
PowerBuilder是一个开放的应用程序开发环境,
它可以访问很多常用的后台数据库系统,例如
Sybase,Oracle,MS SQL Server,Informix等。
开发人员可以利用 PowerBuilder提供的高性能数据库引擎 Adaptive Server Anywhere生成独立的应用程序。 PowerBuilder存取数据库的方式有如下两种(如图 6-1所示):
通过使用 ODBC(开放数据库连接,Open
DataBase Connectivity)通用接口软件。
通过使用 PowerBuilder与数据库连接的专用接口。
6.1.2 开放的数据库连接数据库原理及应用 ——“十一五,国家级规划教材 6
PowerBuilder存取数据库的方式
Po w e rBu i l d e r 应用程序
O D BC 接口 S y b as e 接口 O rac l e 接口 I n fo m i x 接口其它数据库专用接口
SQ L A n y w h e re
数据库
S y b as e
数据库
O rac l e
数据库
I n fo m i x
数据库其它数据库数据库原理及应用 ——“十一五,国家级规划教材 7
ODBC是微软公司的数据库连接标准。当使用 ODBC
接口时,用户需要定义一个由用户打算存取的数据所构成的 ODBC数据源。数据源存储和管理应用程序所需的数据。 ODBC接口以 SQL做为标准的查询语言来存取连接的数据源,它允许单个应用同时访问多个不同的 DBMS,用户可以通过加载连接到不同数据库的驱动程序来建立与各种数据库的连接,由于它调用层次多,通过这种接口操作数据库的效率低。专用接口的特点是调用直接、速度快、并充分发掘了特定数据库的特色,因此要与 Sybase,Oracle,MS SQL Server
等数据库连接,建议使用专用接口。
6.1.2 开放的数据库连接数据库原理及应用 ——“十一五,国家级规划教材 8
在 PowerBuilder 9.0中新增了 JDBC JDB数据库接口,提供了对 Java数据库的连接。
在以前的版本中,系统中安装的数据库接口描述文件( DB Profile文件)都存储在
PowerBuilder初始化文件中。在
PowerBuilder 9.0中,通过 Windows注册表来获得和存储数据库的配置信息。这样,
开发人员就不用再对 Windows注册表项进行存取或修改操作了。
6.1.2 开放的数据库连接数据库原理及应用 ——“十一五,国家级规划教材 9
6.1.3 面向对象的编程
在 PowerBuilder中每一个菜单或窗口都是一个独立的模块,称为对象 (Object)。 PowerBuilder应用程序基本的组件是用户所创建的对象,每个对象都具有一些特性和行为(属性、事件和功能)。
使用了实际的面向对象方式,这使信息系统开发人员无需精通专用语言就可以迅速转向面向对象的开发。应用程序由一系列对象组成,包括窗口、菜单、函数、结构、数据窗口、通用的对象,如打印按钮,可以在很多应用中重复使用。因此,提高了程序员的效率和软件质量,又极大的减少了开发时间。
PowerBuilder还有“画板”环境,可以生成用户自定义的对象、
事件和函数,其方便在于代码的可重复使用性。支持多级继承性可使对象类库 (Object Class Libraries)开发和维护更简便。用户对象画板 (User Object Painter)完全支持对第三方控制对象 (如
VBX和 C++)的访问。
数据库原理及应用 ——“十一五,国家级规划教材 10
6.1.4 事件驱动的应用程序
事件是作用在某个对象上的动作。对某个对象执行某个动作,都会触发相应的事件,执行该事件所属的代码。
PowerBuilder的应用程序是事件驱动的,这就是说运行于该环境下的程序并不是顺序执行的,而是用户通过各种动作控制应用程序的流程。例如,单击某个按钮、从菜单中选取某个菜单项、或在某个编辑框中输入数据,都会触发相应的事件。用户可以编写处理程序来说明当事件被触发时所要完成的功能,当某事件被触发时,将会执行该事件下的处理程序。例如,当用户用鼠标单击某按钮时,将会触发该按钮的 Clicked事件,执行相应的代码。在事件驱动的环境中,用户的操作控制着程序的运行,而不是程序的运行引导用户的操作。
数据库原理及应用 ——“十一五,国家级规划教材 11
用户用 PowerBuilder创建的窗口、菜单、控件及其它对象都是一个预定义的事件集合。例如,每个按钮都有 Clicked事件,每个窗口都有 Open事件。
通常情况下,这些预定义事件都是程序员编程时常用的,程序员还可以根据开发应用程序的需要定义自己的事件。用户自定义事件和系统事件一样使用。
PowerBuilder给开发人员提供了一个集成环境。应用的各种成分,包括窗口、菜单、事件逻辑、数据库存取、数据库生成、图形、报表等全部都能在 PowerBuilder内开发,而不必再到其它环境中去做,这大大的加快了开发过程。
6.1.4 事件驱动的应用程序数据库原理及应用 ——“十一五,国家级规划教材 12
6.1.5 功能强大的编程语言与函数
PowerScript是 PowerBuilder内置的功能强大的第四代编程语言,用 PowerScript编写的程序通常称为脚本( Script)。脚本往往由 PowerScript
命令、函数和对应某一事件所要完成的处理过程的语句组成。它能使开发人员很容易的将简单或复杂的事物对象与应用项目配合。它有几百个函数用于操作对象、数字、文本、和日期等信息,并且全面支持 DDE(动态数据交换,
Dynamic Data Exchange)和全文本 I/O。
数据库原理及应用 ——“十一五,国家级规划教材 13
6.1.6 强大的 Web及分布式开发能力
PowerBuilder 支 持 分 布 式 应 用 程 序 开 发,
PowerBuilder 9.0支持两种中间层服务器,Sybase企业应用服务器 ( Sybase Enterprise Application Server,
EAServer ) 和 微 软 事 务 服 务 器 ( Microsoft
Transaction Server,MTS) 。 开发人员可以调用
EAServer或 MTS服务器提供的服务,或创建在这些服务器上运行的组件或对象 。
PowerBuilder提供了 Web目标( Web Target)和
Web数据窗口( Web DataWindow)技术,利用它们能够轻松的构造 Web应用程序。另外,EAServer
对 Web应用程序提供了全面的支持。
数据库原理及应用 ——“十一五,国家级规划教材 14
6.2 PowerBuilder 9.0的开发环境标题栏菜单栏工具栏系统树剪切窗口系统工作区状态栏输出区数据库原理及应用 ——“十一五,国家级规划教材 15
6.3 PowerBuilder 9.0应用系统的开发
6.3.1 PowerBuilder应用系统的构成
完整的应用系统由应用对象、窗口对象、
挂在窗口上的菜单对象、贴在窗口上的数据窗口对象和控件对象、用户对象以及这些对象的事件处理程序(包括脚本和函数)构成。图 6-9说明了
PowerBuilder应用程序的构成方法。
PowerBuilder应用系统窗口大致如图所示。
数据库原理及应用 ——“十一五,国家级规划教材 16
数据库原理及应用 ——“十一五,国家级规划教材 17
6.3.2 PowerBuilder应用系统的开发步骤
( 1) 利用 PowerBuilder或其他数据库管理系统,如 Access或 SQL Server,创建数据库,数据表,建 立 表 间 关 联,并 将 其 连 接 到
PowerBuilder开发环境 。 因为数据库是创建数据库应用程序的基础 。
( 2) 建立工作空间 。
( 3) 建立应用对象,应用程序库和目标,并设置应用库和目标的搜索路径 。
( 4) 建立窗口,为窗口添加各种控件,并为窗口和控件编写对应事件的脚本 。
数据库原理及应用 ——“十一五,国家级规划教材 18
( 5 ) 创建数据窗口对象 。 该对象是
PowerBuilder特有的对象,利用数据窗口对象可以比较简单的完成对数据的大部分操作,并且提供了多种对数据的显示方式 。 图 6-9即为利用数据窗口操纵数据库的一个典型实例 。
( 6) 建立用户对象 。 如果一些功能对象是重复使用的,为了减少工作量,可以定义可视用户对象和非可视用户对象,
可视用户对象可以放到窗口中使用,非可视用户对象可以在脚本中使用 。
6.3.2 PowerBuilder应用系统的开发步骤数据库原理及应用 ——“十一五,国家级规划教材 19
( 7) 建立用户函数,结构或事件 。 对于一些重复使用的功能脚本或更好的体现模块化的程序开发可以建立用户函数,
对相互关联的数据可以定义结构,还可以为对象和控件建立用户自定义事件,
这三个方面增加了应用程序的灵活性,
丰富了 PowerBuilder的开发能力 。
( 8)建立菜单并为菜单项编写相应的脚本。
6.3.2 PowerBuilder应用系统的开发步骤数据库原理及应用 ——“十一五,国家级规划教材 20
( 9 ) 测 试 和 调 试 应 用 程 序 。 使用
PowerBuilder 提供的强大的调试工具可以帮助我们快速发现错误 。
( 10) 编译和发行应用程序 。 应用程序测试完成后可以将其编译生成可执行文件,或制作安装盘发布给用户 。
在上述 10个步骤中,第 ( 2) 步和第 ( 3)
步是必须的,其他都是可选的,从第 ( 4)
步开始,各项工作可以按任意顺序进行 。
6.3.2 PowerBuilder应用系统的开发步骤数据库原理及应用 ——“十一五,国家级规划教材 21
6.3.3 PowerBuilder应用系统的开发举例 —求解一元二次方程数据库原理及应用 ——“十一五,国家级规划教材 22
求解一元二次方程
1.创建工作空间
( 1)单击 new图标或使用菜单 File|new打开 new
对话框;
( 2)选择 Workspace标签页中的 Workspace图标,然后单击 【 ok】 按钮,在出现的 New
Workspace对话框中选择或新建文件夹(如
F:\Myapp\),在文件名部分输入工作空间文件的名称,如 myapp,单击 【 保存 】 按钮。
数据库原理及应用 ——“十一五,国家级规划教材 23
求解一元二次方程
2.创建应用对象
( 1)单击 new图标打开 new 对话框;
( 2)选择 Target标签页中的 Application图标,
然后单击 【 ok】 按钮,出现如图 6-11所示的对话框。按图所示填写应用对象、应用库和目标的搜索路径,然后单击 【 Finish】 按钮。
图 6-11 New Application And Library对话框此处输入用户对象名称此处输入应用库名称和路径此处输入目标名称和路径数据库原理及应用 ——“十一五,国家级规划教材 24
求解一元二次方程
3.创建窗口对象
( 1)单击 new图标打开 new 对话框;
( 2)选择 Pbobject标签页中的 Window图标,单击单击 【 ok】 按钮,出现窗口画板。如图 6-12所示。
数据库原理及应用 ——“十一五,国家级规划教材 25
求解一元二次方程属性区域窗口画板窗口控件列表系统树工作空间目标应用库应用对象数据库原理及应用 ——“十一五,国家级规划教材 26
求解一元二次方程
( 3)在属性区域 Title区域输入“一元二次方程求解”,
作为窗口的标题。
( 4)单击 Save图标,在 Save Window对话框中输入窗口的名称,如 w_equator,注意,窗口的名称不能和应用对象的名称相同。
( 5)添加静态文本控件:单击窗口控件列表上的按钮,
然后在窗口上的空白区域单击鼠标,出现一个静态文本控件,在属性区域将 text属性中的,none”去掉,并输入“请输入一元二次方程 ax*x+bx+c=0的三个系数”,
完成第一个静态文本的设置。利用同样方法添加其他静态文本控件,text属性分别为:,x*x+”、,x+”、
,=0”、,x1=”、,x2=”。可以用鼠标拖动调整其位置。
数据库原理及应用 ——“十一五,国家级规划教材 27
求解一元二次方程
( 6)添加单行编辑器(用于输入系数和显示解的控件):单击窗口控件列表上的按钮,然后在窗口上的空白区域单击鼠标,出现一个单行编辑器控件,在属性区域将 text属性中的,none”去掉,将 name属性改为
sle_a。用鼠标将其拖动到静态文本,x*x+”的左边。利用同样方法建立其他静态文本控件:,x+”左边放置的控件 name属性为 sle_b,右边为 sle_c;解,x1=”右边的控件的 name为 sle_x1,最后一个为 sle_x2。
( 7)添加按钮:单击窗口控件列表上的按钮,然后在窗口上的空白区域单击鼠标,出现一个按钮控件,在属性区域将 text属性中的,none”改为“求解”。双击该按钮,出现脚本视图区并输入脚本,如图 6-13所示。
数据库原理及应用 ——“十一五,国家级规划教材 28
求解一元二次方程数据库原理及应用 ——“十一五,国家级规划教材 29
求解一元二次方程
( 8)单击保存按钮。并关闭窗口画板。如果有错误,请对照图 6-7改正。
4.双击系统树中应用对象 myapp,打开应用对象的 open事件,在脚本视图区编写脚本:
open(w_equator)
单击保存按钮保存应用程序,然后单击
PowerBuilder主工具栏上的 run按钮,运行应用程序查看结果。
数据库原理及应用 ——“十一五,国家级规划教材 30
本章小结
PowerBuilder开发环境具有跨平台开发、开放的数据库连接、面向对象的编程、事件驱动的应用程序、功能强大的编程语言与函数、强大的 web及分布式开发能力等特点,
使其具有很强的市场竞争力。
PowerBuilder应用系统一个工作空间、一个或多个目标、
一个或多个应用库以及各种对象构成,它们形成了逐级包容关系。当然,在数据库应用系统中,数据库是必不可少的。
建立客户 /服务器结构 PowerBuilder应用系统的过程可以概括为:( 1)建立或准备数据库、( 2)建立工作空间、
( 3)建立应用对象、应用程序库和目标、( 4)建立窗口并添加控件、( 5)创建数据窗口对象、( 6)建立用户对象、( 7)建立用户函数、结构或事件、( 8)建立菜单、
( 9)测试和调试应用程序、( 10)编译和发行应用程序。