>LOCAL lcTest AS crsNch >lcTest = CREATEOBJECT([crsNch]) >IF NOT lcTest.FillCursor() > MESSAGEBOX(lcTest.SQLError) > RETURN >ENDIF >BROWSE NORMAL >** Do Some changes >IF NOT lcTest.UpdateCursor() > MESSAGEBOX(lcTest.SQLError) > RETURN >ENDIF >USE > > > > > >DEFINE CLASS crsNch AS CursorAdapter > Alias = "crsTest" > BufferModeOverride = 5 > DataSourceType = "ODBC" > ConnectionString = "Driver={SQL Server};Server=ServerNameHere;Trusted_Connection=yes;DataBase=DataBaseNameHere;" > DataSource = 0 > SQLError = [] > KeyFieldList = "Key Field Name hare" > SendUpdates = .t. > WhereType = 1 > Tables = "TableNameHer" > > PROCEDURE Init > TEXT TO this.UpdatableFieldList NOSHOW PRETEXT 15 > KOD, NAME > ENDTEXT > > TEXT TO this.UpdateNameList NOSHOW PRETEXT 15 > KOD TableNameHere.KOD, > NAME TableNameHere.NAME > ENDTEXT > this.SelectCmd = [SELECT Kod, Name FROM TableNameHere] > ENDPROC > > PROCEDURE FillCursor > LOCAL laError[1] > this.DataSource = SQLSTRINGCONNECT(this.ConnectionString) > IF this.DataSource < 0 > AERROR(laError) > this.SQLError = laError[1,2] > RETURN .f. > ENDIF > IF NOT this.CursorFill() > AERROR(laError) > this.SQLError = laError[1,2] > RETURN .f. > ENDIF > SQLDISCONNECT(this.DataSource) > ENDPROC > > PROCEDURE UpdateCursor > LOCAL laError[1] > this.DataSource = SQLSTRINGCONNECT(this.ConnectionString) > IF this.DataSource < 0 > AERROR(laError) > this.SQLError = laError[1,2] > RETURN .f. > ENDIF > IF NOT TABLEUPDATE(1,.t.,this.Alias) > AERROR(laError) > this.SQLError = laError[1,2] > RETURN .f. > ENDIF > SQLDISCONNECT(this.DataSource) > ENDPROC >ENDDEFINE >>