Skip to main content
Announcements
Live today at 11 AM ET. Get your questions about Qlik Connect answered, or just listen in. SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
roberto_junior
Contributor II
Contributor II

Trazer 1 na última versão.

Prezados bom dia,

Estava tentando criar uma medida que me traga a última versão de uma tabela, usei essa expressão Count(Aggr(Max([Data Mudança]),version,[Cod. Prospecção])) mais não traz o resultado esperado conforme tabela abaixo.


Preciso que me traga 1 somente na linha da última versão ou da última data de mudança.


OBS: Qlik Sense.

     

Cod. ProspecçãoversionStatusData MudançaData ContratoCount(Aggr(Max([Data Mudança]),version,[Cod. Prospecção]))Resultado esperado
521pro-07/06/2018 00:000 0
522free-07/06/2018 00:000 0
523acc07/08/2018 08:3407/06/2018 00:001 0
524com15/08/2018 17:0907/06/2018 00:0011
531pro06/08/2018 08:0008/06/2018 00:001 0
532free 09/06/2018 00:000 0
533com18/08/2018 09:0010/06/2018 00:0011
Labels (1)
11 Replies
Thiago_Justen_

Edson,

Use:

FirstSortedValue(Version,-[Data Mudança])

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
roberto_junior
Contributor II
Contributor II
Author

thiago, ele repete o numero da versão.

Usando o exemplo somente o cod prospecção 52

Versão           FirstSortedValue(Version,-[Data Mudança])          Data mudança

1                                   0                                                                      -

2                                   0                                                                      -

3                                   3                                                         07/08/2018 08:34                 

4                                   4                                                         15/08/2018 17:09 

Thiago_Justen_

Use,

Only({<[Data Mudança]={"=FirstSortedValue(Data Mudança],-[Data Mudança])"}>}[Data Mudança])

Isso lhe retornará apenas a linha que contém data da última mudança. Se quiser isso por produto/modelo:

Aggr(Only({<[Data Mudança]={"=FirstSortedValue(Data Mudança],-[Data Mudança])"}>}[Data Mudança]),DIMENSAO_AGRUPAMENTO)

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

Para colocar na fórmula que você quer a última versão, tente usar assim:

Count({<version={'1'}>}  Data Mudança)


O que isso faz:


{} -> cria um filtro de dados

{<version={'1'}>} -> faz com que o campo seguinte só aconteça aonde existe a coluna version =  1.


Count({<version={'1'}>}  Data Mudança) -> Coleta os valores Data Mudança e conta quantos campos existem em que version=1.


Para visualizar melhor. faça uma tabela e coloque a expressão como uma das colunas :

{<version={'1'}>}  Data Mudança


assim você poderá observar o resultado e se é o esperado.

roberto_junior
Contributor II
Contributor II
Author

Funciona da forma que você mencionou mais preciso que fique igual a tabela abaixo

Only({<[Data Mudança]={"=FirstSortedValue(Data Mudança],-[Data Mudança])"}>}[Data Mudança])


O que seria a dimensão agrupamento?

Aggr(Only({<[Data Mudança]={"=FirstSortedValue(Data Mudança],-[Data Mudança])"}>}[Data Mudança]),DIMENSAO_AGRUPAMENTO)

    

Cod. ProspecçãoversionStatusData MudançaData ContratoResultado esperado
521pro-07/06/2018 00:00
522free-07/06/2018 00:00
523acc07/08/2018 08:3407/06/2018 00:00
524com15/08/2018 17:0907/06/2018 00:001
531pro06/08/2018 08:0008/06/2018 00:00
532free 09/06/2018 00:00
533com18/08/2018 09:0010/06/2018 00:001
Thiago_Justen_

No seu caso então, a dimensão de agrupamento será [Cod. Prospecção]:

Aggr(Only({<[Data Mudança]={"=FirstSortedValue(Data Mudança],-[Data Mudança])"}>}[Data Mudança]),[Cod. Prospecção])


Se isso não funcionar como espera, pode alterar para:


Only({<[Data Mudança]={"=FirstSortedValue(Data Mudança],-Aggr([Data Mudança],[Cod. Prospecção]))"}>}[Data Mudança])

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
roberto_junior
Contributor II
Contributor II
Author

Nessa a coluna fica -

Aggr(Only({<[Data Mudança]={"=FirstSortedValue(Data Mudança],-[Data Mudança])"}>}[Data Mudança]),[Cod. Prospecção])


Nessa todas as linhas fica assim -

Only({<[Data Mudança]={"=FirstSortedValue(Data Mudança],-Aggr([Data Mudança],[Cod. Prospecção]))"}>}[Data Mudança])

roberto_junior
Contributor II
Contributor II
Author

Não consegui o resultado esperado.

O que preciso é que apareça a última versão de cada cod prospecção.

Ou a última data do campo data mudança.

Thiago_Justen_

Teste apenas com:

FirstSortedValue(Data Mudança],-Aggr([Data Mudança],[Cod. Prospecção]))

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