Bonjour,
j'ai un dataset qui contient les informations suivantes:
date durée (obtenue par calcul de fin-début)
ex: 19/05/06 05:03
19/05/06 02:05
20/05/06 06:00
21/05/06 04:30
21/05/06 01:42
je voudrais obtenir dans un troisième champ le total de durée par journée, ce qui ferait dans l'exemple suivant
19/05/06 05:03 00:00
19/05/06 02:05 07:08 (stocker la durée dans la dernière ligne de date ?)
20/05/06 06:00 06:00
21/05/06 04:30 00:00
21/05/06 01:22 05:52
Quel est le meilleur moyen pour obtenir ce résultat, j'ai essayé de boucler sur le dataset en comparant date mais cela n'est pas suffisant car je ne sais pas comment initialiser le 1er date
voici mon code (qui est faux)
merci,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 With MonDataset do try open; DernDate := 0; First; while not eof do begin sousTot := sousTot + (FieldByName('FIN').AsDateTime - FieldByName('DEBUT').AsDateTime) ; if (DernDate <> Trunc(FieldByName('DEBUT').AsDateTime)) then begin edit; FieldByName('DUREE').AsFloat := sousTot ; post; sousTot := 0; //réinitialise end; DernDate := Trunc(FieldByName('DEBUT').AsDateTime); Next; end;
Isa
Partager