E8601TZw.d Format

Adjusts time values to the Coordinated Universal Time (UTC) and writes the time values by using the ISO 8601 extended notation hh:mm:ss.<fff>+|–hh:mm.

Categories: Date and Time
ISO 8601
Alignment: Left
Alias: IS8601TZw.d
Interaction: When the DECIMALCONV= system option is set to STDIEEE, the output that is written using this format might differ slightly from previous releases. For more information, see DECIMALCONV= System Option in SAS System Options: Reference.
Supports: ISO 8601 Element 5.3.1.1, complete representation

Syntax

E8601TZw.d

Syntax Description

w

specifies the width of the output field.

Default 14
Range 9–20

d

specifies the number of digits to the right of the decimal point in the seconds value. This argument is optional.

Default 0
Range 0–6

Details

UTC time values specify a time and a time zone based on the zero meridian in Greenwich, England. The E8601TZ format writes time values in one of the following ISO 8601 extended time notations:
  • hh:mm:ss<.fff>+|–hh:mm
    Note: Use this form when w is large enough to support this time zone notation.
  • hh:mm:ssZ
    Note: Use this form when w is not large enough to support the +|–hh:mm time zone notation.
hh
is a two-digit hour (zero padded) between 00 and 23.
mm
is a two-digit minute (zero padded) between 00 and 59.
ss
is a two-digit second (zero padded) between 00 and 59.
fff
are optional fractional seconds.
+|–hh:mm
is an hour and minute signed offset from zero meridian time. The offset must be +|–hh:mm (that is, + or – and five characters).
Restriction: The shorter form +|–hh is not supported.
Use + for time zones east of the zero meridian, and use – for time zones west of the zero meridian. For example, +02:00 indicates a two-hour time difference to the east of the zero meridian, and –06:00 indicates a six- hour time difference to the west of the zero meridian.
Z
indicates zero meridian (Greenwich, England) or +00:00 UTC time.
When SAS reads a UTC time by using the E8601TZ informat, and the adjusted time is greater than 24 hours or less than 00 hours, SAS adjusts the value so that the time is between 00:00:00 and 24:00:00. If the E8601TZ format attempts to format a time outside of this time range, the time is formatted with asterisks to indicate that the value is out of range.

Comparisons

For time values between 00:00:00 and 24:00:00, the time value E8601TZ format adjusts the time value to be the time at the zero meridian and writes the time value in the international standard extended time notation. The E8601LZ format makes no adjustment to the time and writes time values in the international standard extended time notation, using a UTC time zone offset for the local SAS session.

Example

put etz e8601tz.;
Value of etz
Result
17024
04:43:44+00:00
85424
23:43:44+00:00