this.ca_object.keyfieldList = ALLTRIM(cPkFieldName) && 'COMP_PK' this.ca_object.tables = tcTableName && 'COMPANY' this.ca_object.UpdatableFieldList = cUpdatableFieldList && 'COMP_PK, COMP_NAME, ADDRESS1, ..' this.ca_object.UpdateNameList = cUpdateNameList && 'COMP_PK TABLENAME.COMP_PK, COMP_NAME TABLENAME.COMP_NAME ..' this.ca_object.identity_field = "COMP_PK" this.ca_object.AllowUpdate = .T. LOCAL oRS oRS = CREATEOBJECT("ADODB.Recordset") oRS.DataSource.CursorLocation = 3 oRS.DataSource.Locktype = 3 oRS.ActiveConnection = oApp.oConn oRS.Open(tcSqlSelectExpression, , 1) && tcSqlSelectExpress = 'select * from Company' this.ca_object.Alias = tcViewName && "V_COMPANY" *-- Fill cursor adapter IF !this.ca_object.CursorFill(,,,oRS) AERROR( aErrorInf ) this.error_message_text = "SQL Select expression: " + CHR(13) + ; tcSqlSelectExpression + CHR(13) + ; "Error Message: " + aErrorInf[1,2] this.error_message_title = "Failed Execute Cursor Fill Method" this.error_number = aErrorInfo[1,1] lReturn = .F. ENDIF SELECT V_COMPANY APPEND BLANK =TABLEUPDATE(1,.t.,"V_COMPANY") BROWSE