• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: 小 中 大 | 推荐给好友 上一篇 | 下一篇

浅谈PB使用心得(一)(原创)

发布: 2007-7-02 11:08 | 作者: admin | 来源: | 查看: 36次 | 进入软件测试论坛讨论

领测软件测试网
浅谈PB使用心得(一)(原创)

作者:BALLOONMAN2002  2004年6月26日

本文拟结合POWERBUILDER语言,浅谈自己使用PB开发过程中的一些心得,这些算不上巧妙方法,重点侧重一些基础性知识和易忽视点归纳整理:

一、如何用好PB帮助

很多新学PB的朋友总是希望能够找到好的PB教程,其实我觉得PB自带的PB帮助就是最好的在线PB教程,它系统、全面的涵盖了PB从变量声明、语句编写、各类函数、各类对象、内置控件、DWO详解、数据接口到PFC深层应用的各个方面,不仅分类清晰,而且说明到位、用例典型。另外,本身的索引功能也非常详实,唯一不足的就是无法象MSDN一样可以全文检索。但这丝毫不会影响其作为最经典的PB教程的事实,我个人强烈建议新学PB的朋友能够从头开始好好了解一下PB帮助,:),本文中所描述的内容也只是将PB帮助中的一些零散知识整理起来,详细的资料可以进一步查阅相关帮助内容。

此外,PB自带的DWSyntax、Code Examples也是非常好的案头工具。

二、如何动态修改DATAWINDOW OBJECT的数据源

(一)通过GETSQLSELECT、SETSQLSELECT函数实现

dwcontrol.GetSQLSelect ( )

dwcontrol.SetSQLSelect ( statement )

说明:这种情况下要求新旧SELECT出来的结果列要求一致,并且SELECT语句不能有RETRIEVE ARGUMENTS。

(二)通过dw_control.Object.DataWindow.Table.Select属性实现

sqlvar = @#SELECT ... WHERE ...@#

dw_1.Modify("DataWindow.Table.Select=@#" + sqlvar + "@#")

说明:这种情况下可以使用RETRIEVE ARGUMENTS,但必须要求只能使用原来已定义的ARGUMENTS。

(三)通过CREATE函数重构DATAWINDOW来实现

dwcontrol.Create ( syntax {, errorbuffer } )

这其中的SYNTAX语法可以通过以下四种方式获取:

1、setting = dw_1.Object.DataWindow.Syntax

setting = dw_1.Describe("DataWindow.Syntax")

2、LibraryExport ( libraryname, objectname, objecttype )

3、transaction.SyntaxFromSQL ( sqlselect, presentation, err )

4、自己组合拼装SYNTAX,但这种要求开发者非常熟悉DWO对象语法

(四)通过SETFILTER函数过滤部分数据来实现

dwcontrol.SetFilter ( format )

这种方法其实是一种间接达到目的的方法。

(五)通过处理SQLPREVIEW事件来实现

这种方法也是一种间接达到目的的方法,它通过改变SQLPREVIEW事件中的sqlsyntax参数来实现修改数据源。

三、常见错误处理检测方法

(一)对于因SQL语句操作引起的错误,通常借助:SQLCA.SQLCODE或Indicator Variables来检测:

SQLCA.SQLCODE:

Value   Meaning

0   Success

100 Fetched row not found

-1  Error; the statement failed. Use SQLErrText or SQLDBCode to obtain the detail.

Indicator Variables:

 0  Valid, non-NULL value

-1  NULL value

-2  Conversion error

(二)对于其他系统错误,需要处理ERROR、DBERROR、ITEMERROR、SYSTEMERROR等事件,如果是PB9可以借助:TRY...CATCH...FINALLY...END TRY语句

………

本文未完待续

………

如需要进一步资料,请联系QQ:27855043,MSN:[email protected]

如有不当之处,敬盼您的指点。

 

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:[email protected] 电话:010-51297073

软件测试 | 领测国际 | ISTQB | ISTQB官网 | TMMi | TMMi认证 | 国际软件测试工程师认证 | 领测软件测试网