Skip to main content
Announcements
Introducing Qlik Answers: A plug-and-play, Generative AI powered RAG solution. READ ALL ABOUT IT!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Mostrar datas anteriores ao período selecionado

Oi pessoal,

já estou há quase 20 dias quebrando a cabeça com os seguinte problema:

Tenho a seguinte tabela

    

IDPaisDataMovimentoValor
1Brasil15/09/2005Intermediário54
2Brasil16/09/2005Intermediário95
3Peru25/01/2006Intermediário14
4Brasil21/08/2008Inicial32
5França16/08/2006Inicial65
6EUA24/01/2008Inicial74
7Alemanha14/08/2008Inicial21
8Brasil05/08/2009Final22
9Brasil01/01/2012Final58
10Áustria01/02/2012Intermediário78
11Brasil01/03/2012Inicial55
12Brasil12/08/2006Intermediário36
13Argentina31/03/2012Final84
14Brasil01/04/2012Final12

Fiz as seguintes caixa de seleção Mês e Ano:

Mês    

Jan

Fev

Mar

Abr

Ago

Set

Ano

2005

2006

2008

2012

Gostaria de, por meio de um set analysis, obter a seguinte informação quando se escolher Mês: AGO e Ano: 2008

Retornar o somatório de VALOR do País BRASIL anteriores à data selecionada cujo movimento seja "INICIAL" ou "INTERMEDIÁRIO".

Ou seja, retornar as linhas: 1, 2, 4 e 12, o que daria o total de: 217.

Tentei o comando abaixo, mas não deu certo. Só retorna os valores de dentro do mês de AGO.

= Sum({$<Data =  {'<=$(=vMax_Data)'}> * $<[Movimento]={'Inicial' , 'Intermediário'} >}  Valor)

Onde vMax_Data = Max(Data)

Agradeço demais a ajuda.

Obrigado.

1 Solution

Accepted Solutions
el_aprendiz111
Specialist
Specialist

Walter como estas

1- debes asegurar el valor que trae devuelve variable/vMax_Data si es el máximo de la tabla o condicionada.

** vMax_Data = Max(Data) 'where?

anexo una posible solución:

Directory;
TABLE:
LOAD ID,
Pais,
Data,
Movimento,
Valor
FROM
[Resultado10\Expected Result.xlsx]
(
ooxml, embedded labels, table is TABLE);

//ASIGNO VALOR A MI VARIABLE CONDICIONADA
DATA_MAX:
LOAD MAX(Data) AS MxData Resident TABLE Where Movimento<>'Final';
 
//CREO MI VARIABLE
LET vMax_Data = date(Peek('MxData'),'DD/MM/YYYY');

DROP Table DATA_MAX;


EN MI CHRT:

= Sum({$<Data  = {'<$(=vMax_Data)'}> * $<[Movimento]={'Inicial' , 'Intermediário'} >}  Valor)

Saludos,

View solution in original post

2 Replies
el_aprendiz111
Specialist
Specialist

Walter como estas

1- debes asegurar el valor que trae devuelve variable/vMax_Data si es el máximo de la tabla o condicionada.

** vMax_Data = Max(Data) 'where?

anexo una posible solución:

Directory;
TABLE:
LOAD ID,
Pais,
Data,
Movimento,
Valor
FROM
[Resultado10\Expected Result.xlsx]
(
ooxml, embedded labels, table is TABLE);

//ASIGNO VALOR A MI VARIABLE CONDICIONADA
DATA_MAX:
LOAD MAX(Data) AS MxData Resident TABLE Where Movimento<>'Final';
 
//CREO MI VARIABLE
LET vMax_Data = date(Peek('MxData'),'DD/MM/YYYY');

DROP Table DATA_MAX;


EN MI CHRT:

= Sum({$<Data  = {'<$(=vMax_Data)'}> * $<[Movimento]={'Inicial' , 'Intermediário'} >}  Valor)

Saludos,

Not applicable
Author

Obrigado pela ajuda.

Tentarei o sugerido.