The GlideDate class provides methods for performing operations on GlideDate objects, such as instantiating GlideDate objects or working with GlideDate fields.

For guidance on date time input strings with a list of common format conflicts, refer to Date and time format guidelines.

See also GlideDateTime - Global.

GlideDate - getByFormat(String format)

Gets the date in the specified date format.

Table 1. Parameters
Name Type Description
format String Desired date format using Java SimpleDateFormat. For example, "dd-MM-yyyy" to get the day, month, and year, or "EEEE" to get the day of the week.
Table 2. Returns
Type Description
String Date value for the GlideDate object in the specified format.

Example

var gd = new GlideDate(); 
gd.setValue('2021-04-21');
gs.info(gd.getByFormat("dd-MM-yyyy"));
Output:
21-04-2021

Scoped equivalent

To use this method in a scoped application, use the corresponding scoped method: Scoped GlideDate - getByFormat(String format).

GlideDate - getDayOfMonthNoTZ()

Gets the day of the month stored by the GlideDate object, expressed in the UTC time zone.

Table 3. Parameters
Name Type Description
None
Table 4. Returns
Type Description
Number The day of the month in the UTC time zone, from 1 to 31.

Example

//Today's date is 2016-05-13 
var gd =new GlideDate();
gs.info(gd.getDayOfMonthNoTZ());

Output:

13

Scoped equivalent

To use this method in a scoped application, use the corresponding scoped method: Scoped GlideDate - getMonthNoTZ().

GlideDate - getDisplayValue()

Gets the date in the current user's display format and time zone.

Table 5. Parameters
Name Type Description
none
Table 6. Returns
Type Description
String Date value for the GlideDate object in the current user's display format and time zone. Keep in mind when designing business rules or script includes that this method may return values in different formats for different users.

Example

var gd = new GlideDate(); 
gd.setValue('2021-04-21');
gs.info(gd.getDisplayValue());
Output:
2021-04-21

Scoped equivalent

To use this method in a scoped application, use the corresponding scoped method: Scoped GlideDate - getDisplayValue().

GlideDate - getDisplayValueInternal()

Gets the date in the internal format (yyyy-MM-dd) and current user's timezone.

Table 7. Parameters
Name Type Description
none
Table 8. Returns
Type Description
String Date value for the GlideDate object in the current user's time zone.

Format: yyyy-MM-dd

Example

var gd = new GlideDate(); 
gs.info(gd.getDisplayValueInternal());
Output:
2021-04-21

Scoped equivalent

To use this method in a scoped application, use the corresponding scoped method: Scoped GlideDate - getDisplayValueInternal().

GlideDate - getDisplayValueLang(String style)

Returns the date value in the user's locale according to a specified date style.

Table 9. Parameters
Name Type Description
style String Date format.
Valid values:
  • full: returns the date in the format of <weekday, month, day, and year> according to the user's locale (for example, Monday, October 24, 2022).
  • long: returns the date in the format of <month, day, and year> according to the user's locale (for example, October 24, 2022).
  • medium: similar to long but returns the date with an abbreviated month (for example, Oct 24, 2022).
  • short: returns the date in the format of MM/DD/YY or DD/MM/YY according to the user's locale (for example, 10/24/2022 or 24/10/2022).

If any other value is passed the API defaults to medium. Accepted values are not case sensitive.

Table 10. Returns
Type Description
String A string representation of the date in the style specified and in the appropriate format for the locale of the current user.

Example

The following example returns the date of the user's locale in all styles.

var gd = new GlideDate(); // This will fetch the current date


gs.info('date: ' + gd.getDisplayValue());

gs.info('date: ' + gd.getDisplayValueLang("full"));
gs.info('date: ' + gd.getDisplayValueLang("long"));
gs.info('date: ' + gd.getDisplayValueLang("medium"));
gs.info('date: ' + gd.getDisplayValueLang("short"));

Output:

date: 2023-01-18
Wednesday, January 18, 2023
date: January 18, 2023
date: Jan 18, 2023
date: 1/18/23

GlideDate - getDisplayValueLang(String style, String language)

Returns the date value in the user's locale and language according to a specified date style.

Table 11. Parameters
Name Type Description
style String Date format.
Valid values:
  • full: returns the date in the format of <weekday, month, day, and year> according to the user's locale (for example, Monday, October 24, 2022).
  • long: returns the date in the format of <month, day, and year> according to the user's locale (for example, October 24, 2022).
  • medium: similar to long but returns the date with an abbreviated month (for example, Oct 24, 2022).
  • short: returns the date in the format of MM/DD/YY or DD/MM/YY according to the user's locale (for example, 10/24/2022 or 24/10/2022).

If any other value is passed the API defaults to medium. Accepted values are not case sensitive.

language String Returns the date according to a specified language value. Accepts language tags that conform with the BCP-47 standard. For example, fr for French or en-UK for British English. For a full list of accepted values, see BCP 47 Language Code List.
Table 12. Returns
Type Description
String Date in the style and language specified according to the locale of the current user.

Example

The following example returns the date of the user's locale in various languages and styles.

var gd = new GlideDate(); // This will fetch the current date


gs.info('date: ' + gd.getDisplayValue());

gs.info('date: ' + gd.getDisplayValueLang("full", "fr"));
gs.info('date: ' + gd.getDisplayValueLang("long", "en-GB"));
gs.info('date: ' + gd.getDisplayValueLang("medium", "de"));
gs.info('date: ' + gd.getDisplayValueLang("short", "es-MX"));

Output:


date: 2023-01-18
date: mercredi 18 janvier 2023
date: 18 January 2023
date: 18.01.2023
date: 18/01/23

GlideDate - getMonthNoTZ()

Gets the month stored by the GlideDate object, expressed in the UTC time zone.

