Category : Batch File Utilities - mostly for DOS
Archive   : FDATE82A.ZIP
Filename : HOLIFEDS.DOC

 
Output of file : HOLIFEDS.DOC contained in archive : FDATE82A.ZIP
HOLIFEDS.BAT
============
by Stephen Ferg 1992 Dec 11

HOLIFEDS.BAT is a companion batch file to HOLIDAYS.BAT. It is designed
specifically to be useful to employees of the Federal government.

The purpose of HOLIFEDS.BAT is to aid Federal employees and managers in
planning for holidays by calculating a list Federal holidays for a given
year. It calculates both Federal holidays and days that -- because they
fall between a holiday and a weekend (or another holiday) -- are likely
to be popular as annual-leave days.

The #mod function was added to Fdate version 7.0 to support the
calculation of Inauguration Day in HOLIFEDS.BAT. Now that it is
supported by FDATE, the #mod function can be used to deal with any kind
of event that occurs at fixed intervals.


FEDERAL HOLIDAYS
================
Calculating Federal holidays is a tricky business because there are
three different types of Federal holiday:

1. Holidays that are fixed to a certain calendar date, such as July 4.
These are what OPM calls "date-certain" holidays.

2. "Floating" holidays, that are attached to the Nth day-of-the-week
in a certain month. Labor Day, for example, is the first Monday in
September. A minor variation on this theme is Memorial Day, which
is specified as being the LAST Monday in May.

3. Inauguration Day, which is in a class by itself.


Here is the official Office of Personnel Management (OPM)
description of how Federal holidays are determined for a given year.
-----------------------------------------------------------------------
begin: OPM Federal Holidays Documentation
-----------------------------------------------------------------------
FEDERAL HOLIDAYS

Federal holidays are always the same regardless of the calendar year.
That is to say, the language of Title 5, United States Code, Section
6103, can be applied to any year simply by comparing the list of
holidays to a calendar and marking the calendar. There are two things
to keep in mind regarding holidays that are date certain (e.g., January
1, July 4, November 11, and December 25); first all such days which fall
on Saturday will be celebrated on the preceding Friday and, secondly,
all such days which fall on a Sunday will be celebrated on the
succeeding Monday.

Here is the list of Federal holidays for each year (there are 10):

1. New Year's Day, January 1
2. Birthday of Martin Luther King, Jr., the third Monday in January
3. Washington's Birthday, the third Monday in February
4. Memorial Day, the last Monday in May
5. Independence Day, July 4
6. Labor Day, the first Monday in September
7. Columbus Day, the second Monday in October
8. Veteran's Day, November 11
9. Thanksgiving Day, the fourth Thursday in November
10. Christmas Day, December 25

Additionally, for employees employed in the District of Columbia,
Montgomery and Prince Georges Counties in Maryland, Arlington & Fairfax
Counties in Virginia, and the cities of Falls Church, and Alexandria,
VA, January 20 of each fourth year after 1965, Inauguration Day, is a
legal public holiday. If it falls on Sunday, it shall be the next
succeeding day selected for the public observance of the President's
inauguration.

-----------------------------------------------------------------------
For more information, write:
United States Office of Personnel Management
Washington, DC 20415
or telephone OPM at (202) 606-2858.
-----------------------------------------------------------------------
end: OPM Federal Holidays Documentation
-----------------------------------------------------------------------


There are some interesting aspects to this formula.


NEW YEAR'S DAY
==============
A holiday may be celebrated in a different year than the one in which
it occurs. Specifically, if January 1 falls on a Saturday, it is
celebrated on the preceeding Friday, which is December 31 of the
preceding year. An example is New Year's Day, 1983, which was
celebrated on the last day of 1982.


INAUGURATION DAY
================
Every 4th year is Presidential Inauguration year. Inauguration Day is a
date-certain holiday occurring on January 20. Federal employees who work
in Washington, DC and the surrounding metropolitan area get Inauguration
day as a holiday, primarily to minimize traffic congestion on the day of
the big event. For Federal employees working in other locations,
Inauguration Day is not a holiday.

Unlike other date-certain holidays, if Inauguration Day occurs on a
Saturday, it is celebrated on the Saturday.

Like other date-certain holidays, if Inauguration Day occurs on a Sunday,
it is pushed to the following Monday, January 21. The interesting thing
is that if January 20 or 21 falls on a Monday, it is the third Monday in
January, and therefore it is also the occasion for celebrating Martin
Luther King's birthday. So there are four different scenarios for
Inauguration Day:

Falls on a Saturday, so there is no special Federal holiday : 2001
Falls on a Sunday but moved to Monday (same as MLK birthday) : 1985
Falls on a Monday (same as MLK birthday) : 1997
Falls on Tuesday-Friday, Federal workers get an extra holiday: 1993



CHRISTMAS EVE
=============
There is also an unofficial holiday tradition that the OPM formula does
not mention. Traditionally, when Christmas Day falls on a Friday the
President grants leave to Federal employees for the afternoon of the
preceding Thursday, Christmas Eve. There is, however, nothing official
about this tradition, and there have been presidents who did not adhere
to it. Lyndon Johnson, for instance, did not grant leave to Federal
employees on Thursday, Dec. 24, 1964.



  3 Responses to “Category : Batch File Utilities - mostly for DOS
Archive   : FDATE82A.ZIP
Filename : HOLIFEDS.DOC

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/