Welcome to SPN

Register and Join the most happening forum of Sikh community & intellectuals from around the world.

Sign Up Now!
  1.   Become a Supporter    ::   Make a Contribution   
    Target (Recurring Monthly): $200 :: Achieved: $98

TimeStamp Calculations are wrong. Date Diff

Discussion in 'Information Technology' started by Robert, Jul 28, 2006.

  1. Robert

    Robert
    Expand Collapse
    Guest

    For some reason, my time calculations are wrong when i run the queiries. if
    it is 7am to 9pm, the calculations are wrong. But if its from 3 am to 11 am
    or 1 pm to 9 pm, its correct. Do I have to tell it that its a 12 hour time?
    here is the formula that I use:

    Hours: ((IIf([ClockIn]=True,Null,DateDiff("h",Nz((SELECT Max(Q.[TimeStamp])
    FROM TimeClock AS Q WHERE Q.ClockIn = True AND Q.TimeStamp <
    T.[TimeStamp]),0),[T].[TimeStamp])))))
     
  2. Jon Ley

    Jon Ley
    Expand Collapse
    Guest

    What is the format of your TimeStamp field? In answer to your question, yes
    you do need to tell it that your using a 12 hour time, but putting in the
    am/pm indicator should do this. Using Access 2000 I have tried:

    DateDiff("h", "7:00", "21:00")
    DateDiff("h", "7:00", "9:00 pm")
    DateDiff("h", "7:00", "9:00pm")
    DateDiff("h", "7:00", "9:00 p")
    DateDiff("h", "7:00", "9:00p")
    DateDiff("h", "7:00", "9p")

    and they all give the same answer (14). From testing various other
    permutations and formats, it appears that Access will by default assume am
    unless you either specify p or pm as part of the format or use a 24 hour
    format. The 24 hour format overrides any suffix (it reads "21:00 am" as 9:00
    pm)



    "Robert" wrote:

    > For some reason, my time calculations are wrong when i run the queiries. if
    > it is 7am to 9pm, the calculations are wrong. But if its from 3 am to 11 am
    > or 1 pm to 9 pm, its correct. Do I have to tell it that its a 12 hour time?
    > here is the formula that I use:
    >
    > Hours: ((IIf([ClockIn]=True,Null,DateDiff("h",Nz((SELECT Max(Q.[TimeStamp])
    > FROM TimeClock AS Q WHERE Q.ClockIn = True AND Q.TimeStamp <
    > T.[TimeStamp]),0),[T].[TimeStamp])))))
     
Since you're here... we have a small favor to ask...

More people are visiting & reading SPN than ever but far fewer are paying to sustain it. Advertising revenues across the online media have fallen fast. So you can see why we need to ask for your help. Donating to SPN's is vote for free speech, for diversity of opinions, for the right of the people to stand up to religious bigotry. Without any affiliation to any organization, this constant struggle takes a lot of hard work to sustain as we entirely depend on the contributions of our esteemed writers/readers. We do it because we believe our perspective matters – because it might well be your perspective, too... Fund our efforts and together we can keep the world informed about the real Sikh Sikhi Sikhism. If everyone who writes or reads our content, who likes it, helps us to pay for it, our future would be much more secure. Every Contribution Matters, Contribute Generously!

    Become a Supporter      ::     Make a Contribution     



Share This Page