PB中Datawindow函数Retrieve()详解

函数作用:为DataWindow或者Datastore检索数据。在使用该函数之前应该执行过函数SetTransObject或者SetTrans,为数据窗口设置过事务对象。该函数执行之前,首先将数据窗口中已有的数据清除掉,然后将数据库中的数据检索到数据窗口中。所以,如果希望将检索到的数据追加到数据窗口中,需要编写程序。在数据窗口对象的RetrieveStart事件中返回2,即可防止清除掉数据窗口中的已有数据。
函数语法:long dwcontrol.Retrieve ( { any argument, any argument . . . } )
ldwcontrol:数据窗口、DataStore或者下拉子数据窗口。
largument:可选参数,根据数据窗口对象中的定义而定。参数的个数和数据类型应该和数据窗口对象中的定义保持一致。
返 回 值:数字类型,表示函数执行完之后数据窗口中显示出来的数据行数。注意,该返回值不表示检索到的数据行数。有两点,RetrieveStart中是否编写了脚本、数据窗口对象定义中是否指定了过滤规则。如果数据窗口对象中定义了过滤规则,检索完成后自动将不符合过滤规则的数据移动到数据窗口的Filter缓冲区中,函数的返回值则是检索到的总数据行数扣除移动到Filter缓冲区的数据行数。需要注意的是,只有数据窗口对象中定义的过滤规则影响Retrieve函数的返回值,函数SetFilter和Filter并不影响。
代码实例:
例1:下面的程序根据Retrieve函数的返回值显示提示信息。
long ll_rows

dw_main.SetTransObject(SQLCA)
ll_rows = dw_main.Retrieve()
IF ll_rows < 1 THEN MessageBox("错误","没有检索到数据。")
例2:带参数的检索。
数据窗口对象的SQL语句如下:
SELECT Name, emp.sal, sales.rgn From Employee, Sales
WHERE emp.sal > :an_Salary and sales.rgn = :as_Region
其中,an_Salary和as_Region为检索参数,分别为数值型和字符型。可以使用下面的语法检索数据:
dw_1.Retrieve(50000, "NW")

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值