Do you want to know what the next working day is for a given date ? You will need the calendar to check this against. Use function module BKK_GET_NEXT_WORKDAY. The factory calendar you would need for this is Plant master data information, pick it up from T001W-FABKL.

Did you know date fields can be added to each other ? A week from now is sy-datum + 7 and there is a function module to check whether the date entered is plausible. Times too ? Times too. 

An overview of SYST constants is available to you any time. With a small demo report, which highlights / explains timezones.

The SAP internal date format is a commonly used sortable format, yyyymmdd. Sort it and the oldest date will show up as first value. Handy and convenient, unless it is the most recent date you would want to show first. A date field can also be stored as an inverted date.


Users reside in a timezone, which is ultimately responsible for the date/time in your logs. But what if you want to match logs that use system times ? A simple calculation with the available system variables should do just fine..

A timestamp is in fact a type P(8) number which holds year, month, day, hour, minute and second. There is an actual type TIMESTAMP available and there is a statement to populate your timestamp with "now". But there's more..

Leap years can influence the number of days in a year and of course the number of days in February. Date calculations are all covered and working fine, so if you feel like adding 1 to the 28th of february in your Abap coding, the 29th will be returned in a leap year and the 1st of march in regular years. 

This is a bit of coding that can be used to check for leap years: 

The CL_RECA_DATE class is available for quite a suite of date related operations. It can be used to calculate with dates, convert them to an internal format as a string, check the validity of a date, the list is not endless but over 30 methods are available to you.