Table 13. Parameters
Name Type Description
None
Table 14. Returns
Type Description
Number The numerical value of the month from 1 to 12.

Example

//Today's date is 2016-05-13
var gd =new GlideDate();
gs.info(gd.getMonthNoTZ());

Output:

5

Scoped equivalent

To use this method in a scoped application, use the corresponding scoped method: Scoped GlideDate - getMonthNoTZ().

GlideDate - getYearNoTZ()

Gets the year stored by the GlideDate object, expressed in the UTC time zone.

Table 15. Parameters
Name Type Description
None
Table 16. Returns
Type Description
Number The numerical value of the year.

Example

//Today's date is 2016-05-13
var gd =new GlideDate();
gs.info(gd.getYearNoTZ());

Output:

2016

Scoped equivalent

To use this method in a scoped application, use the corresponding scoped method: Scoped GlideDate - getYearNoTZ().

GlideDate - GlideDate()

Creates a GlideDate object with the current date time.

Table 17. Parameters
Name Type Description
None

Example

//Today's date is April 21, 2021
var gd = new GlideDate();
gs.info(gd.getValue());
Output:
2021-04-21

GlideDate - setDisplayValue(String asDisplayed)

Sets a date value using the current user's display format and time zone.

Table 18. Parameters
Name Type Description
asDisplayed String Date in the current user's display format and time zone.

Format: Must be formatted using the current user's preferred display format, such as yyyy-MM-dd.

Table 19. Returns
Type Description
None

Example

var gd = new GlideDate();
gd.setDisplayValue("2011-01-01");
gs.info(gd.getValue());

Output:

2011-01-01

Scoped equivalent

To use this method in a scoped application, use the corresponding scoped method: Scoped GlideDate - setDisplayValue(String asDisplayed).

GlideDate - setDisplayValueLang(String date, String style)

Sets a date using a specified style and format according to the current user's locale.

Table 20. Parameters
Name Type Description
date String Date value for the GlideDate object in the current user's time zone. Valid values are any date and time output from the getDisplayValueLang() function.

For instance, using output from the getDisplayValueLang(String style, String language) example earlier in this topic, October 25, 2022 or 25.10.2022 are accepted values.

style String Date format.
Valid values:
  • full: returns the date in the format of <weekday, month, day, and year> according to the user's locale (for example, Monday, October 24, 2022).
  • long: returns the date in the format of <month, day, and year> according to the user's locale (for example, October 24, 2022).
  • medium: similar to long but returns the date with an abbreviated month (for example, Oct 24, 2022).
  • short: returns the date in the format of MM/DD/YY or DD/MM/YY according to the user's locale (for example, 10/24/2022 or 24/10/2022).

If any other value is passed the API defaults to medium. Accepted values are not case sensitive.

Table 21. Returns
Type Description
void

Example

The following example shows how you can set the current date of the user's locale to 'full' style using setDisplayValueLang().

glideDate.setDisplayValueLang("2/3/2023", "short");


gs.info('date: ' + glideDate.getDisplayValue());
gs.info('date: ' + glideDate.getDisplayValueLang("full"));

Output:

date: 2023-02-03
date: Friday, February 3, 2023

GlideDate - setDisplayValueLang(String date, String style, String language)

Sets a date using a specified style, language, and format according to the current user's locale.

Table 22. Parameters
Name Type Description
date String Date value for the GlideDate object in the current user's time zone. Valid values are any date and time output from the getDisplayValueLang() function.

For instance, using output from the getDisplayValueLang(String style, String language) example earlier in this topic, October 25, 2022 or 25.10.2022 are accepted values.

style String Date format.
Valid values:
  • full: returns the date in the format of <weekday, month, day, and year> according to the user's locale (for example, Monday, October 24, 2022).
  • long: returns the date in the format of <month, day, and year> according to the user's locale (for example, October 24, 2022).
  • medium: similar to long but returns the date with an abbreviated month (for example, Oct 24, 2022).
  • short: returns the date in the format of MM/DD/YY or DD/MM/YY according to the user's locale (for example, 10/24/2022 or 24/10/2022).

If any other value is passed the API defaults to medium. Accepted values are not case sensitive.

language String Sets the language using a language tag that conforms with the BCP-47 standard. For example, fr for French or en-UK for British English. For a full list of accepted values, see BCP 47 Language Code List.
Table 23. Returns
Type Description
Void

Example

The following example returns the date and time in short and full styles for English and French.

var glideDateFR = new GlideDate(); 

glideDateUS.setDisplayValueLang("2/3/202", "short", "en-US" );
glideDateFR.setDisplayValueLang("2/3/2023", "short", "fr-FR" );

gs.info('en-US date: ' + glideDateUS.getDisplayValue());
gs.info('en-US date: ' + glideDateUS.getDisplayValueLang("full"));

gs.info('fr-FR date: ' + glideDateFR.getDisplayValue());
gs.info('fr-FR date: ' + glideDateFR.getDisplayValueLang("full"));

Output:

en-US date: 2023-02-03
en-US date: Friday, February 3, 2023
fr-FR date: 2023-03-02
fr-FR date: Thursday, March 2, 2023

GlideDate - setValue(String o)

Sets the date of the current GlideDate object in internal format (yyyy-MM-dd) and the system time zone (UTC by default).

Table 24. Parameters
Name Type Description
o String Date and time to set in the current GlideDate object.

Format: yyyy-MM-dd

Table 25. Returns
Type Description
None

Example

var gd = new GlideDate(); 
gd.setValue('2015-01-01');
gs.info(gd.getValue());

Output:

2015-01-01

Scoped equivalent

To use this method in a scoped application, use the corresponding scoped method: Scoped GlideDate - setValue(String o).