Page tree
Skip to end of metadata
Go to start of metadata

%NewTime function

Old name
The function adds the relative time calculated from the defined parameters Year, Month, Day, Sec to the absolute time TimeA. Result is an absolute time.
TIME %NewTime(
   TIME in TimeA, 
   INT  in Year, 
   INT  in Month, 
   INT  in Day, 
   INT  in Sec,
   TEXT in timeZone := %GetCurrentTimeZone()
TimeAInput time.
YearNumber of years.
MonthNumber of months.
DayNumber of days.
SecNumber of seconds.
timeZoneName of the time zone used for conversion to local time (e.g. "Europe/London") or definition of fixed offset from UTC using format "(+|-)hh[:mi[:ss]]", where hh defines number of hours, mi defines number of minutes, and ss defines number of seconds. Sign as well as number of hours are mandatory parts of offset definition, number of minutes and seconds are optional and default to 0 (e.g. "+02:30" defines offset of 2 hours and 30 minutes from UTC). Empty text has the same meaning as function %GetCurrentTimeZone.
Note: For historical reasons, integer parameter is also accepted. Its interpretation is as follows: 0 - zone "Europe/London", 3600 - zone "Europe/Bratislava", 7200 - zone "Europe/Kiev", 21600 - zone "Asia/Almaty". Usage of integer parameter is deprecated and generates warning into log file!
If the target date does not exist, the function returns the date value of the last existing day in the particular target month,
 _Date := %StrToTime("10:00:00 31-01-2007")
 _Date := %NewTime(_Date,0,1,0,0)      ;increases the month value by one -> 28.2.2007 10:00:00.000 
Write a comment…