Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
osatchuk_ivan
New Contributor III

Expressão com função Sum() retornando valor errado

Olá!

Estou desenvolvendo uma aplicação onde eu preciso mostrar em um objeto texto a soma dos valores de uma coluna, porém a função SUM() está retornando um valor diferente do correto.

Estou usando a expressão =Num(Sum(VALOR_VIAGEM),'R$ #.##0,00')

Retornado o seguinte resultado:

sum.png

Quando o correto seria o total da coluna VALOR_VIAGEM

plan.png

Alguma ideia de como posso resolver isso?

1 Solution

Accepted Solutions
tiagocardoso
Contributor

Re: Expressão com função Sum() retornando valor errado

Boa tarde Ivan, se for simples como estou pensando, você só tem o Responsável 1, certo?

Por favor, tente as seguintes expressões:

Num(Sum( DISTINCT VALOR_VIAGEM),'R$ #.##0,00')

OU

Num(Sum( {<Responsável = {'Responsável 1'}>} VALOR_VIAGEM),'R$ #.##0,00')

OU

Num(Sum( {<Responsável = {'Responsável 1'}>} DISTINCT VALOR_VIAGEM),'R$ #.##0,00')

OU

Disponibilize um exemplo para a comunidade lhe ajudar melhor.

OU

Caso não seja esta sua dimensão (na tabela está como sendo essa [Responsável = Responsável 1], por isso tem esse valor como saída), pode nos ajudar dizendo qual a dimensão certa para a realização do cálculo.


Espero que lhe seja útil.


Att,

Tiago Cardoso.

7 Replies

Re: Expressão com função Sum() retornando valor errado

Ivan, provavelmente você possui valores duplicadores, triplicados em sua base. Por essa razão o somatório apresenta um valor diferente.

Verifique sua base para identificar o problema

mauroponte
Contributor II

Re: Expressão com função Sum() retornando valor errado

Ivan concordo com o Yuri.

Crie uma tabala igual a que você colocou no post, mas ao inves do campo de valor_viagem coloque a formula que você colocou no objeto texto. Assim você irá ver se tem mais de um valor na Base.

tiagocardoso
Contributor

Re: Expressão com função Sum() retornando valor errado

Boa tarde Ivan, se for simples como estou pensando, você só tem o Responsável 1, certo?

Por favor, tente as seguintes expressões:

Num(Sum( DISTINCT VALOR_VIAGEM),'R$ #.##0,00')

OU

Num(Sum( {<Responsável = {'Responsável 1'}>} VALOR_VIAGEM),'R$ #.##0,00')

OU

Num(Sum( {<Responsável = {'Responsável 1'}>} DISTINCT VALOR_VIAGEM),'R$ #.##0,00')

OU

Disponibilize um exemplo para a comunidade lhe ajudar melhor.

OU

Caso não seja esta sua dimensão (na tabela está como sendo essa [Responsável = Responsável 1], por isso tem esse valor como saída), pode nos ajudar dizendo qual a dimensão certa para a realização do cálculo.


Espero que lhe seja útil.


Att,

Tiago Cardoso.

tiagocardoso
Contributor

Re: Expressão com função Sum() retornando valor errado

Não descartando, claro, a hipótese de se ter dados duplicados e/ou chaves sintéticas para estragar seus cálculos.

tiagocardoso
Contributor

Re: Expressão com função Sum() retornando valor errado

41.100 / 6.850 dá 6, prováveis dados duplicados, como os amigos acima já relataram.

osatchuk_ivan
New Contributor III

Re: Expressão com função Sum() retornando valor errado

Realmente o problema é relacionado a minha base, encontrei e estou tratando.

Muito obrigado a todos pela ajuda,

Abraço!

jonas_rezende
Valued Contributor

Re: Expressão com função Sum() retornando valor errado

Ivan.

Numa agregação você poderá chegar ao valor desejado, mas seria interessante resolver o possível problema no modelo de dados ou a redundância dos registros em tabela, como orientado pelos colegas anteriormente.

Num(Sum(

              Aggr(

                    Sum(VALOR_VIAGEM),

                    MES,

                    DESCRICAO_AREA,

                    RESPONSAVEL

              )

          ),

'R$ #.##0,00')

Espero ter ajudado!