高手请进,有个关于Master/Detail表的问题。比较难的。(200分)

  • 主题发起人 主题发起人 LeonSun
  • 开始时间 开始时间
L

LeonSun

Unregistered / Unconfirmed
GUEST, unregistred user!
我用MIDAS做个网络的MIS。后台是Oracle for NT。用DCOM连接。运行正常。
但是,我想有两个表之间有Master/detail的关系。就在客户端这边的ClientDateSet
控件上进行进行Master/detail的设置,没想到它告诉我can't find object.去掉这个
约束就没事情。说明一定是这个设置的问题。
1。工在oracle 上设了index 没用。
2。手工在客户端ClientDataSet上index上设置,没用。
实在是没有办法。但是不透过MDIAS,直接连接数据库,没有问题,随便设置M/D。
谁有办法?
200分酬谢!!!
 
另外,我用的是Query控件和Provider提供的数据端口。
 
你是使用以前的方法,设置字段对应关系吗?
在使用ClientDataSet处理Master/Detail关系时,还是将这种关系在服务断设置好,然后
以一个Packet传递到客户断,客户端的Detail ClientdataSet 的DataField属性设置为数据
字段。
参考$(delphi)/Demos/Midas/mstrdtl 下的例子,那说的很清楚。
 
Delphi自已那一套Master/Detail的方法在實際應用中有問題﹐還是自己手工處理吧
在主檔的滾動事件中把參數傳給從檔,來抓取資料
 
在应用程序服务器端设Master/Detail。如果在服务器端用的是QUERY。设置关系为: 加一个 datasource 指向query主
Query从指向DataSource ,最后加Provider,其指向Query1。
客户端设置为Datasetclient主 指向服务器端的Provider,并加入所有字段;
Datasetclient从 中的DataField 属性设置为从的query字段。
我只讲了主要设置部份。其它的 相信大家都知道。
 
流星雨先生的解答是非常高明的办法。谢谢。同时,lllyj大侠的也不错。但在我的应用中。
前者是最好的办法了。
谢谢各位的关注!
 
对于子表有大量记录的话,服务端的主从关系方式就存在极大问题。客户端的子表Tclientdataset.open
将其慢无比,因为它把所有数据一次性取过来了。
 
流星雨所说得没错,这是设主从表的一种方法,从表作为主表的一个字段。
 
我在用BCB5做多层结构系统时,我在Server端加入了一个取得服务器IP地址的方法:GetServerIP它的参数是vIP:Variant *,IN方式,并在服务端实现了这个方法,
加入的代码如下:
*vIP="192.168.0.01";最后我注册成功。
可是在我开发客户端程序时,我用TSocketConnection
当取得它的服务时我是这样做的:
Variant* vip;
SocketConnection1->AppServer.GetServerIP(vip);
Edit1->Tex=vip;
可 是我在运行程序时出错,没有编译通过。
它说getserverIP不是variant的成员
getserverIP is not a memober of variant
请问?
我该如何去调用这个方法呢?
请各位大侠多多指教?
小生的QQ:65466700(24小时在线恭候)
MAIL: alongsun@sina.com
 
我也碰到这类问题,出现这问题提示只有两种可能:要吗你的两个表没有主从关联,要吗
你在设置master/detail时所用的连接字段不是原数据库里所设的连接字段。[:)][:)]
 
不好意思.忘了给分了.谢谢各位帮助
 
后退
顶部