请教:还是子数据窗口问题?

sunlijun 2003-09-13 08:45:38
数据窗口有三列下拉子数据窗口:一级项目 二级项目 三级项目,三个子数据窗口
显示值都是项目名称,数据值是项目编号。

我想把一级项目的值作为二级项目的检索参数,把二级项目的值作为三级项目的检索参数,根据各位的热心帮助已经实现,代码如下:

在窗口中设实例变量:
datawindowchild idwc_col2,idwc_col3

数据窗口constructor事件:
this.getchild('ejxiangmu',idwc_col2)
idwc_col2.settransobject(sqlca)
idwc_col2.insertrow(0)
this.getchild('sjxiangmu',idwc_col3)
idwc_col3.settransobject(sqlca)
idwc_col3.insertrow(0)

数据窗口itemchanged事件:
choose case dwo.name
case 'yjxiangmu'
if idwc_col2.retrieve(data) = 0 then idwc_col2.insertrow(0)
this.object.ejxiangmu[row] = ''
this.object.ejxiangmu[row] = ''
case 'ejxiangmu'
if idwc_col3.retrieve(data) = 0 then idwc_col3.insertrow(0)
this.object.sjxiangmu[row] = ''
end choose

但现在又有新问题出来了,但新增一条记录时,二级项目和三级项目显示的是
项目名称,但保存以后显示的是项目编号!我希望显示的都是项目名称!
请各位老师帮忙看一下!

...全文
71 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunlijun 2003-09-22
  • 打赏
  • 举报
回复
看来是结不了贴了!
sunlijun 2003-09-18
  • 打赏
  • 举报
回复
各位高手帮帮忙吧!
starg 2003-09-15
  • 打赏
  • 举报
回复
请问:你的datawindow的显示风格,子数据窗口的dataobject是如何设置的?
yingmu 2003-09-13
  • 打赏
  • 举报
回复
这个问题我也遇到过,当时我的错误原因是这样的:一般说来在设计库表时,编号一般都用整型,而内容一般都用字符型(char),而字符型在设计时就确定了其长度,而当你输入一字符串时一般都不能全部占满其设计长度,这样数据库就自动在后面给你加了空格(sqlserver是这样的),这样一来此字段的实际内容就与你想要的内容不符了,这样在用子数据窗口时就可能会出现问题。因此建议在设计库表时要用到字符型字段时要尽量用varchar类型就不会出现问题了。如果类型不好改,建议用二级子数据窗口。这是我遇到过的问题,不知是否和你的一样。
xisat 2003-09-13
  • 打赏
  • 举报
回复
同意楼上...

你保存的时候还对这个dw做了什么操作??
allima 2003-09-13
  • 打赏
  • 举报
回复
保存以后重新写
this.getchild('ejxiangmu',idwc_col2)
idwc_col2.settransobject(sqlca)
this.getchild('sjxiangmu',idwc_col3)
idwc_col3.settransobject(sqlca)
让自数据窗口重新连事务

<DW Control Name>.Object.<Columnname>.DDDW.DataColumn='<column in dddw that determines underlying data value when an item is selected>'
<DW Control Name>.Object.<Columnname>.DDDW.DisplayColumn='<column in dddw that determines text which is displayed when an item is selected>'
klbt 2003-09-13
  • 打赏
  • 举报
回复
数据窗口只有三列?
建议增加几列,用于显示各级项目名称。
ropriest 2003-09-13
  • 打赏
  • 举报
回复
的确是个老问题,呵呵
eastpond 2003-09-13
  • 打赏
  • 举报
回复
这个问题我一直没有解决,
没办法帮你了
期待高手。。。。。。

要不就直接在数据库中存放名称,不要存放代码.
sunlijun 2003-09-13
  • 打赏
  • 举报
回复
按allima说的做了也不行!
sunlijun 2003-09-13
  • 打赏
  • 举报
回复
我用的是oracle8.1.6,项目名称数据类型是VARCHAR2!

1,075

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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