Developer Express Inc公司的DBtreelist和DBTREEview讨论(使用过的大虾请进,300分讨论)(300分)

  • 主题发起人 主题发起人 kai
  • 开始时间 开始时间
K

kai

Unregistered / Unconfirmed
GUEST, unregistred user!
Developer Express Inc公司的DBtreelist和DBTREEview
默认需要数据表的keyfield字段具有唯一性,但实际的数据事实上是无法做到上述要求的
例如:
parentfield keyfield
01 001
001 0011
01 002
002 0011


这个父子结构表如果数据比较多,在这两个控件中就会出问题,
特别是在用树节点拖动时出错,
不知大家用过没有,有没有解决办法??
 
我也碰到过如此问题!
不过我也不知道怎么解决!
 
id pid
1 -1
2 1
3 1
4 2
5 3
6 4
 
parentfield keyfield
01 001
001 0011
01 002
002 0011
上面的这种形式是不对的。
父ID(parentfield)一定是唯一的,父子是一对多的关系。一个父可以有多个子,一个子只对应一个父。
所以整个TreeList就象是一个树型结构。

 
它自带的例子怎么样?也有类似的情况发生吗?
 
我也用过它做树型,可是没有出现,你说的问题~!
 
to 双流星:
默认需要数据表的keyfield字段具有唯一性,你的程序中keyfield字段一定是唯一的值,
不信你改成有重复值试试看。
 
你的Keyfield不唯一,
parentfield keyfield
01 001
01 002
001 0011
001 0012
而且拖动时其parentfield会自动变换,keyfield要手工改过来
 
很明显,你的数据逻辑有问题
dbTreeview没问题
散分吧
 
我就是问为什么默认需要数据表的keyfield字段具有唯一性,
也真不知道我的数据逻辑有什么问题,keyfield字段不唯一就是数据逻辑有问题?
在ERP系统中,相同的子件会在不同的父件中出现是非常正常的。
试想:同一种螺栓在汽车上仅仅只有一个部件会用到吗
 
你想在数据库中Key不具有唯一性,还能称为Key吗
 
同意ugvanxk
不过这两个控件确实有问题,如果用在BDE连接的数据库上没有什么问题,如果你要是用在
基于ADO连接的数据库呢?问题就出来了,就是在树的更新上问题 就发生了,如你添加一个
节点或删除一个节点的时候会更新出错的,我用时就碰到这个问题。
 
你如果刷新有问题,就用locate或者bookmark
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
609
import
I
I
回复
0
查看
581
import
I
I
回复
0
查看
634
import
I
后退
顶部