在三层结构中使用LOOKUP的问题(200分)

  • 主题发起人 主题发起人 yyjj
  • 开始时间 开始时间
Y

yyjj

Unregistered / Unconfirmed
GUEST, unregistred user!
在用tclientdataset中用lookup查询另外一个TCLIENTDATASET的数据,在浏览时一切正常,
在插入新数据时,LOOKUP字段似乎没有作用,没有根据新输入的数据查询出对应的数据,但是
当将主clientdataset,post和applyupdate后重新refresh,数据就又出来了。
希望能够在输入的过程中,一输入关键字段数据,lookup字段就将相关数据显示出来。原来
在C/S方式下就没问题。
 
呵呵,这样当然是不能lookup的,当你浏览数据的时候,其实系统自动的吧对应字段的连接
内容给Retrieve过来了,你输入的时候没有Retrieve过,这样就不能自动查询出对应的数据
乐。我现在做项目用的是PB,也有这个问题,我只能通过程序来查询对应的数据然后再显示
出来。
 
有两种解决方法:
1、在插入记录时做一个存储过程,进行存储转换;
2、做一段代码将此字段转换存储(在中间层);
 
to lostinwind:
请讲具体点
 
几个建议:
1.用公文包的形式,将LOOKUP所涉及的基表当到本地,提交时只提交输入数据即可。
2.输入新数据时将数据及时传送给SERVER,通过SERVER的过程取得相应信息再返回。因为
只有一条记录,速度应该不是问题。
 
我在用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
 
后退
顶部