Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour,
Mon besoin a l'air très simple mais je n'y parviens pas : créer un champ calculé.
J'ai suivi les indications sur le site de Qlik pour créer un champ calculé mais impossible. Je suis sur Qlik sense et je ne parviens pas à trouver le bouton pour créer un champ calculé.
Quand je suis sur "Editer" et que je clique sur "Ajouter" quand je suis sur "Champs", on me revoit vers l'ajout de source de données mais ce n'est pas ce que je souhaite !
Pouvez-vous m'indiquer précisément où cela se trouve ?
Merci
tu peux par exemple ajouter aggr()
comme dans l'exemple :
l'expression est donc :
=sum(aggr(sum(distinct if(isnull([Current maturity gate]), 0,
if ([Current maturity gate] = 'G0' and today()>[G0 date],1,
if ([Current maturity gate] = 'G2' and today()>[G2 date],1,
if ([Current maturity gate] = 'G5' and today()>[G5 date],1,
if ([Current maturity gate] = 'G9' and today()>[G9 date],1,0)))))),[Project Name]))
Bonjour @Rdouto ,
est ce que tu peux partager un exemple de donnée et le calcul que tu souhaites faire ?
tu veux faire le calcul au niveau du chargement ou dans l'interface après chargement ?
Voici ce que j'aimerais mettre dans le nouveau champ :
if(isnull([Current maturity gate]), 'missing',
if ([Current maturity gate] = 'G0' and today()>[G0 date],'Late',
if ([Current maturity gate] = 'G2' and today()>[G2 date],'Late',
if ([Current maturity gate] = 'G5' and today()>[G5 date],'Late',
if ([Current maturity gate] = 'G9' and today()>[G9 date],'Late','OK')))))='Late')
Et après je pourrai avoir un indicateur avec le nombre de projet en 'Late' par exemple
J'aimerais faire le calcul dans l'interface après chargement (enfin il ne faudrait pas que j'ai à le refaire à chaque fois quand même)
est ce que tu peux partager un exemple de donnée ? avec la valeur souhaitée de l'indicateur ?
et c'est toujours mieux de faire ces calcul au niveau du chargement
Voici un exemple, j'espère que c'est assez clair :
D'accord au niveau du chargement je peux faire oui. Comment on s'y prend ?
Merci pour ton aide!
Pour donner plus de détails sur l'image que j'ai envoyée :
La seule valeur calculée est celle dans "project late or not?". Le champ "Maturity Gate" est une donnée rentrée dans le système. Et c'est la comparaison entre cette donnée et les dates rentrées qui nous dit si le projet est en retard ou pas.
J'ai donc réussi à indiquer si le projet est en retard ou pas, mais j'aimerais avoir un indicateur de cela ! Je me suis dit que passer par un champ calculé pouvait m'aider.
si tu veux il ya plusieurs solution.
par exemple tu peux faire si tu arrives à distinger les Late par :
if(isnull([Current maturity gate]), 'missing',
if ([Current maturity gate] = 'G0' and today()>[G0 date],'Late',
if ([Current maturity gate] = 'G2' and today()>[G2 date],'Late',
if ([Current maturity gate] = 'G5' and today()>[G5 date],'Late',
if ([Current maturity gate] = 'G9' and today()>[G9 date],'Late','OK')))))
tu peux faire pour l'indicateur:
=sum(if(isnull([Current maturity gate]), 0,
if ([Current maturity gate] = 'G0' and today()>[G0 date],1,
if ([Current maturity gate] = 'G2' and today()>[G2 date],1,
if ([Current maturity gate] = 'G5' and today()>[G5 date],1,
if ([Current maturity gate] = 'G9' and today()>[G9 date],1,0))))))
Résultat :
Super j'ai l'impression que ça fonctionne !
Et tu saurais me dire comment je peux rajouter un "distinct [Project Name]" car mes lignes sont répétées plusieurs fois car j'ai utilisé la fonction Subfield (si tu vois ce que je veux dire)
tu peux par exemple ajouter aggr()
comme dans l'exemple :
l'expression est donc :
=sum(aggr(sum(distinct if(isnull([Current maturity gate]), 0,
if ([Current maturity gate] = 'G0' and today()>[G0 date],1,
if ([Current maturity gate] = 'G2' and today()>[G2 date],1,
if ([Current maturity gate] = 'G5' and today()>[G5 date],1,
if ([Current maturity gate] = 'G9' and today()>[G9 date],1,0)))))),[Project Name]))
Ça fonctionne très bien ! J'avais essayé avec aggr() mais j'avais oublié de mettre le "distinct" dedans.
Merci beaucoup !
Bonne journée