Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
marcelviegas
Creator II
Creator II

Condicional para cores

Prezados,

Necessito que mo meu gráfico de tabela simples seja realizado uma ordem de cores (Branco e Cinza), o mesmo deve ser mantido conforme numero de contrato,  quando for repetido o numero de contrato a cor deve se manter, segue abaixo uma tabela com exemplo de contratos e corres correspondente a logica.

Dimensão: Contrato

Expressão: Cor Correspondente (Problema).

Obs: (A logica tem que ser no gráfico). 


contrato, cor correspondente
1, Branco
2, Cinza
2, Cinza
3, Branco
4, Cinza
4, Cinza
5, Branco
6, Cinza
7, Branco
7, Branco
7, Branco
7, Branco
8, Cinza

 

 

 

 

6 Replies
Humbertonak
Contributor II
Contributor II

Marcel fiz dessa forma:

Let vCorAzul = RGB(0,0,255);
Let vCorCinza = RGB(136,135,135);

Tb:
LOAD * INLINE [
Contrato, Cor
1, Azul
2, Cinza
2, Cinza
3, Azul
4, Cinza
4, Cinza
5, Azul
6, Cinza
7, Azul
7, Azul
7, Azul
7, Azul
8, Cinza
];

 

e depois criei a expressão:

=if(Cor='Azul',vCorAzul,vCorCinza)

Na cor de fundo.

Vê se te atende amigo!

Abaixo print e app anexo.

Contador.PNG

QlikCor.png

marcelviegas
Creator II
Creator II
Author

Bom dia Humberto,

A logica que estou necessitando não é para inserir a cor e sim para que seja gerado a cor certa de acordo com o numero de contrato.

Tem que variar 2 cores e quando repetido o contrato deve repetir a cor do contrato na linha anterior, que sera o mesmo contrato.

Mas mesmo assim muito Obrigado!

Humbertonak
Contributor II
Contributor II

Marcel, acho que entendi!

Criei um peek de acordo com as duas cores azul e cinza:

if(CountContrato=1 and Peek(Resultado)<>'Azul','Azul',
       if(CountContrato=1 and Peek(Resultado)<>'Cinza','Cinza',
             if(Contrato<>peek(Contrato) and Peek(Resultado)<>'Azul', 'Azul',
                   if(Contrato<>peek(Contrato) and Peek(Resultado)<>'Cinza','Cinza',
                           if(Contrato=peek(Contrato),peek(Resultado)))))) as Resultado

Da uma olhada na App !!!

TabelaPeek.PNG

marcelviegas
Creator II
Creator II
Author

Humberto,

A logica deve ser aplicado na expressão devido a quantidade de campos e filtros disponíveis.

A coluna cor não existe somente o numero do contrato e atraves dele eu estou tentando criar uma logica

( Caso o numero do contrato for igual ao contrato da linha de cima, Não muda de cor, caso seja diferente muda de cor).

Estou tentando resolver com above().

 

marcelviegas
Creator II
Creator II
Author

Cheguei bem proximo da solução na expressão, problema é pintar a coluna da dimensão.

Humbertonak
Contributor II
Contributor II

Compartilha, as vezes consigo te ajudar!