Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
fabianayuka
Enthusiast
Enthusiast

Script - Nested Aggregation

Estou tentando calcular diretamente no script, mas não estou conseguindo. Coloquei o exemplo abaixo (que está errado) só para vocês tentarem entender o que quero fazer:

[PERCENTUAL_ESFORCO]:
LOAD
ID_PROJETO,
if(META=0, META, If(RESULTADO/META>1,1, RESULTADO/META)) AS PERC_ESFORCO_PARC,

if(META=0, 0, Sum(PERC_ESFORCO_PARC)) / (If(META<>0, count(ID_PROJETO),1)) AS PERC_ESFORCO_TOT,

Sum(PERC_ESFORCO_TOT)/(if(NO_CAMADA<>'Projetos Internos', count(NO_CAMADA),1)) AS PERC_ESFORCO_TATICO

Resident tmpData GROUP BY ID_PROJETO, NO_CAMADA;

 

Desde já, agradeço!

2 Replies
RafaMartins
Creator II
Creator II

Boa tarde,

Aparentemente na primeira função você tem um problema logico que deve estar te devolvendo os mesmo valores de campo, por exemplo se vc pede para trazer a META no ponto 'A' pois a meta de é 0 ele vai retornar zero pois 'META A' = 0 então onde for zero ele não realiza o segundo if, que também só vai te trazer se a o resultado for menor que 1, aparentemente é isso.

No segundo caso provavelmente sua expressão é invalida, talvez com um aggr de para resolver, porem acho mias viável fazer por setanalysis.

Se puder disponibilizar um modelo ficaria mais fácil buscar um solução

afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP

Fabiana,

Tens um group by mas tem campos sem agregação

O if tem que mudar

if(SUM(META)=0, 0, If(sum(RESULTADO)/sum(META)

A META sem agregação e outros campos sem agregação (sum,max,min,....) é que da o erro

 

furtado@farolbi.com.br