Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour Tout le monde,
Voila j'ai un petit probleme à creer une expression pour cacluler ceci:
J'ai trois tables : Action : Id_Action, Date_Action, Id_Personne, Date_Fin_Action.
Personne : Id_Personne , Nom.
Reservation Id_reservation, Id_Personne, date_Reservation ... etc.
Pour chaque action:
1- je veux calculer le nombre de personne qui ont reçu l'action avec cette exepression (Count(DISTINCT Action.Id_Personne))
2- le nombre de réservations effectués par ces personne qui ont reçu l'action mais avec Date_Action<Date_Reservation<= Date_Fin_Action.
J'ai un petit probleme à créer la deuxieme expression.
Merci pour votre aide.
Cordialement.
Bonjour.
essaie Ceci;
Dans l'editeur de script:
Reservation:
Load
Id_reservation,
Id_Personne,
date_Reservation
from table_Reservation;/// chemin d'accès à definir
//// Introduisons la date de réservation dans la table Action
Reservation_Map:
load
Id_Personne,
date_Reservation
Resident Reservation;
Action :
Load
Id_Action,
Date_Action,
Id_Personne,
ApplyMap(' Reservation_Map' ,Id_Personne,null()) as date_Reservation_Action;
Date_Fin_Action
From table ; /// chemin d'accès à definir
Action2:
Load
Id_Action,
Date_Action,
Id_Personne,
date_Reservation_Action;
if(Date_Action<Date_Reservation and Date_Reservation<= Date_Fin_Action,Id_Personne,null()) as Id_Personne_Resev_Action,
Date_Fin_Action
Resident Action;
Drop Table Action;
Personne :
Load
Id_Personne ,
Nom
From table_Personne; // chemin d'accès à definir
Dans l'interface graphique:
Faire: =Count(distinct Id_Personne_Resev_Action) au niveau des objets: un objet text par exemple;
Bonjour,
Pour faire ça et pour plus tard, dès que tu as une notion de Date Début - Date Fin
il faudra très souvent pour ne pas dire toujours utiliser la fonction IntervalMatch.
Cdlt,
=count({$<Date_Action<{Date_Reservation},Date_Reservation<={Date_Fin_Action}>}Id_reservation)
mais si tu as un exemple de data ça sera plus simple
Bonjour,
Merci pour votre réponse, mais serait il possible d'ecrire l'expression dans la réponse car j'arrive pas à ouvrir des projet de d'autres personen vue que j'utilise la version d'évaluation de QlikView.
Merci d'avance.
Merci pour votre réponse, mais j'ai pas trés bien compris l'expression.
Au fait mon but et de calculer le count(id_reservation) quand Date_Action<Date_Reservation and Date_Reservation<=Date_Fin_Action.
Ese ce que cette partie de l'expression : {$<Date_Action<{Date_Reservation},Date_Reservation<={Date_Fin_Action}>}
joue le role d'un filtre? et pour quoi vous avez utiliser $?
Merci d'avance
cette expression utilise ce qu'on appel les SET ANALYSIS, c'est l'équivalent d'un filtre
et le signe $ c'est pour désigner la selection active uniquement mais tu peux utiliser le 1 à la place du $ pour désigner tous les enregistrements.
plus de détails ici : http://community.qlik.com/docs/DOC-4889
Bonjour.
essaie Ceci;
Dans l'editeur de script:
Reservation:
Load
Id_reservation,
Id_Personne,
date_Reservation
from table_Reservation;/// chemin d'accès à definir
//// Introduisons la date de réservation dans la table Action
Reservation_Map:
load
Id_Personne,
date_Reservation
Resident Reservation;
Action :
Load
Id_Action,
Date_Action,
Id_Personne,
ApplyMap(' Reservation_Map' ,Id_Personne,null()) as date_Reservation_Action;
Date_Fin_Action
From table ; /// chemin d'accès à definir
Action2:
Load
Id_Action,
Date_Action,
Id_Personne,
date_Reservation_Action;
if(Date_Action<Date_Reservation and Date_Reservation<= Date_Fin_Action,Id_Personne,null()) as Id_Personne_Resev_Action,
Date_Fin_Action
Resident Action;
Drop Table Action;
Personne :
Load
Id_Personne ,
Nom
From table_Personne; // chemin d'accès à definir
Dans l'interface graphique:
Faire: =Count(distinct Id_Personne_Resev_Action) au niveau des objets: un objet text par exemple;
Ahh ouii donc je ne charge que les ligne qui respectent la condition.
Merci pour votre aide