Harbour MiniGUI Extended Edition 16.10
BRMAKE - Make File para Harbour/xHarbour/MiniGUI Versão 2.05 FreeWare
bem, em um form eu crio um TBROWSE cfe abaixo, em um DBF guardo as informações para montagem do mesmo e carrego esta informações em vetores, o vetor
COLUNA_FIELDS contem os campos para a montagem das colunas , no vetor COLUNA_BLOCO é usada para preenchimento de cores para cada linha/coluna no TBROWSE
por exemplo:
IIF( CLIENTES->VENDEDOR = "50",COR_VERMELHA,IIF( CLIENTES->VENDEDOR = "ABC",COR_VERDE,COR_BRANCA ) )
OU
IIF( CLIENTES->ULT_VENDA <= 1000.00, COR_VERMELHA, IIF( CLIENTES->ULT_VENDA > 1000.00 .AND. CLIENTES->ULT_VENDA <= 2000.00, COR_AMARELA, COR_VERDE ))
enfim pode haver varias condiçoes, o problema é que não estou conseguindo passar este vetor para a linha 18 CRIATABSBROW:SetColor onde carrego a informação do vetor COLUNA_BLOCO[w] na variavel MACROCOR
da forma que esta as colunas do TBROWSE fica toda preta repare que comentei a linha 20 e 21, se eu comentar a linha 18 e ativar a linha 20 e 21 o browse é preenchido corretamente como esta nos arquivos anexo um errado e o outro certo, o errado e da linha 18 e o certo é das linha 20 e 21.
alguém tem ideia pois ja criei e variavel MACROCOR de todas as formas cfe abaixo e só da erro.
* MACROCOR := &( "{ || " + COLUNA_BLOCO[W] + "}" )
* MACROCOR := &( COLUNA_BLOCO[W] )
* MACROCOR := COLUNA_BLOCO[W]
* MACROCOR := "{{ || " + COLUNA_BLOCO[W] + "}}"
desde já agradeço, um forte abraços a todos.
DEFINE TBROWSE CRIATABSBROW AT 110,005 OF CRIATABFORM WIDTH NLARGURA - 15 HEIGHT NALTURA - 160 ALIAS ALIAS_FICHA ;
FONT "Arial" SIZE 10 BOLD ON DBLCLICK EDIT_INSERT( 2, "CRIATABFORM", "CRIATABSBROW", AFUNC ) ;
CELLED ON HEADCLICK { &CABECALHO. }
CRIATABSBROW:nHeightCell = 30 // 20 altura de celula do browse
CRIATABSBROW:nHeightHead = 40 // 30 altura do texto das colunas
FOR W := 1 TO LEN( COLUNA_FIELDS )
ADD COLUMN TO CRIATABSBROW HEADER COLUNA_TITULO[W] SIZE COLUNA_TAMANHO[W] FOOTER "";
PICTURE IIF( COLUNA_TIPO[W] == "N", COLUNA_PICTURE[W], "@!" ) ;
3DLOOK TRUE DATA FIELDWBLOCK( COLUNA_FIELDS[W], SELECT( COLUNA_TABELA[W] ) ) ;
ALIGN IIF( COLUNA_TIPO[W] == "C", DT_LEFT , IIF( COLUNA_TIPO[W] == "N", DT_RIGHT , DT_CENTER ) ) , ;
NMAKELONG( DT_CENTER, 3 )
IF !EMPTY( COLUNA_BLOCO[W] )
MACROCOR := &( "{ || " + COLUNA_BLOCO[W] + "}" )
CRIATABSBROW:SetColor( { 2 }, &(MACROCOR) , W )
*CRIATABSBROW:SetColor( { 2 }, { { || IIF( VENDEDOR = "50",COR_VERMELHA,;
*IIF( VENDEDOR = "ABC",COR_VERDE,COR_BRANCA ) ) } }, W )
ELSE
CRIATABSBROW:SETCOLOR( { 2 }, { ;
IIF( COLUNA_COR[W] = "COR_BRANCA", COR_BRANCA ,;
IIF( COLUNA_COR[W] = "COR_AMARELA", COR_AMARELA,;
IIF( COLUNA_COR[W] = "COR_AZUL", COR_AZUL,;
IIF( COLUNA_COR[W] = "COR_VERDE", COR_VERDE,;
IIF( COLUNA_COR[W] = "COR_VERMELHA", COR_VERMELHA,;
IIF( COLUNA_COR[W] = "COR_ROSA", COR_ROSA,;
IIF( COLUNA_COR[W] = "COR_LARANJA", COR_LARANJA,;
IIF( COLUNA_COR[W] = "COR_LILAS", COR_LILAS,;
IIF( COLUNA_COR[W] = "COR_PRETA", COR_PRETA,;
IIF( COLUNA_COR[W] = "COR_CINZA", COR_CINZA, COR_BRANCA ) ) ) ) ) ) ) ) ) ) },W )
ENDIF
NEXT W
CRIATABSBROW:GODOWN()
CRIATABSBROW:GOUP()
CRIATABSBROW:GoPos( NRECNO,1 )
END TBROWSE