Modo AND (E) na Configuração de Listas

De Qknow
Ir para: navegação, pesquisa

This post is available in English. Click on flag at side.

EnglishFlag.jpg

Introdução

Por padrão a plataforma Qlik utiliza o modo seleção OR (Ou) quando múltiplos valores são selecionados em uma mesma lista. Isto significa dizer que ao escolher múltiplos valores utilizando a tecla CTRL ou mesmo arrastando com o ponteiro do mouse, o QlikView utilizará o operador OU (OR) para exibir todos os dados associados aos valores selecionados. Porém, nem sempre o modelo de seleção OR (Ou) é o mais desejado pelo usuário que, por vezes, necessita realizar uma operação do tipo AND (E). Ou seja, exibir os valores associados desde que os múltiplos itens selecionados estejam relacionados necessariamente ao restante do modelo, em conjunto. Assim, ambos precisam ser verdadeiros. Este artigo descreve como alterar o modelo de dados para permitir as listas utilizarem a configuração do modo AND.

Para ilustrar as configurações necessárias e os resultados práticos deste artigo, é possível utilizar os dados do painel de filmes fornecido com a instalação do QlikView Desktop. O arquivo movies databases.qvw será utilizado para construção do exemplo a seguir. É possível utilizar o comando BINARY para incorporar os dados do painel a um novo projeto.

 Binary [c:\program files\qlikview\examples\documents\movies database.qvw];

Ajustando o Modelo para Modo AND

Movie Database 1.png

Para utilizar o modelo AND em uma lista, os dados associados precisam estar interligados de maneira única a partir do comando DISTINCT. No caso das tabelas do projeto Movie Database, existem três delas que serão úteis ao exemplo em questão. No modelo original, as tabelas Films, Actors e Directors contém a lista de filmes, atores e diretores, respectivamente, tal como na figura ao lado.

Ao adicionar uma lista de atores a interface do painel é possível selecionar um ator para visualizar em quais filmes este trabalhou. Por padrão, todos os outros atores que não fazem parte da seleção são automaticamente marcados em cinza, padrão de associação do QlikView (figura abaixo).

Movie Database 2.png

Utilizar o modo AND significa poder escolher um determinado ator e visualizar todos os outros atores que já trabalharam com aquele selecionado. Ou seja, na prática o modelo associativo manterá em branco os valores da mesma lista, mesmo quando um valor estiver selecionado, desde que estes outros valores serão associados a trabalhos realizados em conjunto, por exemplo, no mesmo filme.

Ao carregar os dados mencionados em um novo projeto, é preciso montar uma associação de valores entre os quais se deseja habilitar o modo AND. No exemplo em questão deseja-se habilitar a possibilidade de descobrir quais atores trabalharam juntos em qualquer um dos filmes cadastrados. Logo, quando um ator for selecionado o QlikView deve avaliar em toda a lista quais foram os outros atores que trabalharam em algum momento com aquele escolhido na lista.

O ajuste do modelo envolve a carga dos atores e dos filmes em que trabalharam em uma nova estrutura contendo apenas valores únicos. Esta carga é realizada via instrução LOAD no exemplo em questão, mas poderia ser fornecida a partir de qualquer fonte de dados. Para o exemplo, uma tabela chamada ActorsAND é criada contendo uma lista única e exclusiva de cada código de filme contido no campo FilmID e cada nome de ator contido no campo Actor (conforme exemplo de código abaixo).

Para alcançar o resultado prático desta configuração é obrigatório que a lista contenha elementos únicos no conjunto carregado. Por isso, ao executar a operação LOAD o comando DISTINCT é incluído na estrutura, resultado em uma nova tabela de valores combinados únicos.

ActorsAND:
Load Distinct
	FilmID,
	Actor as ANDActor
Resident Actors;

Como resultado um novo campo chamado de ANDActor foi adicionado ao modelo e pode ser incluído a interface do painel em forma de lista. Esta é a configuração básica para que seja possível a utilização do modo AND. A seção a seguir descreve como configurar a lista para utilização deste parâmetro.

Configurando a Lista para o Modo AND

Uma vez alterado o modelo de dados para o modo E (AND), é possível configurar a lista do campo ANDActor para atuar nesta configuração. Por padrão, nenhuma lista no QlikView habilita este parâmetro, pois carece do ajuste do modelo de dados demonstrado na seção anterior. Para configurar o modo AND na lista em questão, basta acessar as propriedades da lista e assinalar a opção Modo AND na guia Geral. Note que esta opção não estará habilitada para as outras listas, como Films ou Directors.


AND Mode 1.PNG


Selecionando o mesmo ator da seção anterior na lista ANDActor é possível notar que as linhas subsequentes continuam em branco, o que representa na prática quais foram os outros atores que realizaram algum filme com o ator selecionado. O símbolo de & (ampersand), também conhecido como E COMERCIAL, é exibido ao lado do registro selecionado na lista, demonstrando que o modo AND está ativo.

Ao adicionar a lista de filmes é fácil notar quais foram aqueles em que Harrison Ford trabalhou. Mas ao experimentar selecionar o filme Indiana Jones and the Last Crusade os atores da lista ANDActor são alterados na relação de fundo branco, demonstrando quais foram aqueles que juntos trabalharam no mesmo filme. Limpando os filtros e escolhendo dois atores a partir da lista original (sem o modo AND) é fácil notar a diferença entre os modelos, tal como na escolha de Harrison Ford e Bradley Gregg na lista original Actor enquanto nenhuma outra seleção é feita. O resultado será uma enorme lista de filmes onde um dos dois atores trabalharam. Ou seja, o modo OR (Ou) original do QlikView.

Já na lista ANDActor, selecionar os mesmos atores após ter limpado todos os filtros resulta em uma lista diferente de filmes, pois somente aqueles em que ambos os atores trabalharam será exibida. Ou seja, utilizando a tecla CTRL e escolhendo Harrison Ford e Bradley Gregg resulta em apenas dois filmes, Indiana Jones and the Last Crusade e Indiana Jonesoch det sista korståget.

AND Mode 3.PNG

Realizando Seleções no Modo AND

Como visto na seção anterior, ao escolher dois ou mais atores na lista ANDActor somente os filmes que foram feitos em conjunto é exibido. Para escolher dois ou mais atores basta selecionar com o mouse e arrastar ou utilizar a tecla CTRL. Adicionalmente, o modo AND das listas do QlikView permitem operar o modo NOT, ou modo NÃO. Ou seja, apresentar a relação de filmes de um ator onde um outro, necessariamente, não tenha trabalhado.

  • Experimente selecionar com a tecla CTRL os atores Alec Guinness e Harrison Ford.
  • Note que o resultado na lista de filmes é basicamente de 9 ocorrências, entre Star Wars e Empire Strikes Back.
  • Segurando a tecla CTRL clique e mantenha o botão pressionado sobre a linha de Alec Guinness.
  • Ao notar uma exclamação (!) solte o botão do mouse e em seguida a tecla CTRL.
  • O resultado será a lista de todos os filmes onde Harrison Ford trabalhou mas necessariamente Alec Guinness não.
  • É possível observar que nenhum filme feito em conjunto com os dois atores é exibido. Por exemplo, não há qualquer ocorrência de Star Wars.

Seguindo os passos acima as listas estarão configuradas como a figura abaixo.

AND Mode 2.PNG


Envelope01.jpg
Procurando Algo? Fale Conosco!

Voltar | Página Principal