PowerBuilder7.0实用教程
PowerBuilder快速入门讲义

Powerbuilder编程简介
---- Powerbuilder开发步骤
6. 创建数据窗口对象(以便在窗口对象中可以引用) 数据窗口是用于查询、显示和维护来自关系数据库或其他数据源(如Excel 文件或其他文件)数据的对象。在数据窗口中可以定义数据的显示格式、 显示风格和其他数据属性,使数据对用户更加直观和更有意义。 PowerBuilder通过数据窗口对象将若干数据操作进行了封装,从而使程 序界面设计更为方便和灵活。 数据窗口最初使用在PB的C/S结构中,为这种模式提供了强有力的数据 查询和数据维护功能。随着PB及其相关技术和产品的发展,PB已经不是 单一的C/S应用开发工具,已经可以适应Web开发等各种需要。
Powerbuilder编程简介
---- Powerbuilder开发步骤
举例叙述开发步骤 示例:编制一个学生信息综合查询的应用程序
Powerbuilder编程简介
---- Powerbuilder开发步骤
1. 建立好数据库(可以用MS SQL Server或MS Access或Oracle等建立) -------数据库:TeachDB.mdb; 表:student(Sname, Sage,Ssex,Sclass…)
Powerbuilder编程简介
---- Powerbuilder开发步骤
4. 编写Application的事件处理程序(脚本):open(), close() 应用程序对象还有其他一些事件 Connectionbegin 当连接开始时触发此事件,由connect 函数直接触发此事件 Connectionend 当连接结束后触发此事件,由disconnect函数触发 Idle idle(xxx second)函数触发,即当系统处于等待状态指定秒数xxx后触发 该事件,一般处理如关闭系统,提醒用户等。 Systemerror 当程序运行发生任何系统错误时触发该事件,一般处理记录错误,提醒 用户等操作。
在PB 7.0中实现多数据窗口的连续打印

PowerBuilder最吸引人的地方就是她那强大的数据窗口技术,它为展现数据的本质提供了丰富的手段,数据窗口能够从多种数据源提取数据,然后以多种风格展现在用户面前,对于一个PB程序员能否用好用活数据窗口是那么的重要,同时也反映出编程人员的一定技术水平。
相信在看了本文之后一定会对你编写程序有所帮助,文中如有任何不妥之处还请同仁们多多指教。
在实际的应用中我们或许会碰到用户有这样的要求,在第一张报表上打印一个客户的购买商品的统计数据,以后的每页显示的是他购买商品的明晰清单。
也就是相当于打印两份报表,一份是统计报表,另一份是明细表。
单纯就这两份报表而言对于任何一个PB程序员来说都不是什么难事,很容易就可以搞定,我们完全可以分两张报表打印给用户,但这还总是让我们觉得似乎缺了点什么,毕竟用户是想让这两份报表作为一个整体出现,最起码的要求是它们的页号应该连续,并且同时也能告之用户总共有多少页。
这就涉及到多个数据窗口连续打印的问题。
首先,统计和明细的结果是根据用户输入的条件来得到的,这是个不定的结果,我们无法预先得知会有多少条数据,更别说需要多少页了。
即便是我们能够确定有多少条数据也会因为用户打印机的纸张设置不同而会出现不同的显示结果。
其次,要在统计表和明细表里显示两张报表的总页数,这个有点难度,毕竟对于两张报表来说都是个未知数,即对于统计表来说,它可以知道自己的总页数,但不知道明细表的总页数。
同样对于明细表也是这样,只知道自己的总页数,而不知道统计表的总页数。
这样很难在两张报表里分别显示它们的页数之和。
虽然如此可对于它们自己而言当前是第几页还是能够确定的,这个只要调用数据窗口的内嵌函数 Page()就可以很容易的得到。
下边我们就通过一个简单的例子来探讨如何实现多个数据窗口连续打印技术。
程序首先让用户输入客户号,然后系统根据用户输入的客户号统计出该客户各类商品的购买总数以及订购的每一种商品明细。
整个程序的执行如下三副图所示:在开始之前先让我们看一下例子中用到的三张表的结构以及它们之间的相互关系,见下图:其中,表Customer和表Sales_Order通过cust_id(客户编号)相关联,表Sales_Order和表Sales_Order_Items通过id(销售定单号)相关联。
powerbuilder教程

