StringToDays (String function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
Line 29: Line 29:
==Examples==
==Examples==
<ol>
<ol>
<li>This statement converts a value from <code>YYYYMMDD</code> format:
<p class="code">printText {~='20110520':stringToDays('YYYYMMDD')}</p>
The result is:
<p class="output">'20110520':stringToDays('YYYYMMDD')=40681  </p>
<li>This statement uses <var>StringToDays</var> and <var>[[DaysToString (Float_function)|DaysToString]]</var> to convert a value in <code>YYYYMMDD</code> format to the <code>Month DAY, YYYY</code> format:
<li>This statement uses <var>StringToDays</var> and <var>[[DaysToString (Float_function)|DaysToString]]</var> to convert a value in <code>YYYYMMDD</code> format to the <code>Month DAY, YYYY</code> format:
<p class="code">printText {~='20110520':stringToDays('YYYYMMDD'):daysToString('Month DAY, YYYY')}</p>
<p class="code">printText {~='20110520':stringToDays('YYYYMMDD'):daysToString('Month DAY, YYYY')}</p>
Line 35: Line 41:
<p class="output">'20110520':stringToDays('YYYYMMDD'):daysToString('Month DAY, YYYY')=May 20, 2011 </p>
<p class="output">'20110520':stringToDays('YYYYMMDD'):daysToString('Month DAY, YYYY')=May 20, 2011 </p>


<li>This statement converts a value in <code>YYYYMMDD</code> format to the <code>Month DAY, YYYY</code> format:
<p class="code">printText {~='20110520':stringToDays('YYYYMMDD')}</p>


The result is:
<p class="output">'20110520':stringToDays('YYYYMMDD')=40681  </p>


</ol>
</ol>

Revision as of 18:24, 3 April 2012

Convert string date/time to days since 1900 (String class)

[Introduced in Sirius Mods 7.8]


StringToDays is an intrinsic function to convert a date/time string to days since 1900.

Syntax

%days = string:StringToDays( format, [[CentSpan=] number]) Throws InvalidDateString

Syntax terms

%days The float variable to receive the computed time since 1900.
string The input date/time string, which must be in the format specified by format.
format The format of the date/time string. See "Datetime formats".
CentSpan The CENTSPAN value used, if the format has a two-digit year. The default is specified by the CENTSPAN parameter. In Sirius Mods 7.9 and later this is a name allowed parameter. For versions prior to 7.9, it is a positional parameter.

Usage notes

  • If the format is invalid, the request is cancelled.
  • If the date contents of the method object string is invalid, an InvalidDateString exception is thrown.
  • If the CentSpan value is invalid, the request is canceled.
  • Values returned by StringToDays can be stored in a BINARY or FLOAT4 field, if you want.
  • Dates prior to 1 January 1900 return a negative number.
  • The inverse of this function is DaysToString.

Examples

  1. This statement converts a value from YYYYMMDD format:

    printText {~='20110520':stringToDays('YYYYMMDD')}

    The result is:

    '20110520':stringToDays('YYYYMMDD')=40681

  2. This statement uses StringToDays and DaysToString to convert a value in YYYYMMDD format to the Month DAY, YYYY format:

    printText {~='20110520':stringToDays('YYYYMMDD'):daysToString('Month DAY, YYYY')}

    The result is:

    '20110520':stringToDays('YYYYMMDD'):daysToString('Month DAY, YYYY')=May 20, 2011


See also