Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
daniel_neves_so
Contributor II
Contributor II

Duvida com Variável e Tabela Dinâmica

Bom dia Pessoal,

Estou tendo dificuldade para mostrar o valor da Variável em uma Tabela Dinâmica, o valor só é apresentado quando faço a seleção no campo 'KpiExpressaoPropriaDiario', como podemos ver na imagem abaixo, a coluna 'Vlr' precisa apresentar o mesmo valor da coluna '08/ago' mas a mesma só apresenta o valor quando o campo é selecionado.

img1.png

img2.png

Variáveis:

Var vCallExpr: $($1($2))

var vKpiAdmitidosDiario:  num(sum({<Dia=, Mes=, PERIODO_PK={$1}>} Valor), '#.##0')

Expressão coluna Vlr: $(vCallExpr($(=only(KpiExpressaoPropriaDiario)), $(vDiaAtual)))

Labels (1)
1 Solution

Accepted Solutions
daniel_neves_so
Contributor II
Contributor II
Author

Bom dia Mauro tudo bem ?

Então agradeço vossa ajuda, mas não atendeu minha necessidade. Mas consegui de outra forma!!!

Criei uma variável para cada expressão que será usada e fiz o uso de um If() dessa forma consegui resolver o meu problema.

Novamente agradeço a todos que responderam!!

View solution in original post

9 Replies
nicolett_yuri

Daniel, forneça um QVW de exemplo.

Anonymous
Not applicable

Bom dia,

$(=only(KpiExpressaoPropriaDiario) -> provavelmente está sendo calculado "fora" da tabela, então ta trazendo null quando vc não tem um campo selecionado.


tente deixar apenas:  $(vCallExpr(only(KpiExpressaoPropriaDiario), $(vDiaAtual)))


se não der certo, poste um qvw para fazermos uns testes.

daniel_neves_so
Contributor II
Contributor II
Author

Segue arquivo de exemplo.

daniel_neves_so
Contributor II
Contributor II
Author

Rodrigo, já tentei dessa forma mas mesmo assim não mostra o resultado.

nicolett_yuri

Da forma em que foi feito, você é obrigado a selecionar o campo KpiExpressaoPropriaDiario devido ao ONLY da formula, pois este vai definir qual a expressão vai ser utilizada:

vKpiDesligadosDiario: num(sum({<Dia=, Mes=, PERIODO_PK={$1}>} Valor), '#.##0')

ou

vKpiAdmitidosDiario: num(sum({<Dia=, Mes=, PERIODO_PK={$1}>} Valor), '#.##0')

Alias, as duas expressões são as mesas. Teria sentido fazer toda essa jogada de variável se as expressões fossem diferentes.

nicolett_yuri

Isso foi feito para dar opção ao usuário de alterar a expressão de sua tabela. Se não for usado dessa forma, então não tem sentido nenhum utilizar.

daniel_neves_so
Contributor II
Contributor II
Author

Perfeito Yuri, neste caso das expressões serem idênticas não vejo a necessidade de fazer algo tão complexo.

Hoje tenho vários KPI's para serem calculados de formas diferentes, por isso fiz essa jogada com variável.

Agradeço muito sua ajuda e a do Rodrigo, Caso eu tenha sucesso na resolução dessa desse problema eu posto o exemplo.

mauroponte
Creator II
Creator II

Daniel,

Tente :

if(GetSelectedCount(KpiExpressaoPropriaDiario)=0,

num(sum({<Dia=, Mes=, PERIODO_PK={"=dimensionality ( )"}>} Valor), '#.##0'),

$(vCallExpr(

$(=only(KpiExpressaoPropriaDiario)), $(vDiaAtual)

)))

daniel_neves_so
Contributor II
Contributor II
Author

Bom dia Mauro tudo bem ?

Então agradeço vossa ajuda, mas não atendeu minha necessidade. Mas consegui de outra forma!!!

Criei uma variável para cada expressão que será usada e fiz o uso de um If() dessa forma consegui resolver o meu problema.

Novamente agradeço a todos que responderam!!