powerbuilder教程
PowerBuilder是一种用于开发客户端/服务器和Web应用程序
的集成开发环境(IDE)。
它具有易于使用的可视化设计工具
和强大的开发功能,适用于数据库应用程序的快速开发和维护。
PowerBuilder的开发过程主要包含以下几个步骤:
1. 创建新的应用程序:在PowerBuilder中,可以选择新建应
用程序,然后配置数据库连接等信息。
2. 创建数据窗口:数据窗口是PowerBuilder中最重要的界面
元素之一,用于显示数据库中的数据。
可以通过拖放方式将数据库表或查询结果添加到数据窗口中,然后设计数据窗口的布局和样式。
3. 编写业务逻辑:可以使用PowerScript编程语言来编写数据
窗口和应用程序的逻辑。
PowerScript是一种类似于其他编程
语言的脚本语言,可以用于处理用户交互、数据库操作、错误处理等。
4. 调试和测试:在开发过程中,可以使用PowerBuilder提供
的调试工具来调试和测试应用程序。
可以设置断点、监视变量的值,并逐步执行代码以检查程序的运行情况。
5. 部署和发布:完成开发和测试后,可以将应用程序部署到目标环境中。
PowerBuilder支持将应用程序打包成可执行文件或
安装程序,以便用户在其计算机上安装和运行应用程序。
总之,通过PowerBuilder的可视化设计工具和强大的开发功能,开发人员可以快速构建数据库应用程序,并实现复杂的业务逻辑。
它是一种非常适合开发数据驱动应用程序的开发工具。
PowerBuilder数据窗口技巧

PB数据窗口技巧1 使DataWindow列只能追加不能修改如何使DataWindow中的数据只能追加新记录而不能修改,利用Column 的Protect 属性可以很方便的做到这一点,方法如下:将每一列的Protect 属性设置为:If( IsRowNew(), 0, 1) )在PowerScript 中可以动态修改Protect 属性:dw_1.Modify("column_name_here.Protect='1~tIf(IsRowNew(),0,1)'")这样,DataWindow 中只有新追加的记录可修改,而其他记录是只读的。
2 如何在DataWindow中实现列的自动折行我们在PowerBuilder应用程序的开发过程中, 使用DataWindow时, 经常会遇到某列的数据太长, 不能同时全部显示的情况. 若采用自动水平滚动, 操作起来又不够简便. 下面介绍一种方法, 实现列数据多行显示, 即实现列数据的自动折行.具体步骤如下:1) 在DataWindow Painter中打开此DataWindow.2) 在需设定自动折行的列上双击鼠标, 弹开此列的属性窗口.3) 选择Position标签, 选中Autosize Height 多选框.4) 选择Edit标签, 不选中Auto Horz Scroll多选框.5) 单击OK按钮, 保存所做的修改.6) 点中Detail Band (即写有Detail的灰色长带), 单击鼠标右键, 选择Properties... 菜单项.7) 选中Autosize Height多选框.8) 单击OK按钮, 保存所做的修改.9) 保存此DataWindow.注意:连在一起的汉字(中间没有标点或空格分隔), 系统将认为是一个单词, 不会自动进行折行.3 在数据窗口中实现动画要实现动画,必须要有定时器,在数据窗口中已经有了一个定时器,双击数据窗口将弹出的对话框,在Timer Interval中定义大于零的值就有定时器(可以精确到毫秒),有了这个定时器就可以实现动画了。
PowerBuilder案例开发程序设计教程chap2

