Public oForm oForm = CreateObject('myForm') oForm.Show Define Class myForm As Form DataSession=2 Add Object myGrid As Grid Procedure Load Create Cursor Authors (Author i, Pub1 c(10), Pub2 c(10)) For ix=1 To 100 Insert Into Authors Values (Int(Rand()*10),'A','B') Endfor Locate Thisform.AddProperty('nUser',3) Endproc Procedure myGrid.AfterRowColChange Lparameters nColIndex *this.ReadOnly = !(eval(this.recordsource+'.Author') = thisform.nUser) This.SetAll('Enabled',Eval(This.RecordSource+'.Author') = Thisform.nUser) This.Columns(nColIndex).Text1.SetFocus() Endproc EnddefineCetin