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.