字 符 ^ $ []
含
义
指示字符串的开始,如^abc表示以abc开始的字符串,字符 串asdfgh与模式^abc匹配,而字符串basdfg与模式不匹配。 指示字符串的结束,例如,red$所有以red结束的字符串。
2.5 视图及其操纵
2.5.1 创建和删除视图 1.创建视图 视图画板工作区分为上中下三个部分: 最上面部分是要在视图中显示的数据列的 列名列表,显示顺序为先左后右;中间部 分是当前创建视图的可用表。下面部分指 定各种条件。
2.5 视图及其操纵
如果选择了多个表,应该连接这些表。初始情 况下PowerBuilder按如下规则连接表: 如果表之间有外部键连接,自动按外部键关系 连接; 如果没有外部键连接,PowerBuilder试图用列 名和类型相同的列连接表。 如果要创建新的连接关系,可在 PainterBar上 单击Join图标,然后单击用于连接的列即可。如 果要建立非等值连接,那么在画板工作区中单击 连接表达式。
2.4 数据表的操纵
Headers选项卡可以定义列的标题和标签。
Display选项卡可以定义列的显示格式。 Validation选项卡可以定义列的有效性规则。
Edit Style选项卡可以定义列的编辑格式。
列的插入、删除和修改
2.4 数据表的操纵
2.4.2 索引和主键、外部键的创建与删除
在PowerBuilder中要向表输入数据,必须为 表定义一个唯一索引或主键。 在PowerBuilder中可以为表创建索引、主键 和外部键。索引分为唯一索引和普通索引。 主关键字、外部关键字、索引都是基于某个 表的,在建立它们之前都要选定某个表。
2.7 数据库管理
此外,可将百分号、小数点、货币符号、空格、 插入到掩码中,这些符号照原样显示。 如果不使用上述特殊符号,可使用两个关键字 (放置在中括号内)[general]和[currency],前者 是一般数值的显示格式,后者是货币显示格式,即 按照操作系统规定的货币符号和显示格式显示,在 中文 Windows 环境下,设置该格式后显示 1234.57 时, 将显示¥ 1234.57。 注释:[Currency(7)] 和[Currency(n)]是合法的编 辑掩码、但不是合法的显示格式。
PowerBuilder控件使用手册

PB控件使用介绍一、PB中使用Microsoft Web Browser控件步骤:在pb的某窗口中加入OLE对象,选择Insert control(插入控件),然后选中"Microsoft WEB 浏览器",(随系统而定的版本),就可以在这个窗口直接使用IE浏览器控件了。
常用函数:(对这个ole控件取名叫ole_web)ole_web.object.navigate(string ls_url) file://浏览某url,譬如:ole_web.object.navigate('') 就是浏览 页面,当然支持本地文件,也支持本地图片文件的浏览,如jpeg,jpg,gif,png等等,如果是不支持的文件,则直接弹出选择打开文件对话框,和ie一模一样。
ole_web.object.goback() file://回退(如果没有内容可退,则会弹出错误,可以屏蔽该错误)ole_web.object.goforward() file://前进,同上常用事件:documentcomplete : url请求的页面完成;downloadcomplete:url中请求的下载完成;常用属性:ole_web.object.width :pixel高度,需要转换为pbunit高度才可以调整ole_web.object.height:同上ole_web.object.offline:离线方式,true,false两者之一你甚至可以用pb写出一个和ie类似的界面用来进行浏览网页或图片。
二、在程序中打印在程序中如何提供打印功能呢?这里有三种调用打印函数的格式可供选择。
1. 对数据窗口控制或者数据窗口可以使用这种打印格式。
DATAWINDOWNAME.Print(cancel_window)这里cancel_window 是一个布尔值,它指出是否要显示一个用户可以用来中止打印动作的窗口。
PowerBuilder调试方法与技巧

PowerBuilder调试方法与技巧1.引言PowerBuilder是数据库前端应用开发的主流编程工具,随着从Client/Server的两层开发模式到三层甚至多层开发模式的过渡,PowerBuilder不断增加新的功能以适应和推进这种转变。
PowerBuilder 7的版本已经可以通过开发Jaguar 中间层组件创建典型的分布式应用。
这就给PowerBuilder的调试技术提出新的要求。
调试技术在任何软件开发中都站有及其重要的位置。
利用PowerBuilder开发也不例外。
PowerBuilder工具集成了强大的调试画板,使得调试变得容易,但其中的一些高级的调试技巧和技术并不是很容易掌握,而掌握和使用这些调试的高级技巧和技术是开发高质量软件产品的重要保证,也是优秀的PowerBuilder开发者必须具备的能力。
PowerBuilder提供的高级调试技术主要包括:设置临时和条件断点、设置变量值改变断点、Just-in-time调试、Jaguar组件远程调试术(Remote Debug)。
前三种调试技巧适合于本地调试;最后一种是分布式应用中的调试技巧,可以在客户端对部署在应用服务端Jaguar CTS(Component Transaction Server组件事务服务器简称)的组件进行调试,包括调试陷入到事件或者方法的脚本,观察和更改组件变量等。
远程调试技术以本地调试为基础,是PowerBuilder做分布式开发的关键性技术,尽管与本地调试类同,但却又有其独特和复杂的一面,是做好PowerBuilder中间层组件开发的重要技术。
当然,熟悉本地调试的各种技术细节,才能更好得进行远程调试。
对于基本的调试技术(比如设置断点、单步执行、屏蔽和清楚断点、监视变量等)不再累述。
2.PowerBuilder7的调试画板简介调试画板集成了PowerBuilder强大的调试功能,包括以下主要的部分:1)Breakpoints View:展示所有要调试的对象、事件、代码行信息、通过它很容易定位到需要调试的代码或者进行断点使能和屏蔽等操作。
PowerBuilder 7.0实用技巧八则

