Qlik Community

Ask a Question

QlikView Administration

Discussion Board for collaboration on QlikView Management.

Announcements
Become an analytics expert with Qlik's new 15 week course: Applied Data Analytics using Qlik Sense. READ MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Macro ao selecionar um filtro preciso extrair dados de outro filtro.

Ola amigos, preciso de uma grande ajuda.

Tenho dois filtros como se fossem "pai" e "filho". ´

Preciso de uma macro que quando eu selecionar o filtro "pai" ele pegue os valores do filtro "filho" e crie uma nova listbox, mas somente com estes filhos relacionados ao pai.

O objetivo é isolar os filhos do pai selecionado.

Obrigado

Labels (2)
7 Replies
Clever_Anjos
Employee
Employee

Você está criando um listbox dinamicamente?

Not applicable
Author

Try to use an Action with "Select Field" with:

Select Field = pai

Value= only(filho)

Not applicable
Author

Não sei se é dinâmico. Mas segue detalhes:

Pai:

personagem

tipo

versão

Filho:

personagem-ben10

personagem-barbie

personagem-hotwhells

versão-1

versão-2

versão-3

tipo-boneco

tipo-carro

tipo-eletrico

E assim vai a lista.

O meu proposito é quando eu selecionar personagem(Pai), a macro extraia somente os valores ligados a ele, ou seja:

personagem-ben10

personagem-barbie

personagem-hotwhells

Mas tudo em uma nova lista, é possível?

Clever_Anjos
Employee
Employee

Não estou entendendo justamente essa "nova lista".

Você quer que apareça outro listbox na tela?

Not applicable
Author

Sim, uma outra listbox.

Eu consegui criar uma nova listbox com o código:

sub teste

set LB = ActiveDocument.Sheets("Principal").CreateListBox

set BoxProp=LB.GetProperties

BoxProp.Def.Name = "valor"

LB.SetProperties BoxProp

end sub

Eu queria que a macro pegasse os valores do filho correspondente ao pai que selecionei e colocasse em uma nova listbox.

Seria parte deste código acima, mas preciso acrescentar que ele selecione os filhos e colocasse nele.

Clever_Anjos
Employee
Employee

Uma listbox está associada a um campo na sua nuvem, correto? Criar outra listbox e associar ao mesmo campo irá sempre filtrar os mesmos valores no mesmo campo

Você não faz uma seleção em um listbox mas em um campo.

Abaixo um pedaço de codigo que pega os valores possiveis de um campo e atribui ao mesmo

set valores=ActiveDocument.Fields("seucampo").GetPossibleValues

set campo=ActiveDocument.Fields("seucampo")

campo.SelectValues valores

Not applicable
Author

tag.jpg

Ola, bom para você entender melhor segue ilustrativo.

Do lado esquerdo da tarja vermelha tenho duas listbox; uma pai e outra filho relacionadas entre elas.

Quando selecionei PROC, os filhos apareceram na lista.

Eu queria recortar esses filhos selecionados e abrir uma nova listbox, somente com estes itens selecionados.

Igual a lista que você pode ver na parte direita da tarja vermelha; chamada de PROCESSO.

As varias listbox que você vê na parte direita eu fiz "filhos chapados" diretamente no script.

Na verdade quero a lista completa e separar por macro e não chapar no script.