About Dates

This section describes how the date/time properties and 3DSpace Service settings affect the way date/times are read, stored, and displayed in 3DSpace and Collaboration and Approvals apps.

This page discusses:

Relationship Between BPS and 3DSpace Service Dates

This graphic shows which settings affect the input and display of date/times in Collaboration and Approvals-based apps and the relationship between these settings and 3DSpace settings. The default settings work and should only need to be changed under specific conditions listed in Studio Modeling and App Date Formats.



Most date fields require the user to choose the date using the Calendar chooser and do not require or allow a time entry. If the user's input does not include the time but the date format that eMatrixInputDateFormat matches, either NORMAL or TERSE, does include the time, the Collaboration and Approvals enters midday (12:00 noon) for the time. If the matching 3DSpace date format does not include the time, the date passes to 3DSpace without a time and 3DSpace adds it. Typically, only a TERSE format would be defined without a time.

Studio Modeling and App Date Formats

The eMatrixDateFormat and eMatrixInputDateFormat system properties have no affect on how dates are displayed in Collaboration and Approvals-based apps. These properties define the Java format to use to send dates to 3DSpace and to read them from 3DSpace. Therefore, they must define the same formats that are defined for dates in 3DSpace.

Only change these properties if one of these conditions apply:

  • You change the 3DSpace NORMAL format.

    You can change the NORMAL format if you have a date text field in a Collaboration and Approvals-based app that does not use the eMatrixDateFormat class to parse the date and you want a format other than the default format to be accepted for input. In such a case, the system parses the entered date using NORMAL and then TERSE.

    If you change to the NORMAL format, you must also change the eMatrixDateFormat and eMatrixInputDateFormat properties in emxSystem.properties so they are in sync. (If eMatrixInputDateFormat has been changed to match TERSE, there is no need to change it when NORMAL changes.)

  • You decide to match eMatrixInputDateFormat with TERSE instead of NORMAL.

    You can map eMatrixInputDateFormat to TERSE if your app has freeform date entry fields that use the eMatrixDateFormat class and you want it to accept the TERSE format instead of NORMAL. The apps typically use the Calendar chooser instead of freeform text fields.

    You can change to the TERSE format, for example, to provide an alternate format that will be accepted as input. You can make this change without changing the eMatrixInputDateFormat as long as eMatrixInputDateFormat matches the NORMAL format. By default, the TERSE setting is moy/dom/yr4.

If you define this format to display the date format using a 24-hour clock (see the Live Collaboration Server Administration Guide):

MX_NORMAL_DATETIME_FORMAT=moy/dom/yr4 h24:min:sec
Then you must also enter these values for these properties:
eServiceSuites.eMatrixDateFormat = MM/dd/yyyy HH:mm:ss
eServiceSuites.eMatrixInputDateFormat = MM/dd/yyyy HH:mm:ss

If you want to include AM or PM as part of the date, you cannot use the 24-hour clock. The matrix.ini setting would be:

MX_NORMAL_DATETIME_FORMAT=moy/dom/yr4 h12:min:sec mer
Where mer stands for meridian. Then you must also enter these values for these properties in emxSystem.properties:
eServiceSuites.eMatrixDateFormat = MM/dd/yyyy HH:mm:ss a
eServiceSuites.eMatrixInputDateFormat = MM/dd/yyyy HH:mm:ss a

Time String Format

To specify the time format, use a time pattern string. In this pattern, all ASCII letters are reserved as pattern letters, which are defined as the following:

Symbol Meaning Presentation Example
G era designator (Text) AD
y year Number) 1996
M month in year (Text & Number) July & 07
d day in month (Number) 10
h hour in am/pm (1~12) (Number) 12
H hour in day (0~23) (Number) 0
m minute in hour (Number) 30
s second in minute (Number) 55
S millisecond (Number) 978
E day in week (Text) Tuesday
D day in year (Number) 189
F day of week in month (Number) 2 (2nd Wed in July)
w week in year (Number) 27
W week in month (Number) 2
a am/pm marker (Text) PM
k hour in day (1~24) (Number) 24
K hour in am/pm (0~11) (Number) 0
z time zone (Text) Pacific Standard Time
' escape for text (Delimiter)
'' single quote (Literal) '

To display a date, the system converts this format to the display format defined by the DisplayFormat and DisplayTime properties and by the browser's language/region setting. This property does not affect the display of dates in Collaboration and Approvals-based apps.

The count of pattern letters determine the format:

  • (Text): 4 or more pattern letters--use full form, less than 4--use short or abbreviated form if one exists.
  • (Number): the minimum number of digits. Shorter numbers are zero-padded to this amount. Year is handled specially; that is, if the count of 'y' is 2, the Year will be truncated to 2 digits.
  • (Text & Number): 3 or over, use text, otherwise use number.

Any characters in the pattern that are not in the ranges of ['a''z'] and ['A'..'Z'] will be treated as quoted text. For example, characters like ':', '.', ' ', '#' and '@' will appear in the resulting time text even they are not embraced within single quotes.

A pattern containing any invalid pattern letter will result in a thrown exception during formatting or parsing.