首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

datawindow从DropDownListBox取值显示相关信息的有关问题

2013-02-17 
datawindow从DropDownListBox取值显示相关信息的问题假设我现在有张数据表namepointida89123b90234c87345

datawindow从DropDownListBox取值显示相关信息的问题
假设我现在有张数据表
name   point    id
a       89       123
b       90       234
c        87      345
设置了一个dropdownlistbox控件,以name字段为查询基础,现在我想挡在dbl控件选择a时,点击"查询"按钮
时,dw_1只显示有关a的信息,而b和c不显示,请问“查询”按钮的脚本语言该怎么写??
[解决办法]
ddlb_1是下拉列表控件
dw_1是datawindow

string ls_filter

ls_filter = trim(ddlb_1.text)

if isnull(ls_filter) or ls_filter = '' then
   
else
    dw_1.setredraw(false)
    dw_1.setfilter('')
    dw_1.filter()
    dw_1.setfilter("name = '" + ls_filter + "'")
    dw_1.filter()
    dw_1.setredraw(true) 
end if


[解决办法]
1.先retrieve(),然后过滤
ddlb_1是下拉列表控件
dw_1是datawindow

string ls_filter

ls_filter = trim(ddlb_1.text)

if isnull(ls_filter) or ls_filter = '' then
   
else
    dw_1.setredraw(false)
    dw_1.setfilter('')
    dw_1.filter()
    dw_1.retrieve()
    dw_1.setfilter("name = '" + ls_filter + "'")
    dw_1.filter()
    dw_1.setredraw(true) 
end if

2.改变sql 的条件,直接retrieve()
设一个实例变量
is_sql_old
window的open事件里

is_sql_old =  dw_1.getsqlselect() //获取原始的sql语句

查询按钮里

string ls_filter,ls_sql

ls_filter = trim(ddlb_1.text)

ls_sql = is_sql_old
if isnull(ls_filter) or ls_filter = '' then   
else   
    .....拼接sql语句,把" and name = '" + ls_filter + "'",加入到ls_sql变量接收
    的sql语句中,这要看实际的sql语句
end if

dw_1.setsqlselect(ls_sql)  //datawindow更新为新的sql语句
dw_1.settransobject(sqlca)
dw_1.retrieve()




热点排行