la siguiente instruccion.
  cSql := "SELECT A.NUM_COBR, A.NOMBRE, B.NOMBRE AS CIUDAD, iif( A.ACTIVO,'Si','No') as CACTIVO "
  cSql += "FROM COBRADORES AS A "
  cSql += "LEFT OUTER JOIN CIUDADES AS B ON A.NUM_CIUD = B.NUM_CIUD "
// Â IF !Empty( cFiltro )
// Â Â Â cSql += "WHERE A." + cFiltro
// Â ENDIF
  IF ADSRunSql( "REPO", cSql )
   IF REPO->( Eof() )
     MsgAlert( "No hay cobradores registrados, nada que listar!", "Alerta" )
   ELSE
     ?1
     aStruct := REPO->( DBStruct() )
     xbrowse( aStruct )
     ?2
     lSalir := FALSE
   ENDIF
  ENDIFel caso es que el area REPO tiene el contenido del select, pero la columna que es calculada
if( A.ACTIVO,'Si','No') as CACTIVO es definida por ADS como de tipo "Q", y eso amigos me esta jodiendo la vida.

Carlos Vargas
Desde Managua, Nicaragua (CA)
