DateDiff inconsequent??

Status
Niet open voor verdere reacties.

whu2

Gebruiker
Lid geworden
22 aug 2008
Berichten
31
Beste,

Ik had een vraag over de DateDiff functie. Stel, ik heb een videotheek, en wil een rapportage draaien waaruit blijkt welke mensen op de betreffende datum (Reportdate) een x aantal dagen te laat waren met inleveren. Dan kan het aantal dagen te laat ingeleverd worden berekend volgens:

Max(IIf([Reportdate]>[date_in_te_leveren] And [Reportdate]<[date_afgeleverd],DateDiff("d",[date_due],[Reportdate]),0))

Maar...: Reportdate is volgens de 'medium notitie' (01-01-08) geschreven, en de overige datums zijn als 'general date' genoteerd (01-01-08 12:24:03), dus met tijdstip erbij. Nu vraag ik mij af:
In de situatie waarbij geldt dat een dvd uitgeleend is op 01-01-08 12:24:03 zal deze niet in mijn rapport verschijnen ("01-01-08 12:24:03" is immers groter dan "01-01-08"). Maar andersom verschijnt het wel in mijn rapportage: bij bijv. Reportdate "02-01-08" zie ik de "02-01-08 12:24:03" wel terugkomen.

Kortom: is Access inconsequent met de DateDiff, of heeft dit een reden??

Kortom: behandeld DateDiff de "<" en ">" tekens anders in geval van verschillende datum notities?
 
Het heeft te maken met het verschil tussen Amerikaanse (mmddyyyy) en Nederlandse (ddmmyyyy) notatie van de datum.

Dat is de reden dat ik datums opsla als long en als er een tijd opgeslagen moet worden sla ik het op als een double.

In jouw geval is 2-1-2008 > 2-1-2008 21:23 omdat de eerste datum is geconverteerd naar de amerikaanse notatie. Er staat dus eigenlijk 1-2-2008 > 2-1-2008 21:23 en dat klopt.

Enjoy!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan