Sr. Cristobal, muito obrigado
function aObjData( obj )
/*
*/
local n, v, l
local aData := AOData( obj )
for n := 1 to Len( aData )
TRY
v := OSend( obj, aData[ n ] )
l := .t.
CATCH
v := '<protected>'
l := .f.
END
aData[ n ] := Lower( Left( aData[ n ], 1 ) ) + ;
SubStr( aData[ n ], 2 , 1 ) + ;
Lower( SubStr( aData[ n ], 3 ) )
//if Valtype( v ) == "A"
//FWLOG aData[ n ]
//endif
aData[ n ] := { n, aData[ n ], v, l }
next n
return aData