REAL %SubTimesMono( TIME in TimeA, TIME in TimeB, ) |
| TimeA | Absolute time. |
| TimeB | Absolute time. |
The function %SubTimesMono deducts one absolute time from another one. The result will be influenced by the fact if the time offset was or was not in this interval. For example, in Slovakia, the difference between 4:00 and 1:00 a.m. can be two hours (advance to summer-time), three hours or four hours (advance to winter-time).
; =================================================================
; Slovakia (country for this example)
; Time zone is UTC+1.
; There are summer [A] and winter [B] time (with time shifts).
; Summer time is from 29th March, 2009 to 24th October, 2009.
; A3:00:00 is changed to B2:00:00 on Sunday (25th October, 2009).
; =================================================================
BEGIN
TIME _timeA
TIME _timeB
TIME _baseTime
REAL _subMono1
REAL _subMono2
; UTC 00:30:00 25.10.2009
_timeA := %StrToTimeEx("A2:30:00 25.10.2009", "hh:mi:ss dd-mm-rrrr")
; UTC 01:30:00 25.10.2009
_timeB := %StrToTimeEx("B2:30:00 25.10.2009", "hh:mi:ss dd-mm-rrrr")
; UTC 23:30:00 24.10.2009
_baseTime := %StrToTimeEx("01:30:00 25.10.2009", "hh:mi:ss dd-mm-rrrr")
; ; difference 1 hour(s) (3600 seconds)
_subMono1 := %SubTimesMono(_timeA, _baseTime)
; difference 2 hour(s) (7200 seconds)
_subMono2 := %SubTimesMono(_timeB, _baseTime)
END
|