Sunteți pe pagina 1din 10

This tutorial describes step-by-step procedure of creating and adding a new holiday to

holiday and factory calendar.

Note: It is not recommended to make any changes to the factory calendar in a


production system.
All the calendar data should be maintained in a customizing system.
Updates are done via transports from the customizing system.
As a special case a customizing client in the productive system can be established.
Changes in the customizing client will then directly affect the productive system, as
the calendar data is client-independent.

SAP Calendar:

SAP calendar master consists of three separate sub-objects which are inter-linked to each
other:

Public Holidays,
Holiday Calendar and
Factory Calendar.

Public holidays :
Public holidays can be defined and be combined into holiday calendars.
Public holidays describe the statutory holidays for a particular country or region within a country.
Types of Public holidays:
Fixed date
Fixed day of week from a specific date
Specific number of days before or after Easter (Sunday)
Easter Sunday
Moveable holiday (with individual specification of dates during each specified
year).
For holidays with fixed date (such as Christmas) and moveable holidays it is possible to specify
simple rules guaranteeing the holiday if it falls on certain days of the week (Thu, Fri, Sun,
Sat/Sun). For instance, Christmas day public holiday may be moved to the next working day if it
falls on a Saturday or Sunday.

Holiday calendar :
Holiday calendar is assigned to each factory calendar.

Factory calendar
Factory calendar contain company specific dates such as alternate working Saturdays and
holidays.

T-Code : SCAL
IMG SPRO -> Time Management -> Work Schedules
Step 1: Create Public Holidays
1. Select the radio button Public holidays.
2. Click Change button .
3. On Change Public Holidays: Overview screen click Create button .
4. A pop up window appear to select the Type of Public Holiday.
Type of Public Holidays
1. with fixed date: This public holiday falls on the same date every year (e.g.
Christmas Day).
a. Enter the Public Holiday Definition.
i. Day (e.g. 25)
ii. Month (e.g. 12)
iii. Guaranteed : specify whether the public holiday should be
moved or not if it falls on a weekend.
1. Not Guaranteed: Indicates that the public holiday should
not be moved if it falls on a weekend.
2. Thursday, Friday, Sunday, Saturday/Sunday: If the public
holiday is to be "guaranteed", i.e., should be a day off in any case, you have to
specify the workday to which the public holiday should be moved.
b. Enter the Public Holiday Attributes:
i. Sort Criterion: use this to display logically related holidays in a
block, e.g. all holidays for a country.
ii. Religious Denomination: (e.g. Christianity).
iii. Public Holiday Class: this specifies the holiday type. It can be
used to determine the groups of holidays and normal days. (e.g. '1' is ordinary
public holiday).
iv. Give Long/Short Holiday Names.
c. Click Create icon .

2. Floating Public Holiday: This public holiday is not fixed. It must be defined
explicitly each year. (e.g. Vesak Full Moon Poya Day).
a. Enter the Public Holiday into relevant boxes: Year/Month/Day (e.g.
2012, 05, 05).
b. Enter the Public Holiday Attributes and click Insert Date icon.

Step 2: Create Holiday Calendar


To assign public holidays in a holiday calendar, we need to maintain one or more holiday
calendars to accommodate the differing holiday schedules of our company.

1. Select the radio button "Holiday Calendar".


2. On Change Public Holiday Calendar: Overview screen click Create button .
3. Enter the Calendar ID and the Name of the calendar. A holiday calendar is
identified in the system by a two-character calendar ID.
4. Enter the validity of the calendar.

Assign Holidays
1. Click on the Assign Holiday button to assign the holiday.

1. From the Insert Public Holidays into Holiday Calendar screen, search for
the respective calendar and select the holidays you want to allow.
2. Click on the Assign publ.holiday Button.
3. The public holiday gets added; click on save button to save the holiday
calendar.
4. Acknowledge all the messages.

Step 3: Define the Factory Calendar


1. Select the working days and assign a holiday calendar to factory calendar.
2. Select the radio button "Factory Calendar".
3. Enter the Factory Calendar ID (same as the Holiday Calendar) and the Factory
Calendar Name.
4. Enter the Holiday Calender ID.
5. Save.

Special Rules:

Special rules are used to define a date (or periods) as a holiday or as a workday, which is not
maintained in the holiday calender (which is applicable for that year only).
In the Public Holiday definition you can determine if a holiday should be moved if it falls during
weekends.
You can assign this special rules accessing the "Change Factory Calendar: Details" :: Special
Rules button.

1. Go to Factory calendar (change) --> change calendar --> Special rules.


2. Enter the date and specify if it is a holiday or workday, then save.
3. The Special rules have higher priority than holiday calendar holidays or
workdays.
Finally, click Year Overview and check for the dates.

Final Step: Transport the Calendar


All changes made to the holiday or factory calendar must be transported manually.

1. Go to SAP Calendar: Main Menu.


2. Select one of the sub-objects and click Transport button .

Calendar Functions

Once the SAP Calendar is configured properly, you can use this data to perform various types of
calculations.
SCAL function group consists of some predefined function modules that can be use to
determine whether or not a given date is a working day, holiday, etc.

Function Module Description


Computes the day of the week for a given date. Day
values are calculated as 1 (Monday), 2 (Tuesday),
DATE_COMPUTE_DAY and so on.
DATE_COMPUTE_DAY_ENHANCED Computes the day of the week just like
Function Module Description
DATE_COMPUTE_DAY; also returns the day value as
text (e.g., TUESDAY, etc.).
Calculates the factory date value for a given date.
Also provides an indicator that confirms whether or
not the given date is considered a working day
DATE_CONVERT_TO_FACTORYDATE according to the selected factory calendar.
Determines the week of the year for the given date.
For example, the date 9/13/2010 would be the 37th
DATE_GET_WEEK week of the year 2010.
Converts a factory date value back into a date
FACTORYDATE_CONVERT_TO_DATE object.
Tests to determine whether or not a given date is a
HOLIDAY_CHECK_AND_GET_INFO holiday based on the configured holiday calendar.
WEEK_GET_FIRST_DAY Calculates the first day of a given week.

As December comes to a close, The new year is just around the corner, and it's a good time to
maintain your Factory Calendar for the coming year (if you haven't already done so); I hope this
simple guide will help you