Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Employee
Employee

Re: Filtros em Expressões e Dimensões

monta o resultado que você gostaria de obter em um Excel e posta aqui por favor

williamjr
New Contributor II

Re: Filtros em Expressões e Dimensões

Oi Clever,

O resultado do exemplo não está errado, só que nele existe uma definição para cada expressão.

O que eu quero saber é:

1 - Como fazer essa definição na dimensão (a ideia seria fazer apenas na dimensão e não ter que repetir toda aquela definição para as expressões)

2 - No meu exemplo fiz com sum, mas a dimensão, por exemplo, é uma data e não se aplica o sum.

Haverá casos onde será texto. Daí como fica?

3 - Mesmo nas expressões, o sum não ficará legal em outros casos, onde não posso somar porcentagens

Eu só estou fazendo assim porque foi o único jeito que encontrei de fazer o filtro com uma variável, usando essas condições que estão no exemplo.

É isso!

Employee
Employee

Re: Filtros em Expressões e Dimensões

Deve ser a sexta-feira... não entendi realmente seu requerimento

williamjr
New Contributor II

Re: Filtros em Expressões e Dimensões

Basicamente, fazer isso aqui funcionar para a dimensão BD_NN_REFERENCIA, que é uma data.

Acho que a partir disso eu resolvo o resto...

=if(GetSelectedCount(BD_NN_ANOMES) > 1,

  if (Right(GetFieldSelections(BD_NN_ANOMES),7) > Text('$(vAnoMesAtual)'),

   Sum({<BD_NN_ANOMES={'$(vAnoMesAtual)'}>}BD_NN_USED_REAL),

   Sum(BD_NN_USED_REAL)

    )

  ,

  Sum({<BD_NN_ANOMES={'$(=if(GetSelectedCount(BD_NN_ANOMES) > 0,

  if(GetFieldSelections(BD_NN_ANOMES) > Text('$(vAnoMesAtual)'),

  Text('$(vAnoMesAtual)'),

  GetFieldSelections(BD_NN_ANOMES)

    ),

  Text('$(vAnoMesAtual)')

    )

    )'

  }

  >}

  BD_NN_USED_REAL)

   )

Penso que usando essa sintaxe na dimensão, talvez não precise repetir para as expressões.

Employee
Employee

Re: Filtros em Expressões e Dimensões

Já conseguiu solucionar? Se sim, marque uma das respostas como "Correta" e nos ajude a manter os foruns organizados

Not applicable

Re: Filtros em Expressões e Dimensões

Prezados

Boa noite.

Peguei carona no tópico pois estou atravessando o mesmo problema, preciso fixar seleção  pelo set analysis, porém exibindo o valor original da dimensão (sem função ou cálculo), pelo que entendi não existe como usar a expressão com a seleção sem preceder uma função (sum, count e etc).

Vi fazerem menção sobre as funções concat() e only(), como um arranjo para replicar os valores originais e promover a seleção via expressão, é isso ?

Gratoo

cesaraccardi
Valued Contributor

Re: Filtros em Expressões e Dimensões

Ola Sandro.

O set analysis so pode ser aplicado dentro de funcoes de agregacao: Sum, Count, Avg, Concat, Only, etc... Se voce pretende fixar uma selecao em uma tabela, ao filtrar as expressoes automaticamente estara filtrando as dimensoes (nao precisa adicionar o filtro nas dimensoes).

Abracos,

Cesar

Not applicable

Re: Filtros em Expressões e Dimensões

Olá Cesar

Obrigado pela disponibilidade amigo.

Então, acho que não me fiz claro, peço desculpas. Quis dizer o seguinte, muitas vezes em lugar de uma função de agregação precisamos somente utilizar operadores chamando o próprio valor da dimensão ex: =(VLR_VENDA*.0.50), porém nos vem também em paralelo, a necessidade de que um grupo de seleções seja feita por traz dessa operação, entende ?  ai fiz a pergunta de calouro, será que podemos por a seleção antes dessa operação {<1 dimensao={'"}>}

cesaraccardi
Valued Contributor

Re: Filtros em Expressões e Dimensões

Sem problemas Sandro.

Acho que voce quis dizer o "proprio valor do campo", certo? Por que VLR_VENDA normalmente nao seria uma dimensao e sim uma medida. Quando voce usar o campo como medida em uma tabela ou grafico sempre utilizara uma agregacao: SUM(VLR_VENDA), no caso de querer multiplicar os valores individuais por 0.50 deve fazer dentro da agregacao: SUM(VLR_VENDA*0.50), ai nesse caso e so adicionar o set analysis para fixar as selecoes:

SUM({1<dimensao={""}>} VLR_VENDA*0.50)