$Sir Date2N: Difference between revisions

From m204wiki
Jump to navigation Jump to search
mNo edit summary
m (1 revision)
(No difference)

Revision as of 21:22, 22 November 2011

Convert datetime string to number of seconds/300

Most Sirius $functions have been deprecated in favor of Object Oriented methods. There is currentyly no OO equivalent for the $Sir_Date2N function.

The $Sir_Date2N function expects a datetime value string and a datetime format string and returns the input datetime converted to the number of 1/300th seconds since 1 January, 1900. It accepts an optional CENTSPAN value and an optional error control string. If an error is detected, the returned value is -9E12 (-9000000000000).

Syntax

<section begin="syntax" /> %num = $Sir_Date2N(dat, fmt, span, errctl) <section end="syntax" />

$Sir_Date2N Function

where

dat datetime value string.
fmt datetime format string corresponding to dat. Refer to for an explanation of valid datetime formats and valid dates. Non-strict matching is used for input format fmt; see .
span optional CENTSPAN value, default is -50.
errctl optional error control string, refer to .
%num set to the value of dat, converted to the number of 1/300th second units from 1 Jan 1900 12:00 AM.

For example, the following fragment prints the value Before:

IF $Sir_Date2N('121494', 'MMDDYY') < - $Sir_Date2N('040195', 'MMDDYY') THEN PRINT 'Before' END IF

Error conditions are shown in the following figure (see the discussion in ).

  • fmt is not a valid datetime format.
  • dat does not match fmt.
  • dat is outside of range permitted for fmt.
  • span is invalid.

$Sir_Date2N returns the value -9E12 (-9000000000000) in the following cases:

Notes:

  • Values returned by $Sir_Date2N will often exceed the range that can be represented in a 4-byte integer, so you should probably avoid storing the value in a BINARY or FLOAT4 field.
  • Dates prior to 1 January 1900 will return a negative number.
  • The inverse of this $function is $Sir_N2Date.

Products authorizing $Sir_Date2N