CLOSE DATABASES ALL IF NOT FILE([tblTest.DBF]) CREATE TABLE tblTest (PK int, Date D, Type I, Desc C(20)) USE ENDIF LOCAL oCA AS CursorAdapter oCA = CREATEOBJECT([cTest]) WITH oCA AS CursorAdapter .SelectCmd = [SELECT PK, Date, Type, Desc AS Desc1 FROM tblTest] .Alias = [crsTest] .UpdatableFieldList = [Pk, Date, Type, Desc1] .UpdateNameList = [Pk tblTest.Pk, Date tblTest.Date, Type tblTest.Type, Desc1 tblTest.Desc] .SendUpdates = .t. .WhereType = 1 .KeyFieldList = [Pk] .DataSourceType = [Native] .Tables = [tblTest] IF NOT .CursorFill() AERROR(aaa) MESSAGEBOX(aaa[1,2]) RETURN ENDIF ENDWITH BROWSE NORMAL && add few records here, just please add different values in PK field ? [aaaa] IF NOT TABLEUPDATE(1, .t., [crsTest]) AERROR(aaa) MESSAGEBOX(aaa[1,2]) ENDIF TABLEREVERT(.t., [crsTest]) CLOSE DATABASES ALL DEFINE CLASS ctest AS CursorAdapter PROCEDURE BeforeUpdate(cFldState, lForce, nUpdateType, cUpdateInsertCmd, cDeleteCmd) cUpdateInsertCmd = STRTRAN(cUpdateInsertCmd,[SET Desc],[SET tblTest.Desc]) ENDPROC ENDDEFINE