如何在dwwindowchild中retrieve相关的记录

daimei 2002-12-26 01:30:51
在一datawin(dw_record_item)中,有rec_name(项目)和item_name(选项)两个字段。item_name设dropdownDW,其关联datawin(dw_item)有item_id和item_name两个字段。如何做到相关项目旁边的选项内跳出的是相关项目的选项。
若在dw_item中设retrieve arguments,则一open窗口,就要求输入要retrieve的参数,如何屏蔽?
...全文
60 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
th820901 2003-01-03
  • 打赏
  • 举报
回复
唉,去过了
th820901 2003-01-03
  • 打赏
  • 举报
回复
先UP再看!
daimei 2003-01-02
  • 打赏
  • 举报
回复
大家再帮忙看这个帖子,解决了,高分相报!
http://expert.csdn.net/Expert/topic/1319/1319054.xml?temp=.881695
jdsnhan 2003-01-01
  • 打赏
  • 举报
回复
只要把相关检索条件写进去就可以了,不过要注意先是子,后是父
txchen 2003-01-01
  • 打赏
  • 举报
回复
up
jeking 2002-12-31
  • 打赏
  • 举报
回复
第一个问题方法有好多,介绍一个。,两个字段使用相同的数据子窗口
itemchanged 中
datawindowchild ldwc_model
string item_name
if dwo.name = "rec_name" then
this.getchild("rec_name",ldwc_model)
item_name = ldwc_model.object.item_name[ldwc_model.getrow()]
//通过取得的信息,用sql语句获得要的信息。
//通过setitem,或.object.cloumn[]直接赋值。
end if

//完毕
第二个问题。
retrieve参数不能屏蔽,可以动态修改sql语句。或添入'%'(前提是表达式用的是 like 而不是 = )
shuyf2000 2002-12-31
  • 打赏
  • 举报
回复
以上的方法是给数据窗口默认新增一条空记录,所以它在OPEN事件后不会自动弹出检索参数,但,在OPEN后要用得到子数据窗口等方法检索出 确实需要的下拉数据窗口中的记录。
shuyf2000 2002-12-31
  • 打赏
  • 举报
回复
解决:
若在dw_item中设retrieve arguments,则一open窗口,就要求输入要retrieve的参数,如何屏蔽?


用如下方法:(记住是设置你的下拉数据窗口对象,下面的方法一定可以)
PB65
打开 row 菜单下的 Data...
出现窗口后,按 ADD按钮和OK按钮
问题解决了。///////////////////////////

PB80,其实是一样的,就是PB80的话,在它的组合工作窗口中就有Data这一页,方法和PB65的差不多,也是在Data(默认在窗口的下面有Data(后面是数据窗口的名称 ) )中右键,选择append row ,保存数据窗口就可以了。

以上方法是一定可以的,而且最方便。
bomber2001 2002-12-31
  • 打赏
  • 举报
回复
同意同意!!

大家鼓掌通过
daimei 2002-12-30
  • 打赏
  • 举报
回复
up
iwithyou 2002-12-26
  • 打赏
  • 举报
回复
可以用dw.setfilter()。这样不用预置参数。
dwc.setfilter("id='"+n_id+"'")
linjwa 2002-12-26
  • 打赏
  • 举报
回复
动态设置SQL语句,如下:
datawindowchild ldwc2
datawindowchild ldwc3
datawindowchild ldwc_model

this.accepttext()
if dwo.name = "vw_type_type1" then//一级分类的字段
s_type1 = data
this.getchild("vw_type_type2",ldwc2)//二级分类的字段
this.setitem(this.getrow(),"vw_type_type2","")
s_sql="Select distinct type2,type2_code From vw_type Where type1_code = "+"'"+s_type1+"'"
ldwc2.settransobject(sqlca)
ldwc2.SetSQLSelect(s_sql)
ldwc2.retrieve()
end if
我一直在用.

611

社区成员

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

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