简单的问题,好解决,请帮忙!(100分)

锤子

Unregistered / Unconfirmed
GUEST, unregistred user!
基本信息:D6,SQL7 控件:ADOTABLE 和 ADOQUERY
两个表:A,B 都有 代码 和 名称 字段。在表A的代码和名称中输入数据,正常。
想达到的功能:在利用EDIT或DBEDIT向表B中输入数据是,只添加代码,要求在EDIT2中
自动显示名称,(数据由表A中得到),怎么写呢?多谢了!
 
直接用dblookupcombox
datasource1 :select id,name from a
listsource datasource1
listfield;name
keyfield:name
dblookupcombox.keyvalue:=feildbyname('name').asstring
 
我的意思是表B的数据自动从表A中获得,(只在表B中输入代码)
 
function GetName(val:integer):String;
begin
With ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('SELECT 名称 from A');
SQL.Add('where 代码=:p1');
Parameters[0].Value:=val;
Prepare;
Open;
if Fields[0].isnull then
Result:=''
else
Result:=Fields[0].AsString;
end;
end;
 
响应EDIT1控件的EXIT或CHANGE事件。
 
同意楼上,不过最好在exit事件
然后通过edit1的代码来查询到相对应的名称
adoquery1.locate(field,value,[])
 
多人接受答案了。
 
顶部