procedure Tqqq.DataSetProvider1BeforeUpdateRecord(Sender: TObject;
SourceDS: TDataSet; DeltaDS: TCustomClientDataSet;
UpdateKind: TUpdateKind; var Applied: Boolean);
var
sisbn:string;
begin
if (updatekind=ukmodify) then
begin
sisbn:=deltads.fieldbyname('isbn').OldValue;
form1.Edit1.Text:=sisbn;
query1.ParamByName('isbn').AsString:=sisbn;
form1.Label1.Caption:=query1.Parambyname('isbn').AsString;
query1.Active:=true; if (query1.recordcount=1) then
begin
try
query1.Edit;
if ((not varisempty(deltads.FieldByName('bookname').NewValue)) and (not varisnull(deltads.FieldByName('bookname').NewValue ))) then
query1.FieldByName('bookname').Value:=deltads.fieldbyname('bookname').NewValue;
if ((not varisempty(deltads.FieldByName('level').NewValue)) and (not varisnull(deltads.FieldByName('level').NewValue ))) then
query1.FieldByName('level').Value:=deltads.fieldbyname('level').NewValue;
query1.Post;
finally
query1.Active:=false;
end;
end;
end;
Applied:=true;
end;
SourceDS: TDataSet; DeltaDS: TCustomClientDataSet;
UpdateKind: TUpdateKind; var Applied: Boolean);
var
sisbn:string;
begin
if (updatekind=ukmodify) then
begin
sisbn:=deltads.fieldbyname('isbn').OldValue;
form1.Edit1.Text:=sisbn;
query1.ParamByName('isbn').AsString:=sisbn;
form1.Label1.Caption:=query1.Parambyname('isbn').AsString;
query1.Active:=true; if (query1.recordcount=1) then
begin
try
query1.Edit;
if ((not varisempty(deltads.FieldByName('bookname').NewValue)) and (not varisnull(deltads.FieldByName('bookname').NewValue ))) then
query1.FieldByName('bookname').Value:=deltads.fieldbyname('bookname').NewValue;
if ((not varisempty(deltads.FieldByName('level').NewValue)) and (not varisnull(deltads.FieldByName('level').NewValue ))) then
query1.FieldByName('level').Value:=deltads.fieldbyname('level').NewValue;
query1.Post;
finally
query1.Active:=false;
end;
end;
end;
Applied:=true;
end;
from1.label1.caption:='hao'; 来检测程序运行;
如果放到 query1.ParamByName('isbn').AsString:=sisbn;前可以显示label1可以显示出来hao
可是要是放到后面就不可以显示出来了。请教为什么程序不能运行下去,还有就是这个数据跟新不到数据库。
我可以另为给分 谢谢各位大侠了 急啊 请帮帮我这个菜鸟。
可是它为什么到 query1.ParamByName('isbn').AsString:=sisbn;就运行不下去了啊还请那位大侠给我说说 用数据集更新的问题 多谢给位大侠了