Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
esbaptista1974
Not applicable

Somar valor de tabela não interligada

Bom dia Pessoal,

Esotu com mais um problema.

Gostaria de somar as vendas filtradas com dados de outra tabela, não interligadas.

vendas:

ano

mes

qtd_atendida

peca_original_lista

garantia:

gara_ano

gara_mes

gara_peca_original

Como a formula abaixo, ele traz todas as colunas iguais, nao filtra pela peça, que é a dimensao do gráfico.

=if(GetSelectedCount(Gara_Ano)>0 and GetSelectedCount(Gara_Mês)>0,

    sum( {1<Ano={"$(=Only (Gara_Ano))"}, Mês={"$(=Only (Gara_Mês))"} >} Qtd_Atendida),

    sum( {1<Ano={"$(=Only (Gara_Ano))"} >} Qtd_Atendida))

E desta forma (tentando utilizar a dimensao para filtrar) nao traz nada:

=if(GetSelectedCount(Gara_Ano)>0 and GetSelectedCount(Gara_Mês)>0,

    sum( {1<Peca_Original_Lista={"$(=(Gara_Peca_Original))"}, Ano={"$(=Only (Gara_Ano))"}, Mês={"$(=Only (Gara_Mês))"} >} Qtd_Atendida),

    sum( {1<Peca_Original_Lista={"$(=(Gara_Peca_Original))"}, Ano={"$(=Only (Gara_Ano))"} >} Qtd_Atendida))

Outro galho, se seleciono mais de um ano ou mês para tudo.

Alguem tem uma solucao pra isso?

8 Replies
fernando_tonial
Not applicable

Re: Somar valor de tabela não interligada

Elton,

Ao invés do Only você pode utilizar o Max, assim você pode retirar o If que tem na sua expressão e resolve o problema de selecionar mais de um mês, mas nesse caso, sempre será o maior mes e o maior ano.

Caso você queira comparar mais meses ou anos, você pode utilizar o Concat no lugar do max, mas caso não haja seleção nos campos ele buscará todos os valores.

sum( {1<Ano={$(=Max (Gara_Ano))}, Mês={$(=Max (Gara_Mês))} >} Qtd_Atendida)

sum( {1<Ano={$(=Max(Gara_Ano))}, Mês={$(=Concat(Distinct Gara_Mês,','))} >} Qtd_Atendida)

esbaptista1974
Not applicable

Somar valor de tabela não interligada

Ola Fernando,

vc diz assim:

=sum( {1<Peca_Original_Lista={"$(=Concat (Distinct Gara_Peca_Original))"}, Ano={"$(=Concat (Distinct Gara_Ano))"}, Mês={"$(=Concat (Distinct Gara_Mês))"} >} Qtd_Atendida)

Nao trouxe nada.

fernando_tonial
Not applicable

Re: Somar valor de tabela não interligada

Tenta assim:

=sum( {1<Peca_Original_Lista={$(=Concat (Distinct Gara_Peca_Original,','))}, Ano={$(=Concat (Distinct Gara_Ano,','))}, Mês={$(=Concat (Distinct Gara_Mês,','))} >} Qtd_Atendida)

Você pode ver o exemplo que fiz e esta disponiível no post anterior.

esbaptista1974
Not applicable

Somar valor de tabela não interligada

Grande Fernando,

Eu ja tinha visto e copiado do seu exemplo e mesmo assim nao rolou.

Fiz um screen do meu teste, veja que os filtros estao la, mas nao executa a expressao.

Outra coisa, eu gostaria que a expressao pega-se  a 'peca' da dimensao do grafico e nao da selecao.

Estou bem perdido... mas impressionado com as coisas que o qv faz.tela001 2012-04-12 13.35.jpg

fernando_tonial
Not applicable

Re: Somar valor de tabela não interligada

Tenta assim para a peça

Peca_Original_Lista={$(=Concat (Distinct Chr(39)&Gara_Peca_Original&Chr(39),','))}

esbaptista1974
Not applicable

Somar valor de tabela não interligada

nao tem jeito, a unica forma q eu consegui fazer foi linkando na carga o campo peca_original, mas ai da outros galhos...

esbaptista1974
Not applicable

Re: Somar valor de tabela não interligada

Fiz um exemplo para demonstrar minha dúvida... qq dica será muito bem-venda.

Na última coluna da planilha de garantias eu preciso somar a quantidade de peças vendidas,

com a ajuda do Tonial eu consegui trabalhar com anos/meses em tabelas diferentes (muito obrigado Tonial)

mas nao consigo fazer com que o campo Peca_Original seja selecionada de acordo com o

conteudo da primeira coluna (dimensao).

Se selecionar uma peca, a tabela da certo, mas eu gostaria de fazer para todas as peças com garantias

Veja na 3a coluna que o Only() traz facil o conteudo da primeira mas nao 'entra' no set analises.

Muito obrigado a todos,

fernando_tonial
Not applicable

Re: Somar valor de tabela não interligada

Elton,

O problema esta na sua dimensão para o calculo, pois o QlikView sempre leva em consideração.

Você pode colocar o campo Gara_Qtd na tabela que tem o campo Qtd_Atendida.

Abraços,

Tonial.