根据输入的字符模糊过滤下拉窗口的数据,该怎么解决
根据输入的字符模糊过滤下拉窗口的数据
在一个数据窗口里,有一列是dddw类型的,在这列上是可编辑的,用户输入字符,下拉窗口打开,根据用户输入的字符动态过滤下拉数据窗口的数据,并根据用户是否选择或者下拉列表有没有这个用户输入的字符来验证这列的数据是否合法
------解决方案--------------------
long llrow
string ls_data,ls_str
this.accepttext()
choose case dwo.name
case "client_code"
if dw_grid.getchild("client_code",iddw_client) > 0 then
iddw_client.settransobject(sqlca)
iddw_client.retrieve()
end if
if data="" or isnull(data) then
iddw_client.setfilter("2>1")
iddw_client.filter()
end if
ls_data = "%" + trim(data) + "%"
if ((isnull(ls_data)) or (ls_data = "%%")) then
ls_data = "%"
end if
ls_str = "lower(client_code+client_name+zj_code) like '" + lower(ls_data) +"'"
iddw_client.setfilter(ls_str)
iddw_client.filter()
end choose
我是在editchanged事件里这么做的
------解决方案--------------------
下拉数据窗口动态增量查询http://download.****.net/source/2952159
只需要在此例上做一个判断即可(判断子数据窗口的行数)
------解决方案--------------------
用getchild得到下拉数据窗对象,然后retrieve不就行了~
------解决方案--------------------
帮顶!!!!
在一个数据窗口里,有一列是dddw类型的,在这列上是可编辑的,用户输入字符,下拉窗口打开,根据用户输入的字符动态过滤下拉数据窗口的数据,并根据用户是否选择或者下拉列表有没有这个用户输入的字符来验证这列的数据是否合法
------解决方案--------------------
long llrow
string ls_data,ls_str
this.accepttext()
choose case dwo.name
case "client_code"
if dw_grid.getchild("client_code",iddw_client) > 0 then
iddw_client.settransobject(sqlca)
iddw_client.retrieve()
end if
if data="" or isnull(data) then
iddw_client.setfilter("2>1")
iddw_client.filter()
end if
ls_data = "%" + trim(data) + "%"
if ((isnull(ls_data)) or (ls_data = "%%")) then
ls_data = "%"
end if
ls_str = "lower(client_code+client_name+zj_code) like '" + lower(ls_data) +"'"
iddw_client.setfilter(ls_str)
iddw_client.filter()
end choose
我是在editchanged事件里这么做的
------解决方案--------------------
下拉数据窗口动态增量查询http://download.****.net/source/2952159
只需要在此例上做一个判断即可(判断子数据窗口的行数)
------解决方案--------------------
用getchild得到下拉数据窗对象,然后retrieve不就行了~
------解决方案--------------------
帮顶!!!!