PowerBuilder脚本访问数据窗口数据的方法

版权申诉
0 下载量 103 浏览量 更新于2024-08-11 收藏 40KB DOC 举报
"本文档详细介绍了如何在PowerScript脚本中访问PowerBuilder数据窗口对象中的数据,包括传统的SetItem和GetItem函数以及5.0版本引入的表达式方法。" 在PowerBuilder应用开发中,数据窗口(Data Window)是用于显示和操作数据库数据的重要组件。在早期版本如4.0之前,开发者需要依赖SetItem和GetItem系列函数来读取或设置数据窗口内的数据。例如,`dw_1.SetItem(1,"empname","Phillips")`用来设置第一行的"empname"列的值为"Phillips",而`ls_name=dw_1.GetItemString(1,"empname")`则用于获取这一值。 然而,从5.0版本开始,PowerBuilder引入了新的特性,允许开发者直接通过对象的属性来访问数据窗口中的数据。这使得数据窗口的数据成为了一个可以直接访问的对象属性。例如,`dw_1.Object.empname[1]="Phillips"`和`dw_1.Object.Data[1,1]="Phillips"`都是用表达式方式设置数据的方式,前者指定列名,后者指定行列位置。 这两种方法各有优缺点。对于访问单个数值,它们的执行效率相差不大。如果列名需要动态设定或者依赖于用户输入,那么SetItem/GetItem函数更适用。若需访问多行多列数据,表达式方法则更为高效。 表达式方法的语法复杂且多样,但能更好地体现面向对象特性,使得代码更直观。它分为三类: 1. 直接指定列名称法:适用于已知列名并只访问单列的情况,如`dwcontrol.object.columnname[index]`。 2. 记录选择法:用于访问控件中的一条或多条记录。 3. 更复杂的语法结构,可以处理更复杂的访问需求,如指定特定的数据缓冲区,获取原始值、过滤值、删除值或当前值。 选择哪种方法取决于具体的应用场景和性能需求。理解这两种方法的用法和差异对于高效开发PowerBuilder应用程序至关重要。