Estoy intentando imprimir un listado del contenido de una base de datos dando color de fondo a algunas líneas en función del valor de un campo. Son 4 colores distintos, pero no consigo que el color cambie. Toma el color del fondo asignado al primer registro pero no hace ningún cambio en el color de fondo.
oReport:bStartLine:= {|o| PONSHADOW(o,oDbf20)}
STATIC FUNCTION PONSHADOW(oReport,oDbf20)
LOCAL vCol:={CLR_YELLOW,CLR_GREEN,CLR_MAGENTA,CLR_BLUE}
IF (oDbf20:cAlias())->Color>0 .AND. (oDbf20:cAlias())->Color<=4
oReport:SetShdColor(vCol[(oDbf20:cAlias())->Color])
oReport:aColumns[1]:lShadow:=.T.
oReport:aColumns[2]:lShadow:=.T.
ELSE
oReport:SetShdColor(CLR_LIGHTGRAY)
oReport:aColumns[1]:lShadow:=.F.
oReport:aColumns[2]:lShadow:=.F.
ENDIF
RETURN nil
Agradecería cualquier ayuda, incluso la confirmación de que lo que intento no es posible.
Un Saludo.