PowerBuilder 7.0实用技巧八则一、实现运行窗口居中众所周知,PowerBuilder 7.0在以前的版本中提供了图形化的预览工具,可以很方便的在设计阶段实现窗口居中。
但是,到了7.0似乎该项工具被取消了,也没有什么属性来设置,至少我没有找到。
每当我们需要将窗口居中的时候只有一点一点地调整它的X,Y值,这一点十分让人头痛。
出于无奈,只好通过编程实现。
我们只在每个需要居中的窗口的Open事件中写上这些代码就会实现窗口的自动居中。
要实现窗口的自动居中,我们可以用函数Move()来实现。
但是,由于我们开发出来的应用程序往往会在不同的设置环境中运行,虽然一般情况下是由我们为用户配置好的,但我们总不能保证用户显示器的设置模式不会改变。
所幸的是,PB为我们提供了环境对象Environment,该对象其实是一个系统结构,其中保存了PB应用程序的运行平台信息,例如,代码集,CPU类型等。
其中当然会有我们需要的屏幕宽和高。
为了得到该结构我们可以用函数GetEnvironment()。
该函数的作用是得到关于操作系统,处理器和屏幕的系统信息。
具体用法如下:Environment my_systemInteger li_ScreenWidth, li_ScreenHeightGetEnvironment(my_system)// 得到屏幕的总宽度和长度li_ScreenWidth = PixelsToUnits(my_system.ScreenWidth, XPixelsToUnits!)li_ScreenHeight = PixelsToUnits(my_system.ScreenHeight, XPixelsToUnits!)// 函数PixelsToUnits()的作用是将屏幕的像数转换成PowerBuilder使用的单位,因为像数通常不用于方形中,具体用法请参见函数手册。
然后就可以用Move()来实现窗口居中。
PowerBuilder完全实例教程

为Query对象,供数据窗口或数据管道使用;
1.2 集成开发环境IDE简介
Select painterSelect语句画板:为数据窗口或数据管道设置SQL Select语句;
Structure painter结构画板:创建全局结构; User Object painter用户对象画板:创建用户对象; Window painter窗口画板:创建窗口对象; 4. 联机帮助
2. 系统开发和代码调试
系统开发过程可分为:建立应用对象;生成用户对象、函数和结构;建立窗 口和菜单;创建数据窗口对象;将数据窗口对象连接到窗口上;编写各对象 的事件处理程序。建立应用时,可以首先在很短时间内建立应用原型,待系 统运行无误后,再进一步锦上添花。使用数据库调试功能可以查出数据访问 方面可能存在的瓶颈问题。
系统测试和功能调试系统测试用于排除系统设计缺陷检查功能的完整性操作的方便性使用的简捷性运行可靠性以及系统的容错性等生成安装盘和交付应用创建新的工作空间workspace的方法见图112单击工具栏上new图标新创建new对话框工作空间workspace页单击ok弹出保存对话框设置保存路径和工作空间文件名称后保存即可
继承…
Open…
打开…
Run/Preview… 运行或 预览对象
Open Workspace… 打 开一个工作空间
Printer Setup… 设置打 印机
Recent Objects> 最近打 开过的对象
Recent Workspace> 最近 打开过的工作空间
Recent Connections> 最近连 接过的数据库
PowerBuilder编程技巧实例.

