CREATE TABLE Test_financing (Tip_Id I, amount N(12,2), source C(20), year I, phase C(1)) FOR asd = 1 TO 20 INSERT INTO Test_financing VALUES (asd, asd*12.73,REPLICATE([a],MIN(asd,20)),2007, [A]) NEXT GO TOP BROWSE CLOSE DATABASES ALL oCA = CREATEOBJECT([CursorAdapter]) TEXT TO oCa.SelectCmd PRETEXT 15 NOSHOW SELECT Test_financing.tip_id, Test_financing.amount, Test_financing.source, Test_financing.year, Test_financing.phase FROM TEST_FINANCING.DBF WHERE Test_financing.year = ( ?m.lnYear ) ORDER BY Test_financing.tip_id ENDTEXT oCa.BufferModeOverride = 5 oCa.DataSourceType = [NATIVE] oCa.SendUpdates = .t. oCa.WhereType = 1 oCa.Tables = [Test_financing] oCa.FetchSize = -1 oCa.KeyFieldList = [Tip_ID] oCa.UpdateNameList = "Amount Test_financing.Amount, Source Test_financing.Source,"+; "year Test_financing.year , phase Test_financing.phase,"+; "Tip_ID Test_financing.Tip_ID" oCa.UpdatableFieldList = "Amount, Source, year, phase" oCa.Alias = [crsTest] m.lnYear = 2007 oCa.CursorFill() GO TOP REPLACE Amount WITH 100 IF NOT TableUpdate(1, .t., [crsTest]) AERROR(aaa) MESSAGEBOX(aaa[1,2]) ENDIF BROWSE SELECT Test_financing GO TOP BROWSE