难道子表不能修改程序运行时,可从程序中看到已经修改,但是退出后在启动又恢复了
何解?????????????????for i := 1 to jf.StringGrid1.RowCount-1 do
begin
zlink.ADOTableJF.Locate('收费名称',jf.StringGrid1.Cells[2,i],[]);
zlink.ADOTableJF.edit;
zlink.ADOTableJF.FieldByName('缴费时间').AsDateTime:= now;
zlink.ADOTableJF.FieldByName('滞纳金').AsFloat:= strtofloat(jf.StringGrid1.Cells[11,i]);
zlink.ADOTableJF.FieldByName('应缴金额').AsFloat:= strtofloat(jf.StringGrid1.Cells[12,i]);
zlink.ADOTableJF.FieldByName('实收金额').AsFloat:= strtofloat(edit1.text);
zlink.ADOTableJF.FieldByName('收费状态').AsString:= '已缴费' ;
zlink.ADOTableJF.FieldByName('收银员').Asstring:= zuser;
zlink.ADOTableJF.UpdateBatch;
end;
showmessage('已经保存');
close;
zlink.ADOTableJF 是一个子表
何解?????????????????for i := 1 to jf.StringGrid1.RowCount-1 do
begin
zlink.ADOTableJF.Locate('收费名称',jf.StringGrid1.Cells[2,i],[]);
zlink.ADOTableJF.edit;
zlink.ADOTableJF.FieldByName('缴费时间').AsDateTime:= now;
zlink.ADOTableJF.FieldByName('滞纳金').AsFloat:= strtofloat(jf.StringGrid1.Cells[11,i]);
zlink.ADOTableJF.FieldByName('应缴金额').AsFloat:= strtofloat(jf.StringGrid1.Cells[12,i]);
zlink.ADOTableJF.FieldByName('实收金额').AsFloat:= strtofloat(edit1.text);
zlink.ADOTableJF.FieldByName('收费状态').AsString:= '已缴费' ;
zlink.ADOTableJF.FieldByName('收银员').Asstring:= zuser;
zlink.ADOTableJF.UpdateBatch;
end;
showmessage('已经保存');
close;
zlink.ADOTableJF 是一个子表
if 是ltBatchOptimistic用 UpdateBatch
用 UpdateBatch
还是不行
退出后就不行了