数据窗口问题??

hiezxy 2002-12-31 04:16:19
我有一个数据窗口要求可以查询、修改,其中有两个表,分别为市县表和法则表
要求:
当市县被重新选择后,乡镇相应被重新根据市县的值检索。

市县:代码(包括市县和乡镇代码),名称
法则:市县代码,乡镇代码

我在一个数据窗口对象中实现了
市县代码 市县名称 对应的乡镇代码 乡镇名称等字段的窗口
现在的问题是:当市县代码改变时,如何在数据窗口控件中显示该代码对应的乡镇代码和乡镇名称??
谢谢各位
...全文
28 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
hiezxy 2003-01-02
  • 打赏
  • 举报
回复
此问题已结贴:iwithyou(革命者%为人民服务) 10分 flyhot(阳光清晨) 10分 ropriest(馆主) 70分 ice2water(大冰) 5分 bomber2001(天煞孤星) 5分
bomber2001 2003-01-01
  • 打赏
  • 举报
回复
同意馆主的请举手表决
如果大家没有其他意见
请鼓掌通过!
ice2water 2002-12-31
  • 打赏
  • 举报
回复
UP
ropriest 2002-12-31
  • 打赏
  • 举报
回复
你可以将市县代码和名称用外部数据源作一个数据窗口,显示名称,然后保存的是代码,
1、从表中取出字段市县代码、市县名称,做成没有列标题的数据窗口(用于作下拉窗口)
2、new-->tabular-->External
3、在Define Result Set窗口中输入市县代码(ColName),及类型、长度
4、next-->next-->finish
5、将窗口做成跟1一样的格式,然后将col设置为DropDownDW,将DataWindow设置为1中所作的数据窗口,设置DisPlay为名称,Data为代码。
6、在窗口中添加DataWindow控件(dw_sx),dwObject为5中所建的外部数据源窗口
7、在窗口的Open事件中写上代码
DataWindowChild dwc
If dw_sx.GetChild("ColName",dwc) > 0 Then //ColName为市县代码
dwc.SetTransObject(SQLCA)
dwc.Retrieve()
dw_sx.InsertRow(0)
End If

这样在打开窗口时,就可以从市县表中检索出市县的数据,显示的是市县名称。
8、再定义一个变量,用来传递参数给检索乡镇的数据窗口(如:dw_xz,建立时,设置Argument为市县代码)
String is_sxdm //可能别的地方要用,故定义一个全局的
9、dw_sx的ItemChanged中,
is_sxdm = String(data) 或 is_sxdm = data
dw_xz.Retrieve(is_sxdm)

注意如果市县代码数据窗口中的数据出不来,则在设计外部数据源的窗口中,Preview时,InsertRow,然后save就可以了!
hiezxy 2002-12-31
  • 打赏
  • 举报
回复
能不能说的具体点啊??谢谢了?
ropriest 2002-12-31
  • 打赏
  • 举报
回复
可以将市县代码和名称做成外部数据源的下拉数据窗口
选择相应的市县代码的时候,获取相应的字段值,然后让数据窗口根据所获取的值检索就行了。

如果将两种作在一个数据窗口的话,
可以在dw_1的ItemChanged事件中,定义变量,获取市县代码字段的值,然后将乡镇代码字段作成DropDownDW的形式,再让该字段获取dwo的数据窗口,然后让该子窗口根据获取的市县代码检索数据即可。
flyhot 2002-12-31
  • 打赏
  • 举报
回复
负值加个变量即可!
iwithyou 2002-12-31
  • 打赏
  • 举报
回复
select查询出来,再setitem到列。
有一对多的则做个游标提取。

611

社区成员

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

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