PB笔记之调用数据窗口时的过滤条件添加方式


在PB查询数据窗口的数据时

通常可以有两种方式

一是在数据窗口事先写好查询条件,然后用retrieve()函数通过参数传递给数据窗口

这种方式适合查询条件较为简单,条件数较少的数据窗口

二是使用SetSqlSelect()函数传递一个SQL查询语句

使用第二种方式更为灵活,可以查询约束条件更加复杂的数据,如果使用ORACLE数据库 则可配合ORACLE函数处理一些更为复杂的查询条件
 

1、使用 setsqlselect 

ls_sql1=dw_1.getsqlselect()

ls_sql1 = is_sql +" A.FNAME='张三' "

tab_1.tabpage_1.dw_1.setsqlselect( ls_sql1)

tab_1.tabpage_1.dw_1.event retrieve()
 

2、

直接在 retrieve事件中添加参数

String endtime
String starttime

Integer v_checked

endtime=String(em_end.text)
starttime=String(em_start.text)


v_checked=1
if not cbx_1.checked then v_checked=0

dw_1.retrieve(starttime,endtime,v_checked)

 

////////////////////////////////////////pb中数据窗口filter函数和retrieve函数的区别和联系/////////////////////////////////////////////////////////////////////

retrieve():按条件从数据库来中筛选数据,显示到数据库窗口中。
filter():对数据库窗口中的数据库进行筛选,显示或隐藏数据。

区别在于源,retrieve()筛选的是数据库中的数据,filter()筛选的是已经显zhidao示在数据库窗口中的数据。

filter() 使用:

file_string='列名=值'

dw_1.setredraw( false) //抑制重画
dw_1.setfilter(file_string) //设置条件
dw_1.filter() //执行
dw_1.setredraw( true)  //允许重画
dw_1.scrolltorow( 1) //跳到指定行

retrieve() 使用:

this.retrieve(参数) 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM