[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: how to compare 2 dates - NOW WITH TIME
 
- From: KHMan <keinhong@...>
 
- Date: Fri, 08 May 2009 01:42:54 +0800
 
Diego - Red Baires wrote:
[snip]
table_campaigns have this definitions
record 1
  this_campaign_applies_from_date = may/6/2008
  this_campaign_applies_up_to_date = jun/20/2009
  this_campaign_applies_on_this_time = 1pm
  this_campaign_applies_up_to_this_time = 2pm
record [n] ...
function tell_me_if_a_campaign_must_be_executed() must
loop into the table, read it records and analize field decribed above.
so, first it compares if today is between the date-ranges of the record,
if so, then it must compare if this clock-time is between the time-range 
of the record
And os.time() has everything you need, like we said before.
Example. Midnight of 2009-05-01:
os.time{year=2009,month=5,day=1,hour=0,min=0} -> 1241107200
Day of 2009-05-01 will range from: 1241107200 to
(1241107200 + 24*60*60 - 1) or 1241193599
Verify:
os.time{year=2009,month=5,day=1,hour=23,min=59,sec=59} -> 1241193599
The next day:
os.time{year=2009,month=5,day=2,hour=0,min=0,sec=0} ->
1241193600
Within say 2009-05-01, you want 1pm to 2pm:
os.time{year=2009,month=5,day=1,hour=13,min=0} -> 1241154000
os.time{year=2009,month=5,day=1,hour=14,min=0} -> 1241157600
Then your timing range for that day, 2009-05-01 is from 1241154000 
to 1241157599
So it does looks like os.time() solves your problem. You only need 
to parse your input file properly and ensure that the values for 
each part of each date is valid, mix and match date/time portions 
accordingly, then compare results from os.time().
--
Cheers,
Kein-Hong Man (esq.)
Kuala Lumpur, Malaysia