grid型数据窗口中怎样实现下拉数据窗口动态过滤检索?

pb2000 2010-11-27 03:00:15
我做了个数据窗口是grid型的,结构如下所示:

商品大类 商品小类 商品名称

商品大类,商品小类都是显示名称,但绑定的代码值。商品大类象这样:a 灯具 b 开关;
商品小类象这样:a01 台灯 a02吊灯,b01 一控开关 b02 双控开关

在数据窗口中的itemchanged事件中写入了如下代码:

if dwo.name='spdl_dm' then
datawindowchild dwc_1
dw_1.setitem(row,'spxl_dm','')
if dw_1.getchild("spxl_dm",dwc_1)<>1 then
messagebox("错误信息:",sqlca.sqlerrtext)
return 0
else
dwc_1.settransobject(sqlca)
dwc_1.retrieve(data)
end if

end if

输入第一行数据时没问题,输入第二行数据点击商品大类时,发现上面的一行数据也跟着过滤检索了,如何能根据每一行的商品大类检索出小类,而不影响以前的过滤检索结果?
...全文
113 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
pb2000 2010-11-28
  • 打赏
  • 举报
回复
我自定义的ID为pbm_dwndropdown的事件ue_dwn并写入以下脚本,但现象和以前一样:

dw_1.accepttext()
string ls_col,ls_spdl_dm
ls_col=getcolumnname()
if ls_col='spdl_dm' then
datawindowchild ldwc_child
long ll_row
ll_row=dw_1.getrow()
ls_spdl_dm=dw_1.getitemstring(ll_row,'spdl_dm')
// dw_1.setitem(ll_row,'spxl_dm','')
if dw_1.getchild("spxl_dm", ldwc_child)<>1 then
messagebox("错误信息:",sqlca.sqlerrtext)
return 0
else
ldwc_child.settransobject(sqlca)
ldwc_child.retrieve(ls_spdl_dm)
end if
end if
wuxun8234 2010-11-28
  • 打赏
  • 举报
回复
不要写到ItemChanged事件中,新增自定义事件,事件ID为pbm_dwndropdown,该事件在点击下拉列时触发
cqwally 2010-11-27
  • 打赏
  • 举报
回复
请问2楼的,测试过没有?是否确实有效?
l_8_l 2010-11-27
  • 打赏
  • 举报
回复
不要写到ItemChanged事件中,新增自定义事件,事件ID为pbm_dwndropdown,该事件在点击下拉列时触发
wag_enu 2010-11-27
  • 打赏
  • 举报
回复
这种情况还是考虑不使用dddw 吧.

609

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