Cesar, creo que este codigo puede ayudarte.
Function LineaNoEditable()
local oDlg, oBrw, n
LOCAL aArray := { {1,5,8,4,5,6,7} ,;
{1,4,9,4,5,6,0} ,;
{1,2,3,4,5,6,0} ,;
{1,5,0,4,5,6,7} ,;
{1,5,0,4,5,6,7} ,;
{1,5,0,4,5,6,7} ,;
{1,5,0,4,5,6,0} ,;
{1,2,3,4,5,6,7} }
DEFINE DIALOG oDlg SIZE 450,300 PIXEL TITLE "LINEAS EDITABLES O NO"
@5, 10 SAY "Lineas no son editables si valor en Columna 7 == 0" SIZE 200,10 PIXEL OF oDlg
@ 20, 10 XBROWSE oBrw SIZE -10,-20 PIXEL OF oDlg DATASOURCE aArray ;
COLUMNS 1,2,3,4,5,6,7 HEADERS "C1","C2","C3","C4","C5","C6","C7";
CELL LINES
AEVAL( oBrw:aCols,{|o| o:nWidth := 50 ,;
o:nEditType := 1 ,;
o:bEditWhen := {|| oBrw:aCols[7]:Value > 0 } } )
oBrw:CreateFromCode()
ACTIVATE DIALOG oDlg CENTERED
Return nil
Saludos.