در ادامه صحبتهای علی جان:
خوشحال میشم اگر شما بتونید راه حلی برای این موضوع پیدا کنید.
شاید شما با توجه به حسن نیتی که نسبت به این مساله دارید هر کدی که نوشته بشه رو با عنوان ماست مالی مزین کنید ولی یک روش سر دستی برای حل مشکلی که شما در آخرین پستتون مطرح کردید شاید بتونه چیزی شبیه به کد زیر باشه البته با مقداری تغییرات و کار و ریسورس اضافه. که البته بار آن از Refresh ;کل جدول کمتره
procedure TForm1.ClientDataSet1AfterPost(DataSet: TDataSet);
begin
if DataSet.FieldByName('NewID').AsInteger=0 then
Begin
TClientDataSet(DataSet).ApplyUpdates(-1);
With AdoQuery2 Do
Begin
Active:=False;
SQL.Clear;
SQL.Add('Select @@identity From Table1');
Active:=True;
TClientDataSet(DataSet).Edit;
TClientDataSet(DataSet).FieldByName('NewID').AsInt eger:=Fields[0].AsInteger;
TClientDataSet(DataSet).Post;
Active:=False;
End;
End;
end;