Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Posting on Qlik Community is temporarily paused for some users. Thank you for patience and we'll update you soon!
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Igornar TOTAIS em tabela dinâmica

Pessoal, boa tarde!

Minha app calcula quantidade de itens e seus respectivos valores em excesso ou falta, por loja.

Para exibir estes valores em gráfico tabela simples eu utilizo a opção SOMAR LINHAS.

Mas preciso que seja exibido em tabela dinâmica para o usuário expandir a nível de produto apenas caso queira.

Porém, quando mudo para dinâmica ele deixa de SOMAR LINHAS e exibe o TOTAIS, conforme imagem abaixo.

Simples.PNG

Dinâmica.PNG

É possível ignorar esse totais e forçar um SOMATÓRIO DE LINHAS? Quando ele faz por TOTAIS, o valor é errado.

Ou então, é possível na tabela simples eu trazer somente os valores sem eu precisar incluir a dimensão de produto?

Poderiam me ajudar, por favor?

Segue qvw em anexo.

Obrigada!

1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

Acho que a princípio consegui resolver usando AGGR.

if(

(SUM(AGGR(fabs(if((((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}>}VENDA_NUM_ITENS) / Count({<TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}, VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura) - (Sum(ESTOQUE_QUANTIDADE) ) <= 0,

(((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}>}VENDA_NUM_ITENS) / Count({<TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}, VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura) - (Sum(ESTOQUE_QUANTIDADE) ),0

)),FILIAL_NOME, %ID_PRODUTO, PRODUTO_NOME))) < 0,

0,

(SUM(AGGR(fabs(if((((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}>}VENDA_NUM_ITENS) / Count({<TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}, VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura) - (Sum(ESTOQUE_QUANTIDADE) ) <= 0,

(((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}>}VENDA_NUM_ITENS) / Count({<TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}, VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura) - (Sum(ESTOQUE_QUANTIDADE) ),0

)),FILIAL_NOME, %ID_PRODUTO, PRODUTO_NOME)))

)

Obrigada pela atenção, Thiago!!

View solution in original post

6 Replies
Thiago_Justen_
MVP
MVP

Pamela, por uma limitação minha não consigo abrir seu qvw. Mas talvez isso seja útil:

Na sua expressão de OTB Excesso coloque o seguinte:

If(Dimensionality()=0,SUA_EXPRESSAO_PARA_OTB_EXCESSO

)

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
Anonymous
Not applicable
Author

Thiago,

não funcionou, ficou nulo.

Só precisaria que na tabela dinâmica exibisse o valor que tá na tabela simples.

Ou que mesmo na tabela simples exibisse esse valor mesmo quando eu retirasse as dimensões ID_PRODUTO e PRODUTO_NOME

Thiago_Justen_
MVP
MVP

Qual a expressão usada para cálculo de OTB Excesso?

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
Anonymous
Not applicable
Author

OTB Excesso

=fabs(if([Estoque Plan.] - [Estoque Loja] < 0,

[Estoque Plan.] - [Estoque Loja]

))

[ESTOQUE PLANEJADO]

Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, %ID_TEMPO={">=$(=Addmonths(max(%ID_TEMPO),-3))"}>}VENDA_NUM_ITENS) / Count({<%ID_TEMPO={">=$(=Addmonths(max(%ID_TEMPO),-3))"}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura)


[ESTOQUE LOJA]

(Sum( {<TEMPO_ANO= , TEMPO_DIA=, TEMPO_SEMANA=, TEMPO_MES= >} ESTOQUE_QUANTIDADE))



A expressão completa fica como:

=if(

((((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, %ID_TEMPO={">=$(=Addmonths(max(%ID_TEMPO),-3))"}>}VENDA_NUM_ITENS) / Count({<%ID_TEMPO={">=$(=Addmonths(max(%ID_TEMPO),-3))"}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura)

-

(Sum( {<TEMPO_ANO= , TEMPO_DIA=, TEMPO_SEMANA=, TEMPO_MES= >} ESTOQUE_QUANTIDADE))) <= 0,

(((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, %ID_TEMPO={">=$(=Addmonths(max(%ID_TEMPO),-3))"}>}VENDA_NUM_ITENS) / Count({<%ID_TEMPO={">=$(=Addmonths(max(%ID_TEMPO),-3))"}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura)

-

(Sum( {<TEMPO_ANO= , TEMPO_DIA=, TEMPO_SEMANA=, TEMPO_MES= >} ESTOQUE_QUANTIDADE)) , 0

)

Anonymous
Not applicable
Author

Na tabela Simples, temos todos os produtos naquela loja.

Cada produto tem um valor CUE. Em VALOR OTB EXCESSO, por exemplo, pego a quantidade em OTB EXCESSO e multiplico pelo seu CUE. Assim, o total está ok (lembrando que utilizei o SOMATÓRIO DE LINHAS).

Porém, outro jeito de exibir esse gráfico sem ser a tabela dinâmica, seria trazer a tabela simples sem as dimensões de produto mas trazendo o mesmo somatório, então tentei um AGGR, pra ele agregar e somar indivualmente por produto e me trazer o total, mas não deu certo.

SUM ( AGGR ( [OTB excesso] *  max({<VENDA_NUM_ITENS={1}>}VENDA_VALOR_CUSTO_VENDA_CUE), SEGMENTO, REPRESENTANTE))

Anonymous
Not applicable
Author

Acho que a princípio consegui resolver usando AGGR.

if(

(SUM(AGGR(fabs(if((((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}>}VENDA_NUM_ITENS) / Count({<TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}, VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura) - (Sum(ESTOQUE_QUANTIDADE) ) <= 0,

(((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}>}VENDA_NUM_ITENS) / Count({<TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}, VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura) - (Sum(ESTOQUE_QUANTIDADE) ),0

)),FILIAL_NOME, %ID_PRODUTO, PRODUTO_NOME))) < 0,

0,

(SUM(AGGR(fabs(if((((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}>}VENDA_NUM_ITENS) / Count({<TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}, VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura) - (Sum(ESTOQUE_QUANTIDADE) ) <= 0,

(((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}>}VENDA_NUM_ITENS) / Count({<TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}, VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura) - (Sum(ESTOQUE_QUANTIDADE) ),0

)),FILIAL_NOME, %ID_PRODUTO, PRODUTO_NOME)))

)

Obrigada pela atenção, Thiago!!