Hello Nikola,

You are correct - the script runs fine today, but if you set your system
date to Saturday's date (August 10th), it will tell you the previous
business day is the previous Thursday, which in my mind is not correct.

Could the difference you mentioned with Sunday being day 7 and Monday
being day 1 be the culprit?  It seems to me this module works on the
actual *date* as it exists on the Gregorian calendar, and not so much
the day of the week.  Am I wrong?

-Ian

Nikola Janceski wrote:
> 
> just ran your script as is.. and the date is fine for me
> 
> output:
> 
> today is 2002-8-12
> yesterday is 2002-8-11
> the previous business day is 20020809
> 
> > -----Original Message-----
> > From: Nikola Janceski [mailto:[EMAIL PROTECTED]]
> > Sent: Monday, August 12, 2002 2:06 PM
> > To: 'Ian Zapczynski'; [EMAIL PROTECTED]
> > Subject: RE: add_delta_workdays from Date::Calendar not returning what
> > I'd expect
> >
> >
> > you know that 7 is Sunday?
> > you know that 1 is Monday?
> > right? (this confused me to death for a long time with Date::Calc)
> >
> > > -----Original Message-----
> > > From: Ian Zapczynski [mailto:[EMAIL PROTECTED]]
> > > Sent: Monday, August 12, 2002 1:58 PM
> > > To: [EMAIL PROTECTED]
> > > Subject: add_delta_workdays from Date::Calendar not
> > returning what I'd
> > > expect
> > >
> > >
> > > Hello all,
> > >
> > > I hope this is not too specific for this list.  If so, please let me
> > > know if you have suggestions on a better place to seek the
> > answer for
> > > this.
> > >
> > > In the code below, I am using add_delta_workdays from
> > > Date::Calendar to
> > > check if yesterday was a business day.  My problem is that
> > it seems to
> > > work when checking for holidays, but when the script runs on
> > > a Saturday
> > > or Sunday, it reports that the previous business day was
> > Thursday, and
> > > *not* Friday as I'd expect.  However, on a Monday, it properly
> > > identifies the previous business day as the previous
> > Friday.  So I am
> > > quite perplexed.
> > >
> > > If anyone out there has a moment to lend some insight, this
> > script can
> > > be easily tested by first running it with the system date
> > set properly
> > > as today, and then setting the date to be either Saturday,
> > August 10th
> > > or Sunday, August 11th (although it happens with any Saturday
> > > or Sunday
> > > I've tried).  The dates are not printed out in the same
> > > precise format,
> > > but you'll get the idea.
> > >
> > > I hesitate to assume this would be a bug in the module since
> > > it has been
> > > a stable release for so long, so I could really use another
> > > opinion.  Or
> > > if you don't receive the same results, perhaps it could be
> > > something in
> > > my environment.
> > >
> > > Thanks!!
> > >
> > > -Ian
> > >
> > > -----
> > >
> > > #!/usr/bin/perl
> > > #
> > > use strict;
> > > use Date::Calc qw(:all);
> > > use Date::Calendar;
> > > use Date::Calendar::Profiles qw( $Profiles );
> > >
> > > my ($year,$month,$day) = Date::Calc->Today();
> > >
> > > # figure out what day yesterday was so we can determine if
> > it matches
> > > the previous business day
> > > my ($yesteryear,$yestermonth,$yesterday) =
> > > Add_Delta_Days($year,$month,$day, -1);
> > >
> > > # now find out what Date::Calendar says the previous business day is
> > > based on the standard US profile
> > > my ($cal) = Date::Calendar->new( $Profiles->{'US'} );
> > > my ($prevdate) = $cal->add_delta_workdays($year,$month,$day, -1);
> > >
> > > print "today is $year-$month-$day \n";
> > > print "yesterday is $yesteryear-$yestermonth-$yesterday \n";
> > > print "the previous business day is $prevdate \n";
> > >
> > > --
> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> >
> > --------------------------------------------------------------
> > --------------
> > --------------------
> > The views and opinions expressed in this email message are
> > the sender's
> > own, and do not necessarily represent the views and opinions of Summit
> > Systems Inc.
> >
> >
> > --
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> 
> ----------------------------------------------------------------------------
> --------------------
> The views and opinions expressed in this email message are the sender's
> own, and do not necessarily represent the views and opinions of Summit
> Systems Inc.

-- 
Ian Zapczynski
Systems Integrator
The Sycamore Group
(215) 283-4877 x120

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to