Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Fala pessoal, beleza?
Apesar de não gostar muito de alterar o que é padrão da ferramenta, alguns clientes insistem: Quero alterar o esquema de cores do QlikView para a cor padrão da minha empresa!
Você já precisou fazer isso? Conseguiu alterar no documento, mas não consegue repassar esse esquema na visualização pelo servidor? Vamos aprender!
É o padrão de cores para identificar a associação dos dados:
Por padrão, essas associações são referenciadas pelas cores: Verde, Cinza e Branco:
Para alterar essas cores, temos que se utilizar de códigos em Macro.
Primeiramente vamos entender o que é uma macro: basicamente é um módulo do qlikview que permite a interação através de seus objetos (listas, tabelas, gráficos) e também de suas configurações não visíveis. Através da macro também podemos criar associações entre qlikview e outras ferramentas, por exemplo: PowerPoint, Excel, etc.Macros são executados utilizando automação COM.
Em sua essência, a COM é uma forma independente de linguagem de programação de implementar objetos de forma que eles possam ser utilizados em diferentes ambientes dos quais foram criados, mesmo entre diferentes máquinas e arquiteturas. A COM permite a reutilização de objetos sem o conhecimento de sua implementação interna pois força o desenvolvedor a fornecer uma interface bem definida, que está separada da implementação. WikiPedia.
No QlikView, é possível se utilização da plataforma COM através da linguagem VbScript e JScript.Existe uma aplicação da própria Qlik que fornece MUITOS exemplos de como implementar uma macro com chamada de objetos do qlikview. Essa aplicação se chama API GUIDE. Faça o download dela clicando aqui!
No Qlikview, a macro esta disponível através do atalho Ctrl + M ou do menu Ferramentas ou através do ícone de atalho (da barra de desenho), conforme imagem:
Acessando o Editor, a seguinte tela será exibida:
Existem três configurações importantes a serem realizadas nas macros.
Defina qual a linguagem você vai escrever o seu código de macro. No nosso exemplo utilizaremos VBscript, então devemos setar esta opção, conforme imagem:
Nesta etapa de segurança iremos realizar duas configurações: nível de acesso que a macro precisa para funcionar e segurança local (de quem vai executar).
Com esta configuração estaremos dando acesso total para a execução de nossa macro.IMPORTANTE: Sempre tome cuidado com os tipos de código que vai liberar a segurança, pois através de macros é possível manipular todo o seu computador. Cuidado ![]()
Neste exemplo, iremos alterar apenas os valores selecionados para a seguinte configuração:
Maiores informações do código e outras configurações veremos em seguida.
Copie e cole o código em seu editor de módulo:
Sub ModeloDeCores()
set MeuModeloDeCores = ActiveDocument.GetApplication.GetUserPreferences
MeuModeloDeCores.CustomSelBgColor(1).PrimaryCol.Col = RGB (0,0,255)
MeuModeloDeCores.CustomSelFgColor(1).PrimaryCol.Col = RGB (255,255,255)
ActiveDocument.GetApplication.SetUserPreferences
MeuModeloDeCores
end sub
Feito isso, clique sobre o botão Verificar, para o editor nos informar se existe ou não algum erro no código informado:
Se tudo ocorreu bem, então deverá aparecer a palavra "*** Pronto ***" no barra superior e também o nome do módulo que criamos: ModeloDeCores.
Agora precisamos clicar sobre o botão "Teste" para executar essa macro:
Após clicar sobre o botão, rapidamente será apresentada a palavra "*** Executando ***" no lugar da palavra "*** Pronto ***":
e logo depois a palavra "*** Pronto ***" volta a aparecer:
Depois de executar esta macro o esquema de cores continuará o padrão, pois precisamos informar ao QlikView que queremos utilizar o novo padrão de cores setado, para isso vá em: Configuração -> Propriedades do Documento:
Na aba Geral, vá até Esquema de Cores e altere o valor de Padrão para Personalizar:
Agora ou fazer uma seleção na lista, veremos o novo padrão de cores funcionando:
Muito bom!
No código de exemplo alteramos apenas a fonte e cor de fundo dos valores selecionados. Como podemos alterar as cores de valores não associados e excluídos?
Bom, vamos primeiramente conhecer as funções utilizadas:
Repare que no código estamos passando o parâmetro 1 para essas funções:
É esse o parâmetro que define qual o tipo de padrão queremos alterar, vamos a lista:
0: Valores travados;
1: Valores selecionados;
2: Valores associados;
3: Valores não selecionados;
4: Valores alternativos;
5: Valores não associados;
6: Valores excluídos da seleção;
7: Valores excluídos pelo processo de travar seleções.
IMPORTANTE: Acredito que alguns não conhecem todos esses estados de seleção, mas isso vai ficar para um outro post! Me cobrem ![]()
Supomos agora que também queremos alterar as cores dos valores associados e dos valores não associados:
Sub ModeloDeCores()
set MeuModeloDeCores = ActiveDocument.GetApplication.GetUserPreferences
MeuModeloDeCores.CustomSelBgColor(1).PrimaryCol.Col = RGB (0,0,255)
MeuModeloDeCores.CustomSelFgColor(1).PrimaryCol.Col = RGB (255,255,255)
MeuModeloDeCores.CustomSelBgColor(2).PrimaryCol.Col = RGB (255,0,0)
MeuModeloDeCores.CustomSelFgColor(2).PrimaryCol.Col = RGB (255,255,255)
MeuModeloDeCores.CustomSelBgColor(5).PrimaryCol.Col = RGB (0,0,0)
MeuModeloDeCores.CustomSelFgColor(5).PrimaryCol.Col = RGB (255,255,255)
ActiveDocument.GetApplication.SetUserPreferences MeuModeloDeCores
end sub
Veja o resultado:
Eca! Acho que o padrão fica mais bonito, né? rsrs!
Se tentarmos adicionar essa aplicação para o nosso ambiente do QvServer, iremos notar que as cores continuarão no padrão (Verde, Branco e Cinza), isso ocorre porque realizamos a alteração apenas para o QVW. O nosso servidor continuará acessando as aplicações através do esquema padrão de cores:
IMPORTANTE: Para realizar essas alterações teremos que parar o serviço QlikView Server Service e também editar um arquivo de configuração do servidor. Lembre-se sempre de criar backup desses arquivos antes de qualquer alteração no seu servidor.
Primeiramente teremos que ir até o arquivo Settings.ini do nosso usuário, fica neste diretório: C:\Users\username\AppData\Roaming\QlikTech\QlikView
NOTA: Troque o username pelo nome do seu usuário no computador.
Localize o arquivo Settings.ini
Abra-o e procure pelas linhas que comecem com a palavra "CustSel", conforme imagem:
Selecione todas essas linhas e copie (Ctrl + C).
NOTA: Não copie os valores que coloquei aqui, pois cada configuração realizada vai gerar uma sequencia de números diferentes!
Agora temos que parar o serviço do QlikView Server Service! É importante que faça isso fora de horário de uso de seu ambiente, pois irá desconectar os usuários das aplicações.
No menu de busca do Windows, digite: services.msc
Clique sobre o programa localizado.
Nesta tela, localize o serviço "Qlikview Server", clique sobre o nome do serviço e depois clique no ícone para parar o serviço:
A coluna Status deverá ficar em branco.
Agora podemos editar o arquivo Settings.ini do servidor que fica localizado no seguinte diretório: C:\ProgramData\QlikTech\QlikViewServer
Abra-o e cole o texto, que copiou do Settings.ini de seu usuário, na linha abaixo da palavra [Settings 7], conforme imagem:
Salve e inicie o serviço do QlikView Server:
A coluna Status deverá ficar com a palavra Iniciado.
Agora a aplicação em que executamos a macro ficará com o novo padrão de cores:
Não, você terá que repetir o processo de executar a macro e alterar o esquema de cores para personalizado em cada aplicação que deseja.
Se quiser fazer o download da aplicação de modelo, clique aqui!
Até a próxima semana pessoal!
Bom dia Yuri
Valeu pela dica. O pessoal por aqui já estava pedindo para mudar.
Márcio
Valeu ![]()
Aqui alteramos para cores mais fortes, pensando nos projetores.
Sensacional, obrigado.