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

Announcements
Talend Cloud AWS EU Scheduled Outage: Starting Tues 26 May 21:00 CEST with expected completion Wed 27 May 01:00 CEST
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Soma Condicional com Data

Meus caros, tenho uma dúvida que tenho certeza ser amadora para todos vocês porém como sou iniciante não estou conseguindo fazer.

Vi no forum porém não consegui entender como deveria fazer.

Minha dúvida é a seguinte:

Tenha uma tabela com dois campos sendo DATA_CRÉDITO e VALOR_REAL

Preciso somar o campo VALOR_REAL para todas as DATA_CRÉDITO do ano atual.

Fiz o seguinte mas sem sucesso:

Sum({<Year([DATA_CRÉDITO])= Year(Today())>}VALOR_REAL)

Agradeço desde já.

Abraços...

Labels (2)
1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

Consegui fazer.

Ficou assim SUM({1<MÊS_CREDITO={'$(#vMes)'}, ANO_CREDITO={'$(#vAno)'} >}VALOR_REAL)

Gráfico velocímetro com Mês, Dia e Ano do sistema

Muito obrigado pela ajuda.

Grande abraço

View solution in original post

16 Replies
robert_mika

Tente esta expressão:

if(Year(DATA_CRÉDITO)=Year(Today()),SUM(VALOR_REAL))

nicolett_yuri
Partner Ambassador/MVP
Partner Ambassador/MVP

A resposta do Roberto esta correta, porém nesse caso é melhor utilizar Set Analysis devido a performance.

Em seu script, crie uma variável com o valor do ano corrente, dessa forma:

LET vAno = Year(Today());

Na leitura de sua tabela, crie o campo ANO_CREDITO através da coluna DATA_CREDITO, dessa forma:

Year(DATA_CREDITO) as ANO_CREDITO,

Na expressão do gráfico:

SUM({$<ANO_CREDITO={'$(#vAno)'} >}VALOR_REAL)

Anonymous
Not applicable
Author

Carorobertmika‌, muito obrigado pela resposta.

Tentei desta forma mas me retorna valor 0.

Será por alguma inconsistência em formatos de data ?

robert_mika

Possível . Você poderia postar alguns dos seus dados , por favor?

Anonymous
Not applicable
Author

nicolett.yuri‌ muito obrigado pela resposta. Consegui e ficou desta forma:

=SUM({$<ANO_CREDITO={'$(#vAno)'} >}VALOR_REAL)/SUM({$<ANO_CREDITO={'$(#vAno)'} >}Valor_Prev)

Agora quando fui fazer para o MÊS não deu certo.

Tenho duas tabelas vinculadas sendo uma do banco Oracle que trago via SQL e outra do Excel.

No SQL fiz o seguinte:

, TO_CHAR(TO_DATE(SE5010.E5_DATA,'yyyy-mm-dd'),'MON') MÊS_CREDITO

No script que busco do Excel fiz o seguinte:

MONTH(DATA) as 'MÊS_CREDITO',

O Qlik me retornou todos os meses porém alguns repetidos. Como posso fazer para enviar esta informação para vocês ?

Anonymous
Not applicable
Author

Pelo que percebi, os dados que estou trazendo via SQL estão como texto e os dados que trago do Excel vem como data ou número.

nicolett_yuri
Partner Ambassador/MVP
Partner Ambassador/MVP

Para isso precisamos de uma porção de seus dados, pode ser que o que esteja errado seja o mês do sql

Clever_Anjos
Support
Support

Tente

SUM(if(Year(DATA_CRÉDITO)=Year(Today()),VALOR_REAL)



Anonymous
Not applicable
Author

nicolett.yuri‌ Segue os dados.

Obrigado pela ajuda.