PowerBuilder编程技巧实例随着数据库技术在各行各业的广泛应用,作为企业级数据库前端开发工具的Power Builder日益成为开发人员的得力助手。
PowerBuilder以其开放的体系结构,友好的用户界面和简洁高效的开发环境赢得了众多程序员的喜爱,连续多年被评为美国计算机界的年度风云产品,在数据库开发工具领域占据了高达44%的市场份额。
PowerBuilder进入我国的时间不长,许多编程人员希望了解并掌握这一先进工具。
在这里,笔者将自己平日用PowerBuilder作开发的一些体会整理出来,奉献给大家。
PowerBuilder是由多个功能模块组成的可视化集成开发环境,是面向对象的开发工具,用它可以方便地建立起基于Windows的分布式数据库应用。
其功能模块分别完成应用管理、窗口对象设计、菜单对象设计、数据窗对象设计和数据库查询等工作,这些功能模块由于PowerBuilder提供的色彩丰富的工具条而被称作"Pain ter"(画板。
下文便依据各模块作大的分类介绍相应的编程技巧。
、有关应用的编程技巧仅让应用程序运行一次的技巧有时需要限制一个PowerBuilder应用同时运行的实例(Instanee个数或仅让应用运行一次,我们可以通过调用WindowsSDK函数或使用PowerBuilder的Handle(函数来实现。
先谈调用SDK函数的方法。
为了调用SDK函数,需要在AppIicationPainter的菜单项Declare'GlobalExternalFunctions中定义:Fun ctio nuin tGetModuleHa ndle(stri ngModuleNameLibrary"Kernel.exe"Fun ctio nuin tGetModuleUsage(ui ntModuleHa ndleLibrary"Kernel.exe"F面这段程序写在Application的Open事件中。
PowerBuilder实验指导书

《PowerBuilder》课程实验指导书实验一PB编程环境一、实验目的了解PowerBuilder的集成环境,熟悉PowerBuilder的基本操作以及利用PowerBuilder控件进行简单的编程。
二、实验原理利用PowerBuilder控件进行简单的编程。
三、主要仪器及耗材计算机,PowerBuilder四、实验内容与步骤内容:1. PB 的启动与退出。
2.定制画板与工具条。
3. 利用Template Application创建应用程序。
4. 利用PowerBuilder控件进行简单的编程。
步骤:1.启动双击屏幕上的PowerBuilder图标,就可以启动PowerBuilder。
2.定制画板根据自己的需要将扩展画板加到PowerBar中,以方便使用。
其方法为:在PowerBar 上单击鼠标右键,弹出一个弹出式菜单,选择"Customize", 打开"Customize"对话框,该对话框包括上下两个部分,上部分为PoweBuilder所能提供的所有画板(含基本画板和扩展画板),下部分为目前已经在PowerBar中的画板.可以通过拖的方式把扩展画板加到PowerBar中。
3.定制工具条(1) 在PowerBar上单击鼠标,弹出的菜单中Powerbar1和PainterBar1代表系统当前所打开的工具条。
(2) 单击菜单中的New菜单项就可以生成一个新的工具条,单击后系统弹出一个题为New toolbar 的对话框,要求用户为要创建的工具条选一个名字。
(3) 系统接着弹出一个题为Customize的对话框,此后就可以用和前面类似的方法来定制新创建的工具条。
4.利用Template Application创建应用程序。
在创建workspace之后,单击File→在Target标签中双击Template Application图标→About the Template Application Wizard对话框→What you will do对话框→Specify New Application and Library对话框→Specify Template Type对话框→Adjust Application Library Search Path对话框→Name MDI Frame and Menu对话框→Name MDI Base Sheet,Menu and Service对话框→Name Individual Sheet对话框→Assign Display Names to Sheets对话框→Name About Box and Toolbar Window对话框→Specify Connectivity对话框→Create Project 对话框→Ready to Create Application对话框,最后单击Finish。
第一章PowerBuilder入门

PowerBuilder安装过程 安装过程
1、运行PB的安装光盘根目录下的 、运行 的安装光盘根目录下的 的安装光盘根目录下的Setup.exe,安装程 , 序提示是否同意软件的许可协议,如下图所示。 序提示是否同意软件的许可协议,如下图所示。不同 意许可协议时将退出安装过程。 意许可协议时将退出安装过程。
8.PB支持交叉平台 . 支持交叉平台
PB是一个跨平台的开发工具,它能够在许多 是一个跨平台的开发工具, 是一个跨平台的开发工具 操作系统环境下进行应用程序的开发, 操作系统环境下进行应用程序的开发,如 Windows 9x、Windows 2000、Windows NT等。 、 、 等
9.灵活快捷的数据转移方法-数据管道技术 .灵活快捷的数据转移方法-
1.1 PowerBuilder的功能特点 的功能特点
PB是美国 是美国PowerSoft公司(后来被 公司( 是美国 公司 后来被Sybase公司并 公司并 于二十世纪九十年代初期( 购)于二十世纪九十年代初期(1992年)推出的产 年 品,它是一种基于客户机 服务器体系结构的应用程 它是一种基于客户机/服务器体系结构的应用程 客户机 服务器 序的前端开发工具,采用面向对象的开发技术, 序的前端开发工具,采用面向对象的开发技术,具 有可视化的图形用户界面, 有可视化的图形用户界面,使用它开发人员能够快 速容易地开发出应用程序。 速容易地开发出应用程序。
11、单击“否”按钮。安装程序会检测计算机中是 、单击“ 按钮。 否安装了DCOM。DCOM是ODBC 3.5所需要的驱 否安装了 。 是 所需要的驱 动程序,可从微软的相关网站上下载。 动程序,可从微软的相关网站上下载。如果还没有 安装DCOM,则系统会提示在完成 安装 ,则系统会提示在完成PowerBuilder的 的 安装后安装DCOM。 安装后安装 。
PowerBuilder培训讲义

目录第一讲面向对象与PB开发环境 ............................................ 错误!未定义书签。
一.开发工具总体介绍.......................................................... 错误!未定义书签。
二.面向对象技术与可视化开发环境.................................. 错误!未定义书签。
1.面向对象技术................................................................. 错误!未定义书签。
2.PowerBuilder可视化开发环境 ..................................... 错误!未定义书签。
三.熟悉开发环境.................................................................. 错误!未定义书签。
四.应用程序开发步骤.......................................................... 错误!未定义书签。
第二讲应用对象与事务对象 ................................................... 错误!未定义书签。
一.应用对象和应用对象画笔.............................................. 错误!未定义书签。
1.应用对象......................................................................... 错误!未定义书签。
2.应用库............................................................................. 错误!未定义书签。
PowerBuilder函数使用手册.

PowerBuilder函数使用手册.PowerBuilder 函数全集PrintDefineFont(功能定义打印作业使用的字体,对每个打印作业PowerBuilder 支持八种字体。
语法PrintDefineFont(printjobnumber,fontnumber,facename,heig ht,weight,fontpitch,fontfamil y, italic,underline参数printjobnumber :用PrintOpen(函数打开的打印作业号fontnumber :指定赋给当前定义字体的编号,有效值在1到8之间facename:string 类型,指定字体名称,该字体应该是你的打印机支持的字体,比如“宋体”height:Integer 类型,使用正值指定字体的高度,以千分之一英寸为单位;使用负值指定字体点数,比如,-18代表18点。
一般来说,使用点数更精确些weight :指定字体的磅数,正常字体为400磅,粗体为700磅fontpitch :FontPitch 枚举类型,指定字体标准。
有效取值为:Default! - 缺省值;Fixed! - 固定形式;Variable! - 可变形式fontfamily :FontFamily 枚举类型,指定字体系列。
有效取值为:AnyFont! 、Decorative! 、Modern! 、Roman! 、Script! 、Swiss!italic :boolean 类型,指定是否使用斜体样式。
有效取值为:TRUE - 使用斜体样式;FALSE - 不使用斜体样式。
缺省值为FALSEunderline :boolean 类型,指定是否加下划线。
有效取值为:TRUE - 加下划线;FALSE - 不加下划线。
缺省值为FALSE 返回值Integer 。
函数执行成功时返回1,发生错误时返回-1。
如果任何参数的值为NULL ,PrintDefineFont(函数返回NULL 。
PowerBuilder调试方法与技巧

PowerBuilder调试方法与技巧1.引言PowerBuilder是数据库前端应用开发的主流编程工具,随着从Client/Server的两层开发模式到三层甚至多层开发模式的过渡,PowerBuilder不断增加新的功能以适应和推进这种转变。
PowerBuilder 7的版本已经可以通过开发Jaguar 中间层组件创建典型的分布式应用。
这就给PowerBuilder的调试技术提出新的要求。
调试技术在任何软件开发中都站有及其重要的位置。
利用PowerBuilder开发也不例外。
PowerBuilder工具集成了强大的调试画板,使得调试变得容易,但其中的一些高级的调试技巧和技术并不是很容易掌握,而掌握和使用这些调试的高级技巧和技术是开发高质量软件产品的重要保证,也是优秀的PowerBuilder开发者必须具备的能力。
PowerBuilder提供的高级调试技术主要包括:设置临时和条件断点、设置变量值改变断点、Just-in-time调试、Jaguar组件远程调试术(Remote Debug)。
前三种调试技巧适合于本地调试;最后一种是分布式应用中的调试技巧,可以在客户端对部署在应用服务端Jaguar CTS(Component Transaction Server组件事务服务器简称)的组件进行调试,包括调试陷入到事件或者方法的脚本,观察和更改组件变量等。
远程调试技术以本地调试为基础,是PowerBuilder做分布式开发的关键性技术,尽管与本地调试类同,但却又有其独特和复杂的一面,是做好PowerBuilder中间层组件开发的重要技术。
当然,熟悉本地调试的各种技术细节,才能更好得进行远程调试。
对于基本的调试技术(比如设置断点、单步执行、屏蔽和清楚断点、监视变量等)不再累述。
2.PowerBuilder7的调试画板简介调试画板集成了PowerBuilder强大的调试功能,包括以下主要的部分:1)Breakpoints View:展示所有要调试的对象、事件、代码行信息、通过它很容易定位到需要调试的代码或者进行断点使能和屏蔽等操作。
PowerBuilder实践教程ppt第5章PowerBuilder应用程序的对象

第五章PowerBuilder应用程序的对象PowerBuilder为每个程序都定义了一个应用对象,将它作为程序的开始入口,所以在PowerBuilder开发的软件中,在应用(Application)对象中,需要编写启动代码,同时应用对象还规定着应用程序系统级的许多属性。
5.1 PowerBuilder的应用对象在PowerBuilder画板中,可以对应用程序系统中的各种对象进行设置,包括Application、Window、控件(按钮、文本框等)和数据窗口(DW)等。
在画板中包含许多视图,常见视图列举如下:•“Properties”(属性)视图:用来设置对象及各种控件的属性。
•“Event List”(事件列表)视图:查看对象的所有事件。
•“Script”(脚本)视图:为各种对象的事件编写代码。
•“Function List”(函数列表)视图:查看对象的所有函数。
5.1.1 “Application”应用对象属性“Application”应用对象有许多属性,在“Properties”属性视图中,有“General”和“Toolbar”标签。
Application应用对象的常用事件有:“Open”事件、“close”事件、“systemerror”事件、“idle”事件。
5.1.2 应用对象的事件设计“Open”事件:是一个PowerBuilder应用程序的起点。
•“Close”事件:是在退出应用程序、返回到操作系统之前所触发的事件。
•“Idle”事件:是在程序中判断设定的时间间隔内,当用户未敲击键盘或使用鼠标时,被触发的事件。
•“SystemError”事件:用来处理严重的系统错误。
【例5.1】设置应用对象属性5.1.3 引用多PBL文件PowerBuilder应用程序中的对象,基本上都保存在“PBL”文件中,如果要将一个“PBL”文件移动到其它计算机上,而只需要复制“PBL”文件即可。
方法是建立工作空间之后,再将该“PBL”程序导入,该技术对低版本的PB应用向高版本的升级非常实用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
WEB服务器
服务 器
中间件
(使用中间件间接访问的Web数据库模式)
数据库服务器
客户端应用 Java Applet ActiveX
Internet/Intranet 客户端 浏览器
服务 器
数据库
(直接访问的Web数据库模式)
4.2 如何开发数据库应用系统
用PowerBuilder开发应用系统时,一般都要 经过系统分析、系统设计、系统开发、代码调试、 系统测试、生成EXE、交付应用等各个阶段。
事件驱动过程的程序设计原理 事件驱动:程序启动时,只做了一些初始化 的工作,然后等待用户或外界的环境的触发。所 有的代码都是编写在不同的事件中。
1.2 PowerBuilder 7.0的新特性
全新的用户接口和开发界面
1.2 PowerBuilder 7.0的新特性
非模态的开发视窗 PB7.0的画板一般是拥有多个视窗的窗口,每个视
启动应用程序
Open 事件
初始化,打开初始化窗口
与用户交互
系统错误
打开其它窗口
系统错误
启动应用程序
应用程序终止
关闭并清除所有对象
应用程序对象
应用程序属性
应用程序事件
对象库搜索表
创建应用程序
创建应用程序
第三章 窗口设计
窗口创建 窗口控件的基本操作 窗口控件属性、事件和函数 常用对话框
创建窗口(1)
系统开发
在PowerBuilder 7.0中,建立应用程序需做的大 量工作是创建对象、描述对象、设置属性,而不是编
写大量的代码。系统开发过程可分为:建立应用对象; 生成用户对象、函数和结构;建立窗口和菜单;创建
数据窗口对象;将数据窗口对象连接到窗口上;编写 各对象的事件处理程序。除了建立应用对象需要在应 用开发的一开始就要完成外,其它步骤可按任意次序 进行。PowerBuilder是个快速应用开发工具。建立应 用时,可以首先在很短时间内建立应用原型,待系统 运行无误后,再进一步锦上添花。
调试
变量查看等多种调试功能,可以帮助开发人员快速地排 除程序错误,而且,它的自动编译功能在保存事件处理 程序时能够找出所有的语法错误。另外,使用PB的
PB的调试器提供了单步跟踪、断点跟踪、条件断点、
PBDEBUG功能可以跟踪和记录应用程序的运行情况,
使用数据库调试功能可以查出数据访问方面可能存在的 瓶颈问题。开发人员应该清晰地认识到,调试应用程序 不是为了证明程序不存在错误,而是为了尽可能多地找 出所存在的问题,没有找到任何错误的调试是不成功的
调试。同时,调试也是件费时、费力的创造性工作。
测试
测试用于排除系统设计缺陷,比如是否实现 了某些功能。系统测试无误后,就可以将应用编 译成可执行文件用于发行了。
窗提供查看和修改对象的特定方式或者显示与对象相关
的某种信息,见图示
1.2 PowerBuilder 7.0的新特性
数据库连接新特性
1.3
工具栏
PB7.0 的开发环境
菜单画板
数据窗口画板
第二章 应用程序
创建应用程序对象 设置应用程序的属性 应用程序对象的事件 对象库搜索表 运行应用程序
应用程序对象的事件触发时机
应用程序
文件服务器和C/S的数据库操作比较
程序发出查询学号 为99090221的 信息的SQL请求 查询操作在客 户端完成 查询文件请求
文件服务器
45000名 学生 数据的 文件
45000条记录的文件
响应文 件请求 并返回 整个文 件
程序发出查询学号 为99090221的 信息的SQL请求 接收结果
查询请求
数据服务器 查询在 服务器 端进行
45000名学生 数据的文件
返回99090221的记录
分布式计算应用模式
数据库 数据库服务器 (服务层)
商业服务器 实现商业规则的组件
(中间层)
客户端应用程序 (客户层)
工作站1
工作站2
工作站n
WEB网络应用模式
Internet/Intranet 客户端 浏览器
在窗口中添加控件(2)
第四章 数据库基础及管理
数据库应用技术的发展过程 如何开发数据库应用系统 数据库结构的设计与实现 数据库管理 数据库的操作 表的定义和数据操作 表数据的处理 PB的专用接口与数据库建立连接
4.1数据库应用技术的发展过程
1、主机应用模式 2、文件服务器应用模式 3、客户服务器应用模式 4、分布式计算应用模式 5、WEB网络应用模式
主机应用模式
大型机
应用程序 数据库
按 键 信 息
终 端 字 符
终端1 终端2 终端n
文件服务器应用模式
网络文件服务器
数据库
文 件 请 求
文 件
工作站1
工作站2 应用程序
工作站n 应用程序
应用程序
客户服务器应用模式
应用程序
网络服务器
数据库
处 理 请 求
处 理 结 果 工作站n 应用程序
工作站1
工作站2 应用程序
程 继 辉
第一章 PowerBuilder 概论
PowerBuilder 7.0 简介 新特性 开发环境
1.1 PB 7.0 简介
1.1.1 PB 特性 1、支持多种操作系统 Windows、UNIX等操作平台 2、与多种数据库的连接性 Oracle、MS SQL Server Sybase SQL Server 3、丰富的开发工具 4、对Internet的强力支持
创建窗口
编写事件代码的地方
窗口事件
窗口控件属性、事件和函数
PB控件: 从行为上区分: 1 能响应用户的操作( 按钮、编辑框、列表框) 2 不能响应用户的操作(直线、矩形) 从用途上区分 1 激活动作类 2 选择项类 3 显示数据类 4 修饰类
在窗口中添加控件(1)
1.1 PB 7.0 简介
客户/服务器结构 客户(Client): 从其它计算机读取数据,处理 后将数据存 储到提供数据的计算机中。 服务器(Server): 向其它计算机提供数据的计算机
1.1 PB 7.0 简介
面向对象设计概念 (1)对象 (2)属性 (3)方法 (4)事件 (5)关联
1.1 PB 7.0 简介
系统分析和系统设计
实际上,在开发任何应用系统之前,开发人 员都必须充分了解系统需求,理解系统应该完成 的真正任务,千万不能因为赶进度而过分缩减或 忽略该阶段的工作,这一阶段的成果很大程度上 决定了项目的成败。理解了系统需求后,就进入 系统设计阶段,考虑用户界面的风格、使用何种 数据库、如何组织数据等。