关于在三层下主从表的删除问题(增加,保存,放弃等均正常) |
尚未結案
|
hjkl
一般會員 發表:2 回覆:1 積分:0 註冊:2003-06-18 發送簡訊給我 |
请教各位朋友: 我用delphi6做了个三层主从表, 用的ado access2000 sockconnetion 我把设置说一下:
上面我说的销售发票主表与从表的关系。
是用了同一个字段xsdid
在server中,
用了 datasetprovidexsdtb->adoqueryxsdtb.sql:=select * from xsdzb
datasourcexsd-> adoqueryxsdtb
adoqueryxsdzb.datasource->datasourcexsd
adoqueryxsdzb.sql:=select * from xsdzb where xsdid =:xsdid
adoqueryxsdtb.sql:=select * from xsdtb 在client中,
clientdatasetxsdtb.remoteserver:=.SocketConnection1
clientdatasetxsdtb.providename:=datasetprovidexsdtb
clientdatasetxsdzb.datasetfield:=ClientDataSetxsdtbADOQueryxsdzb (是选择出来的)
datasourcexsdtb->clientdatasetxsdtb
datasourcexsdzb->clientdatasetxsdzb 在开票中,(要增加子表的行数时,)
DM.clientdatasetxsdzb.insert;
DM.clientdatasetxsdzb.fieldbyname('chid').value := clbmRec[i].chid;
DM.clientdatasetxsdzb.fieldbyname('chname').value := clbmRec[i].chname;
DM.clientdatasetxsdzb.fieldbyname('ggxh').value := clbmRec[i].ggxh;
DM.clientdatasetxsdzb.fieldbyname('jldw').value := clbmRec[i].jldw;
DM.clientdatasetxsdzb.fieldbyname('xsdid').value := DM.clientdatasetxsdtb.fieldbyname('xsdid').value; DM.clientdatasetxsdzb.post; 现在发票的主表与子表的增加,保存,修改,放弃均正常了,但是删除不正常。 发票的删除时,语句是这样写的: if application.messagebox('请确认是否要删除', '销售系统', mb_iconinformation mb_yesno) = idyes then
begin
DM.ClientDataSetxsdtb.delete;//到这句就报错 从表已作为主表的一个字段了,删除主表时从表应自动删除了呀,
DM.ClientDataSetxsdtb.applyupdates(0);
end; 提示错误:
cannot delete master record with details.
是什么原因呢?
| ||
jieshu
版主 發表:42 回覆:894 積分:745 註冊:2002-04-15 發送簡訊給我 |
引言: 提示错误: cannot delete master record with details. 是什么原因呢?可能是不會自己刪除明細的資料,所以還有明細不能刪除主檔紀錄!
------
人生有夢,逐夢而行 人若為善,福雖未至,禍已遠離 人若為惡,禍雖未至,福已遠離 http://www.taconet.com.tw/jieshu/ |
||
hjkl
一般會員 發表:2 回覆:1 積分:0 註冊:2003-06-18 發送簡訊給我 |
|||
Ktop_Robot
站務副站長 發表:0 回覆:3511 積分:0 註冊:2007-04-17 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |