Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
chadliagabsi
Creator II
Creator II

NOMBRE D'HEURE ENTRE DEUX DATES

Bonjour,

J'ai voulu calculer le nombre d'heure entre deux dates. J'ai eu les champs date et heure séparée donc je l'ai concaténé pour obtenir le format qui dans l'image. Quand j'obtiens cette format je perd la sélection ( càd chaque dossier a une date d'entrée et sortie alors quand je sélectionne le dossier j'obtiens rien.

Voila le script utilisé pour la concaténation et le calcul des nombres d'heure.

Script:

ADMISSION:

LOAD      ADDOSS as DOSSIER,

  Date(Date#(ADDTEN, 'DDMYYYY'), 'DD/MM/YYYY')&   time(time#(ADHREN, 'hhmm'), 'hh:mm') as DH_E,

  Date(Date#(ADDTSO, 'DDMYYYY'), 'DD/MM/YYYY')&   time(time#(ADHRSO, 'hhmm'), 'hh:mm') as DH_S

FROM

[..\..\ENTREPOT\AS400\FACTU\ADP01.QVD]

(qvd);

CALCUL:

load DOSSIER, interval(date#(DH_S, 'DD/MM/YYYYhh:mm') - date#(DH_E, 'DD/MM/YYYYhh:mm'), 'hh') as h1,

date#(DH_S, 'DD/MM/YYYYhh:mm') - date#(DH_E, 'DD/MM/YYYYhh:mm') as h2

Resident ADMISSION;

Résultat :

test.png

24 Replies
lcloatre
Partner - Creator III
Partner - Creator III

Il faut que tu vérifies tes données source.

kevinchevrier
Partner - Creator III
Partner - Creator III

Chadlia,

Au regard de ta copie écran, tu as des formats de dates différents à interpréter.

Voici ce que je te propose :

If(len(ADDTEN)=8,

Date(Date#(ADDTEN, 'DDMMYYYY'), 'DD/MM/YYYY')&   time(time#(ADHREN, 'hhmm'), 'hh:mm'),

Date(Date#(ADDTEN, 'DDMYYYY'), 'DD/MM/YYYY')&   time(time#(ADHREN, 'hhmm'), 'hh:mm')) as DH_E


Kevin

kevinchevrier
Partner - Creator III
Partner - Creator III

Il faut que tu fasses autant de IF que tu as de format de date différent...

Ici je vois DDMYYYY et DDMMYYYY mais tu as peut-être d'autres formats dans ton QVD.

Kevin

lcloatre
Partner - Creator III
Partner - Creator III

16/01/22010 !

C'est Retour vers le Futur !!

chadliagabsi
Creator II
Creator II
Author

Oui C'est vrai j'ai trouvé cette erreur, mais ça fonctionne avec la proposition de kevin.