Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour à tous
Je bute pour un problème de filtre d'une date, pourtant avec tous les exemples je n'arrive pas, cela m’énerve car c'est vraiment tout simple
Je voudrai juste remplacer mon filtre sur le champs 'End_date' par simplement plus petit que aujourd'hui (fonction today),
J'en ai essayer des formules ...
LOAD "End_date",
"Jobstatus#",
"Job_type",
"WO_Key";
SQL SELECT "End_date",
"WO_Key",
"Job_type",
"Jobstatus#"
FROM PUB."Work_order"
where "End_date"<{d '2017/10/03'} and ( "Jobstatus#" = '3' or "Jobstatus#" = '5' or "Jobstatus#" = '6' or "Jobstatus#" = '8');
une âme charitable lol ....
Bonjour Philippe,
Attention, dans votre exemple, l'instruction Where ne fait pas partie du code exécuté par Qlikview mais de la requête SQL envoyée à la source de donnée; Dans cette partie du script, les fonctions de Qlikview ne sont donc pas reconnues. Dans les instructions SQL SELECT il faut utiliser les fonctions SQL (en fonction de la source utilisée).
Une autre solution est d'enregistrer la date du jour dans une variable, puis d'utiliser la variable dans le script, à la place de la date en dur:
Let vToday = Date(Today(),'YYYY/MM/DD');
LOAD "End_date",
"Jobstatus#",
"Job_type",
"WO_Key";
SQL SELECT "End_date",
"WO_Key",
"Job_type",
"Jobstatus#"
FROM PUB."Work_order"
where "End_date"<{d '$(vToday)'} and ( "Jobstatus#" = '3' or "Jobstatus#" = '5' or "Jobstatus#" = '6' or "Jobstatus#" = '8');
Martin
Bonjour Philippe,
Attention, dans votre exemple, l'instruction Where ne fait pas partie du code exécuté par Qlikview mais de la requête SQL envoyée à la source de donnée; Dans cette partie du script, les fonctions de Qlikview ne sont donc pas reconnues. Dans les instructions SQL SELECT il faut utiliser les fonctions SQL (en fonction de la source utilisée).
Une autre solution est d'enregistrer la date du jour dans une variable, puis d'utiliser la variable dans le script, à la place de la date en dur:
Let vToday = Date(Today(),'YYYY/MM/DD');
LOAD "End_date",
"Jobstatus#",
"Job_type",
"WO_Key";
SQL SELECT "End_date",
"WO_Key",
"Job_type",
"Jobstatus#"
FROM PUB."Work_order"
where "End_date"<{d '$(vToday)'} and ( "Jobstatus#" = '3' or "Jobstatus#" = '5' or "Jobstatus#" = '6' or "Jobstatus#" = '8');
Martin
dans ce cas, c'est du pur SQL (ne pas utiliser de fonction QlikView dans une requête SQL)
essaye avec la clause quête suivante :
WHERE "End_date" = GetDate() AND "Jobstatus#" in ('3','5','6','8')
Bonjour Martin, merci pour votre réponse, j'ai du effectuer la manœuvre mais il faut aussi changer l’interprétation de la date car la requête n'accepte que le format YYYYMMDD et non l'inverse.
SET DateFormat='YYYY/MM/DD'
let vToday = today();
Bonjour Sébastien merci pour ta réponse, en utilisant ta formule j'ai une erreur mais faut-il conpleter ta formule au niveau du GetDate (????)
WHERE "End_date" = GetDate() AND "Jobstatus#" in ('3','5','6','8')
Non, GetDate() est une fonction de base de donnée, mais elle peut avoir d'autre nom sur certaines base de données.
Quelle base de données utilises-tu?
Bonjour Sébastien, voici
Je reviens vers toi, étant donné que j'ai eu une autre solution, ne te tracasse pas lol,