Qlik Community

Ask a Question

Groupe des Utilisateurs Francophones

Announcements
Our next Qlik Insider session will cover new key capabilities. Join us August 11th REGISTER TODAY
cancel
Showing results for 
Search instead for 
Did you mean: 
flochi75
Creator III
Creator III

syntaxe set analysis résultat incohérent

Bonjour, j'essaie de calculer et suivre nn taux de dossiers (NUMAHO) pour lesquels le champ CODE_MEDTT est exclusivement à "Absent". En effet, pour certains NUMAHO, ils peuvent contenir "Absent", puis un code numérique :Capture.JPG

 

J'ai donc utilisé cette expression : 

count(distinct{<ANNEE_CPAGE={$(=max(ANNEE_CPAGE))},AGE={">16"},NUMAHO ={"=only(CODE_MEDTT)='Absent"}>} NUMAHO)
/
count(distinct{<ANNEE_CPAGE={$(=max(ANNEE_CPAGE))},AGE={">16"}>} NUMAHO)

 

Cela semble fonctionner, mais les résultats pour l'année en cours semblent  aberrants comparés aux autres années et surtout, ils changent si on sélectionne une autre année :

Capture2.JPG

Capture3.JPG

Merci pour votre aide

Florent

1 Solution

Accepted Solutions
flochi75
Creator III
Creator III
Author

Du coup, je l'ai fait en script de chargement :

 

TABLE_FIN:
load*,
if(len(TRAISJR)=0, 'Absent',TRAISJR) as CODE_MEDTT,
age(DATEHO,DATNH01) as AGE
Resident DOSS_CPAGE;

drop table DOSS_CPAGE;

load IPPK,
if(only(CODE_MEDTT)='Absent',1,0) as FlagMTT
resident TABLE_FIN group by IPPK;

 

et en expression : 

count(distinct{<ANNEE_CPAGE={$(=max(ANNEE_CPAGE))},AGE={">16"},FlagMTT ={"1"}>} NUMAHO)
/
count(distinct{<ANNEE_CPAGE={$(=max(ANNEE_CPAGE))},AGE={">16"}>} NUMAHO)

 

ça semble marcher..

 

merci.

View solution in original post

4 Replies
sfatoux72
Partner
Partner

C’est normal, ton expression Only() ne tiens pas compte de l’année et de l’âge , il faut la modifier comme ceci :
... NUMAHO ={"=only({<ANNEE_CPAGE={$(=max(ANNEE_CPAGE))}, AGE={">16"}>} CODE_MEDTT)='Absent"} ...
flochi75
Creator III
Creator III
Author

Bonjour Sébastien,

en laissant la 1ère partie du set analysis ?

 

flochi75
Creator III
Creator III
Author

du coup j'ai une erreur de syntaxe...

flochi75
Creator III
Creator III
Author

Du coup, je l'ai fait en script de chargement :

 

TABLE_FIN:
load*,
if(len(TRAISJR)=0, 'Absent',TRAISJR) as CODE_MEDTT,
age(DATEHO,DATNH01) as AGE
Resident DOSS_CPAGE;

drop table DOSS_CPAGE;

load IPPK,
if(only(CODE_MEDTT)='Absent',1,0) as FlagMTT
resident TABLE_FIN group by IPPK;

 

et en expression : 

count(distinct{<ANNEE_CPAGE={$(=max(ANNEE_CPAGE))},AGE={">16"},FlagMTT ={"1"}>} NUMAHO)
/
count(distinct{<ANNEE_CPAGE={$(=max(ANNEE_CPAGE))},AGE={">16"}>} NUMAHO)

 

ça semble marcher..

 

merci.

View solution in original post