no afectarÃa en la velocidad, porque solamente serÃa al momento de la edición, en lugar de revisar el tercer elemento del array, o despues en dado caso, evaluarÃas el codeblock general, no al momento del despliegue del browse, sino al editar, ademas, podrÃan ser dos variables en lugar de una, toma en cuenta (por lo menos es lo que pienso) se trata de recuperar una funcionalidad que se tiene en el twbrowse que empieza a ser obsoleto, tal vez esto podrÃa ayudar a darte alguna idea (un comentario xOpcion vendrÃa siendo la variable donde debe de ir ese dato, no se cual sea)
oBrw:nEdtTypDefault := EDIT_GET
oBrw:bEditType := { | oCol | selecValor( oCol ) }
function selecValor( oCol )
local oBrw := oCol:oBrw
DO CASE
CASE oBrw:aRow[ 1 ] in { "REG4", "REG9", "REG11" }
oCol:nEditType := EDIT_LISTBOX
oCol:xOpcion := { "Uno", "Dos", "Tres" }
CASE oBrw:aRow[ 1 ] == "REG8"
oCol:nEditType := EDIT_LISTBOX
oCol:xOpcion := { "aaa", "bbb", "ccc" }
CASE oBrw:aRow[ 1 ] == "REG15"
oCol:nEditType := EDIT_BUTTON
oCol:xOpcion := { || MsgYesNo( "Select a value" ) }
otherwise
oCol:nEditType := ::nEdtTypDefault
oCol:xOpcion := nil
ENDCASE
return nilSaludos
Quique
Quique