Hi all,
I have been struggling with a problem all day, I have been unable to come
up with a working solution.
I want to write a function which takes 2 unix timestamps and calculates
the difference. I want it to return the difference in years, months, days,
hours, minutes and seconds (a complete summary). Keeping into account of
course that these are 2 real dates, I dont want it to work with 30.475 as
an average number of days in a month, I want it to work with the supplied
months/years.
The output ought to be: there is 0 years, 7 months, 12 days, 5 hours,
56 minutes and 51 seconds difference.
(I dont want the difference as in 1237438424 seconds but a complete
summary).
Any of my attempts have failed. It is easy to calculate the numbers of
seconds, minutes, hours and days (total only). But I cant get passed
calculating the number of months and years. Furthermore, any of the
libraries from the internet which I have tested seem to be flawed as well,
their results are not precise.
Can this not be done? Anyone?
Kind regards,
Hans Gruber 4 4392
Hans Gruber wrote: Hi all,
I have been struggling with a problem all day, I have been unable to come up with a working solution.
I want to write a function which takes 2 unix timestamps and calculates the difference. I want it to return the difference in years, months, days, hours, minutes and seconds (a complete summary). Keeping into account of course that these are 2 real dates, I dont want it to work with 30.475 as an average number of days in a month, I want it to work with the supplied months/years.
The output ought to be: there is 0 years, 7 months, 12 days, 5 hours, 56 minutes and 51 seconds difference. (I dont want the difference as in 1237438424 seconds but a complete summary).
Look into the date functions. There are functions in there to tell you
how many days are in the current month. Even if you wanted to do this
by hand you could create an array with each month and how many days it
has and check for a leap year.
Then use the date function to work with these.... It will work, but to
get it in your exact format might be a bit of work.
Mike
On Sun, 15 May 2005 20:58:54 -0500, Mike Willbanks wrote: Hans Gruber wrote: Hi all,
I have been struggling with a problem all day, I have been unable to come up with a working solution.
I want to write a function which takes 2 unix timestamps and calculates the difference. I want it to return the difference in years, months, days, hours, minutes and seconds (a complete summary). Keeping into account of course that these are 2 real dates, I dont want it to work with 30.475 as an average number of days in a month, I want it to work with the supplied months/years.
The output ought to be: there is 0 years, 7 months, 12 days, 5 hours, 56 minutes and 51 seconds difference. (I dont want the difference as in 1237438424 seconds but a complete summary).
Look into the date functions. There are functions in there to tell you how many days are in the current month. Even if you wanted to do this by hand you could create an array with each month and how many days it has and check for a leap year.
Then use the date function to work with these.... It will work, but to get it in your exact format might be a bit of work.
Mike
Thanks Mike, I was actually thinking up something like that right before I
went to bed last night. Another day of hard work coming up ;)
Hans
I noticed that Message-ID: <pa****************************@nakatomi.de>
from Hans Gruber contained the following: Thanks Mike, I was actually thinking up something like that right before I went to bed last night. Another day of hard work coming up ;)
It's easy as you say, to convert seconds into minutes hours days and
weeks. But if you said months what would you mean? Often the secret to
coding something is the correct identification of the problem.
Let's say I want to work out how many months it is till my next birthday
(March 5th). What I'd probably do is ignore the month length difference
and count up. It's May 16th today and so it's 9 months till February
16th. Then it's 13 days till my birthday.
If that's the way you want to work it out then you have your logic. I'm
not going to code it but I think I'd be looking carefully at mktime() if
I was.
--
Geoff Berrow (put thecat out to email)
It's only Usenet, no one dies.
My opinions, not the committee's, mine.
Simple RFDs http://www.ckdog.co.uk/rfdmaker/
On Mon, 16 May 2005 07:54:48 +0100, Geoff Berrow
<bl******@ckdog.co.uk> wrote: I noticed that Message-ID: <pa****************************@nakatomi.de> from Hans Gruber contained the following:
Thanks Mike, I was actually thinking up something like that right before I went to bed last night. Another day of hard work coming up ;) It's easy as you say, to convert seconds into minutes hours days and weeks. But if you said months what would you mean? Often the secret to coding something is the correct identification of the problem.
Let's say I want to work out how many months it is till my next birthday (March 5th). What I'd probably do is ignore the month length difference and count up. It's May 16th today and so it's 9 months till February 16th. Then it's 13 days till my birthday.
If your birthday was 30 June and today was 31 May would that be 1
month or just 30 days until your birthday?
Although if you decided the answer was "1 month", be aware you'd get
the same answer on 30 May.
There isn't really a "correct" answer, but the OP should consider
these edge cases.
However, it depends what data represents and how the user will use it.
If long differences are shown to a lower resolution, this anomaly may
not matter. If the time difference is several months, the user may not
be interested in the value down to the minute and second.
For example:
DIFFERENCE :- WHAT TO SHOW 60 days :- months, days.
< 60 days :- days only.
< 7 days :- days, hours.
< 1 day :- hours, minutes.
< 6 hours :- hours, minutes, seconds.
--
David ( @priz.co.uk ) This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics
by: Marc |
last post by:
I've got a PHP script that's using fopen to connect to a remote web
server and pick up data.
I've run into a problem in calculating elapsed time. The remote web
server outputs a time and I'd...
|
by: clintonG |
last post by:
When the following code is run on Sat Dec 25 2004 19:54:18 GMT-0600 (Central
Standard Time)
var today = new Date();
var GMTDate = today.toGMTString();
document.write("GMTDate: " + GMTDate);
...
|
by: lduperval |
last post by:
Hi,
I`m trying to do date calculations in three types of time zones: local,
GMT and specified. The issue I am facing is that I need to be able to
specify a date in the proper time zone, and I`m...
|
by: Yuri Ludevig |
last post by:
I recently was asked to switch from using raw lv's to file system and the
first problem I encountered was with calculating the exact size for
tablespaces.
This is an example: I create LV and...
|
by: Julie Wardlow |
last post by:
Help!
I am calculating a future date using the DateAdd function in a query (the
calculation also involves an IIf statement), and have managed to get this
formula to produce the required result....
|
by: Charlie Brookhart |
last post by:
I am creating a program that involves having to find the difference between
two dates and converting it to a number to be used for calculations. The
problem is that the way it is setup, VB is not...
|
by: jamesyreid |
last post by:
Hi,
I'm really sorry to post this as I know it must have been asked
countless times before, but I can't find an answer anywhere.
Does anyone have a snippet of JavaScript code I could borrow...
|
by: b.beeching |
last post by:
Not sure if my subject is entirely accurate but here goes.
I need to calculate the date difference between a date A and a date
B... however date B relies entily on date A.
EG: i have an advert...
|
by: user |
last post by:
Hi,
Let's say I have 2 dates in the b/m format:
Date 1 and date 2
How do I check whether Date2 is later than Date 1?
Date1. 21-Nov-2006 09:00:00 PM
|
by: Mushico |
last post by:
How to calculate date of retirement from date of birth
|
by: DJRhino |
last post by:
Was curious if anyone else was having this same issue or not....
I was just Up/Down graded to windows 11 and now my access combo boxes are not acting right. With win 10 I could start typing...
|
by: giovanniandrean |
last post by:
The energy model is structured as follows and uses excel sheets to give input data:
1-Utility.py contains all the functions needed to calculate the variables and other minor things (mentions...
|
by: NeoPa |
last post by:
Hello everyone.
I find myself stuck trying to find the VBA way to get Access to create a PDF of the currently-selected (and open) object (Form or Report).
I know it can be done by selecting :...
|
by: NeoPa |
last post by:
Introduction
For this article I'll be using a very simple database which has Form (clsForm) & Report (clsReport) classes that simply handle making the calling Form invisible until the Form, or all...
|
by: Teri B |
last post by:
Hi, I have created a sub-form Roles. In my course form the user selects the roles assigned to the course.
0ne-to-many. One course many roles.
Then I created a report based on the Course form and...
|
by: isladogs |
last post by:
The next Access Europe meeting will be on Wednesday 1 Nov 2023 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM)
Please note that the UK and Europe revert to winter time on...
|
by: nia12 |
last post by:
Hi there,
I am very new to Access so apologies if any of this is obvious/not clear.
I am creating a data collection tool for health care employees to complete. It consists of a number of...
|
by: isladogs |
last post by:
The next online meeting of the Access Europe User Group will be on Wednesday 6 Dec 2023 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM).
In this month's session, Mike...
| |