Actually, we should use time stamp in our abap programs instead of the traditional date and time fields. When we have to do some calculation on a time stamp is not as easy as on a date field.
For example, to add an hour to a timestamp, many people will:
convert the time stamp into a standard date and field, add an hour, convert back the date and time to a timestamp.
However, it is the slowest method you can use.
Instead, use class CL_ABAP_TSTMP. It enables you to make whatever calculation you want on a time stamp.
In the following example, 1 hour is added:
DATA : l_tstamp TYPE timestamp,
l_tstamp_out TYPE timestamp.
GET TIME STAMP FIELD l_tstamp.
CALL METHOD cl_abap_tstmp=>add
tstmp = l_tstamp
secs = 3600 “<<<===— 1 hour = 3600 seconds
r_tstmp = l_tstamp_out.
CATCH cx_parameter_invalid_range .
WRITE ‘invalid range’.
CATCH cx_parameter_invalid_type .
WRITE ‘invalid type’.
WRITE l_tstamp time zone ‘UTC+5.5’.
WRITE l_tstamp_out time zone ‘UTC+5.5’.
Output of the program is shown as below:
NOTE: Prior to 1972, this time was called Greenwich Mean Time (GMT) but is now referred to as Coordinated Universal Time or Universal Time Coordinated (UTC). It is a coordinated time scale, maintained by the Bureau International des Poids et Mesures (BIPM). It is also known a “Z time” or “Zulu Time”.