The class is used to conduct operations on SimpleDateTime objects, for example, instantiating objects.
You can also use this class to calculate, change formats of the date-time or convert between the formats.
SimpleDateTime(dateTime)
Instantiates Use this constructor to instantiate a new SimpleDateTime object with the current or transferred date/time. Specify the date and time value in the UTC timezone.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
dateTime | String | N | '' |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | SimpleDateTime |
---|
linenumbers | true |
---|
|
const nowDateTime = new SimpleDateTime();
//
const registrationDateTime = new SimpleDateTime(record.registration_datetime);
//
const yearStartDateTime = new SimpleDateTime('2019-01-01 00:00:00');
//
const laborDayStart |
You can also use the values in relative format for the SimpleDateTime constructor. All formats are available in the Relative Formats article.
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | SimpleDateTime |
---|
linenumbers | true |
---|
|
const yesterdayDatetime = new SimpleDateTime('2019-05-01yesterday');
ss.info(yesterdayDatetime.getValue());
// Info: 20192022-0502-0128 00:00:00 |
addDays(days)
const tomorrowDatetime = new SimpleDateTime('tomorrow');
ss.info(tomorrowDatetime.getValue());
// Info: 2022-03-02 00:00:00
const yesterdayWorkdayDayStart = new SimpleDateTime('yesterday 06:30');
ss.info(yesterdayWorkdayDayStart.getValue());
// Info: 2022-02-28 06:30:00
const fistDayOfNextMonthStart = new SimpleDateTime('first day of next month 00:00');
ss.info(fistDayOfNextMonthStart.getValue());
// Info: 2022-04-01 00:00:00
const rangeStartDatetime = new SimpleDateTime(`first day of ${monthName}`);
ss.info(rangeStartDatetime .getValue());
// Info: 2022-02-01 00:00:00
const YEAR = 2022;
const MONTH = 2;
const monthDatetime = new SimpleDateTime(`${YEAR}-${String(MONTH).padStart(2, '0')}-02 00:00:00`);
const monthName = monthDatetime.getMonthUTC();
ss.info(monthName);
// Info: February |
addDays(days)
This method is used to change the number of days in the current SimpleDateTime object according to the local date and time. The positive value of the This method is used to change the number of days in the current SimpleDateTime object according to the local date and time. The positive value of the parameter adds days to the object, the negative value diminishes the number of days.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
days | integer | Y | N |
Return:
Type | Description |
---|
Void | This method does not return a value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | addDays |
---|
linenumbers | true |
---|
|
const registrationDateTime = new SimpleDateTime('2019-01-01 08:12:10');
registrationDateTime.addDays(3);
ss.info(registrationDateTime.getValue());
//Info: 2019-01-04 08:12:10 |
addMonths(months)
This method is used to change the number of months in the current SimpleDateTime object according to the local date and time. The positive value of the parameter adds months to the object, the negative value diminishes the number of months.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
months | Integer | Y | N |
Return:
Type | Description |
---|
Void | This method does not return a value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | addMonths |
---|
linenumbers | true |
---|
|
const registrationDateTime = new SimpleDateTime('2019-01-01 08:12:10');
registrationDateTime.addMonths(-1);
ss.info(registrationDateTime.getValue());
//Info: 2018-12-01 08:12:10 |
addSeconds(seconds)
This method is used to change the number of seconds in the current SimpleDateTime object according to the local date and time. The positive value of the parameter adds seconds to the object, the negative value diminishes the number of seconds.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
seconds | Integer | Y | N |
Return:
Type | Description |
---|
Void | This method does not return a value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | addSeconds |
---|
linenumbers | true |
---|
|
const registrationDateTime = new SimpleDateTime('2019-01-01 08:12:10');
registrationDateTime.addSeconds(3600);
ss.info(registrationDateTime.getValue());
//Info: 2019-01-01 09:12:10 |
addWeeks(weeks)
This method is used to change the number of weeks in the current SimpleDateTime object according to the local date and time. The positive value of the parameter adds weeks to the object, the negative value diminishes the number of weeks.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
weeks | Integer | Y | N |
Return:
Type | Description |
---|
Void | This method does not return a value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | addWeeks |
---|
linenumbers | true |
---|
|
const registrationDateTime = new SimpleDateTime('2019-01-01 08:12:10');
registrationDateTime.addWeeks(1);
ss.info(registrationDateTime.getValue());
//Info: 2019-01-08 08:12:10 |
addYears(years)
This method is used to change the number of years in the current SimpleDateTime object according to the local date and time. The positive value of the parameter adds years to the object, the negative value diminishes the number of years.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
years | Integer | Y | N |
Return:
Type | Description |
---|
Void | This method does not return a value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | addYears |
---|
linenumbers | true |
---|
|
const contractStartDateTime = new SimpleDateTime('2019-01-01 00:00:00');
contractStartDateTime.addYears(1);
ss.info(contractStartDateTime.getValue());
//Info: 2020-01-01 00:00:00 |
after(dateTime)
This method allows to compare the date specified by the ‘dateTime‘ parameter with the current date.
The method returns TRUE, if the current date is after the specified; otherwise returns FALSE.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
dateTime | SimpleDateTime object | Y | N |
Return:
Type | Description |
---|
Boolean | The method returns TRUE if the current date is later than the date specified by the parameter; otherwise, returns FALSE. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | after |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2018-01-01 07:58:35');
const endDateTime = new SimpleDateTime('2019-01-01 08:00:00');
const isStartLaterThanEndisStartAfterThanEnd = startDateTime.after(endDateTime);
ss.info(isStartLaterThanEndisStartAfterThanEnd);
//Info: false |
before(dateTime)
This method allows to compare the date specified by the ‘dateTime‘ parameter with the current date.
The method returns TRUE, if the current date is before the specified; otherwise returns false.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
dateTime | SimpleDateTime object | Y | N |
Return:
Type | Description |
---|
Boolean | The method returns TRUE if the current date is earlier than the date specified by the parameter; otherwise, returns FALSE. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | before |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2018-01-01 07:58:35');
const endDateTime = new SimpleDateTime('2019-01-01 08:00:00');
const isStartBeforeEnd = startDateTime.before(endDateTime);
ss.info(isStartBeforeEnd);
//Info: true |
compareTo(dateTime)
This method compares two date and time objects to determine whether they are equal and, if not, the method defines which goes after or before the other.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
dateTime | SimpleDateTime object | Y | N |
Return:
Type | Description |
---|
0 | Dates are equal. |
1 | Object's date is after the date specified in the parameter. |
-1 | Object's date is before the date specified in the parameter. |
Example::
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | compareTo |
---|
linenumbers | true |
---|
|
const begin |
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | compareTo |
---|
linenumbers | true |
---|
|
const firstDateTime = new SimpleDateTime('2019-01-01 08:00:00');
const secondDateTime = new SimpleDateTime('2019-0104-01 08:15:00');
const thirdDateTimeend = new SimpleDateTime('2019-0105-01 0801:00:00');
ss.info(firstDateTimebegin.compareTo(thirdDateTimeend)); // -1
ss.info(secondDateTimeend.compareTo(thirdDateTimebegin)); // 1
ss.info(firstDateTimebegin.compareTo(secondDateTime));
//Info: 0
//Info: 1
//Info: -1begin)); // 0 |
equals(dateTime)
This method compares a datetime with an existing value to determine whether they are equal or not.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
dateTime | SimpleDateTime object. | Y | N |
Return:
Type | Description |
---|
Boolean | This method returns TRUE if the date are equal; otherwise, it returns FALSE. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | equals |
---|
linenumbers | true |
---|
|
const firstDateTime = new SimpleDateTime('2018-01-01 08:00:00');
const secondDateTime = new SimpleDateTime('2018-01-01 08:15:00');
const thirdDateTime = new SimpleDateTime('2018-01-01 08:00:00');
ss.info(firstDateTime.equals(secondDateTime));
ss.info(thirdDateTime.equals(firstDateTime));
//Info: false
//Info: true |
getDate()
This method returns the date saved by the SimpleDateTime object in the system time zone.
Return:
Type | Description |
---|
String | The date in the default timezone. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getDate |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
ss.info(startDateTime.getDate());
//Info: 2019-01-01 |
getDayOfMonthLocalTime()
This method returns the day of the month saved by the SimpleDateTime object in the current user's time zone.
Return:
Type | Description |
---|
Integer | The day of the month value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getDaysofMonthsLocalTime |
---|
linenumbers | true |
---|
|
const holidayDateTime = new SimpleDateTime('2019-01-07 08:00:00');
ss.info(holidayDateTime.getDayOfMonthLocalTime());
//Info: 7 |
getDayOfMonthUTC()
This method returns the day of the month saved by the SimpleDateTime object in the UTC time zone.
Return:
Type | Description |
---|
Integer | The day of the month value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getDaysofMonthsLocalTime |
---|
linenumbers | true |
---|
|
const holidayDateTime = new SimpleDateTime('2019-01-07 08:00:00');
ss.info(holidayDateTime.getDayOfMonthUTC());
//Info: 7 |
getDayOfWeekLocalTime()
This method returns the day of the week saved by the SimpleDateTime object in the current user's time zone.
Return:
Type | Description |
---|
String | The day of week value. Possible values: 'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat' |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getDayOfWeekLocalTime |
---|
linenumbers | true |
---|
|
const holidayDateTime = new SimpleDateTime('2019-01-07 08:00:00');
ss.info(holidayDateTime.getDayOfWeekLocalTime()); // Mon |
getDayOfWeekUTC()
This method returns the day of the week saved by the SimpleDateTime object in the system time zone.
Return:
Type | Description |
---|
String | The day of week value. Possible values: 'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat' |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getDayOfWeekUTC |
---|
linenumbers | true |
---|
|
const holidayDateTime = new SimpleDateTime('2019-01-07 08:00:00');
ss.info(holidayDateTime.getDayOfWeekUTC());
//Info: Mon |
getDaysInMonthLocalTime()
This method returns the number of days in the month saved by the SimpleDateTime object in the current user's time zone.
Return:
Type | Description |
---|
Integer | The number of days value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getDaysInMonthLocalTime |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
ss.info(startDateTime.getDaysInMonthLocalTime());
//Info: 31 |
getDaysInMonthUTC()
This method returns the number of days in the month saved by the SimpleDateTime object in the system time zone.
Return:
Type | Description |
---|
Integer | The number of days value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getDaysInMonthUTC |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
ss.info(startDateTime.getDaysInMonthUTC());
//Info: 31 |
getDisplayValue()
This method returns the date and time value in the current user's display format and timezone.
Return:
Type | Description |
---|
String | The date and time value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getDisplayValue |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
ss.info(startDateTime.getDisplayValue()); // current user's timezone is Europe/Moscow
//Info: 2019-01-01 11:00:00 |
getErrorMsg()
This method returns the error message if the SimpleDateTime object was incorrect.
Return:
Type | Description |
---|
String | The error message. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getErrorMsg |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-zz-01 08:00:00');
ss.error(startDateTime.getErrorMsg());
//Error: DateTimeZone::getOffset() expects parameter 1 to be DateTimeInterface, null given |
getLocalDate()
This method returns the date saved by the SimpleDateTime object in the current user's time zone.
Return:
Type | Description |
---|
String | The date in the user's time zone. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getLocalDate |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
ss.info(startDateTime.getLocalDate());
//Info: 2019-01-01 |
getLocalTime()
This method returns the time saved in a SimpleDateTime object in the current user's time zone .
Return:
Type | Description |
---|
SimpleDateTime | The time in the user's time zone. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getLocalTime |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
const time = startDateTime.getLocalTime();
ss.info( "My local time is " + time.getByFormat('h:i:s'));
//Info: My local time is 02:00:00 |
getMonthLocalTime()
This method returns the month saved by SimpleDateTime object in the current user's time zone.
Return:
Type | Description |
---|
String | The value of the month. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getMonthLocalTime |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-12-31 23:45:00');
ss.info(startDateTime.getMonthLocalTime());
//Info: January |
getMonthUTC()
This method returns the month saved by SimpleDateTime object in the system time zone.
Return:
Type | Description |
---|
String | The value of the month. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getMonthUTC |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-12-31 23:45:00');
ss.info(startDateTime.getMonthUTC());
//Info: December |
getNumericValue()
This method returns the Unix timestamp, which stores the amount of seconds since January 1, 1970, 00:00:00.
Return:
Type | Description |
---|
Integer | The Unix timestamp value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getNumericValue |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
ss.info(startDateTime.getNumericValue());
//Info: 1546329600 |
getTime()
This method returns a SimpleDateTime object that shows the piece of time of the SimpleDateTime object.
Return:
Type | Description |
---|
SimpleDateTime | The Unix duration stamp. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getTime |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
const time = startDateTime.getTime();
ss.info(time.getByFormat('h:i:s'));
//Info: 11:01:00 |
getValue()
This method returns the date and time value in the internal format.
Return:
Type | Description |
---|
null | string | The date and time value in the internal format. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getValue |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
ss.info(startDateTime.getValue()); // 2019-01-01 08:00:00 |
getWeekOfYearLocalTime()
This method returns the week's number saved by the SimpleDateTime object in the current user's time zone.
Return:
Type | Description |
---|
Integer | The number of the current week. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getWeekOfYearLocalTime |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-12-31 23:45:00');
ss.info(startDateTime.getWeekOfYearLocalTime());
//Info: 1 |
getWeekOfYearUTC()
This method returns the number of the week saved by the SimpleDateTime object in the system time zone.
Return:
Type | Description |
---|
Integer | The number of the current week. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getWeekOfYearUTC |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-12-31 23:45:00');
ss.info(startDateTime.getWeekOfYearUTC());
//Info: 1 |
getYearLocalTime()
This method returns the year saved by the SimpleDateTime object in the current user's time zone.
Return:
Type | Description |
---|
Integer | Four-digit year value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getYearLocalTime |
---|
linenumbers | true |
---|
|
const holidayDateTime = new SimpleDateTime('2019-12-31 23:45:00');
ss.info(holidayDateTime.getYearLocalTime());
//Info: 2020 |
getYearUTC()
This method returns the year saved by the SimpleDateTime object in the system time zone.
Return:
Type | Description |
---|
Integer | Four-digit year value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getYearUTC |
---|
linenumbers | true |
---|
|
const holidayDateTime = new SimpleDateTime('2019-12-31 23:45:00');
ss.info(holidayDateTime.getYearUTC());
//Info: 2019 |
isValid()
This method allows to determine if a specified value is a valid date and time.
Return:
Type | Description |
---|
Boolean | The method returns TRUE if the value is a valid date and time; otherwise, it returns . |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | isValid |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
startDateTime.setValue("'2011-aa-01 00:00:00"');
ss.info(startDateTime.isValid());
//Info: false |
setValue(dateTime)
This method is intended to define the date and time value within the SimpleDateTime object.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
dateTime | A string in the UTC timezone and the internal format of YYYY-MM-DD hh:mm:ss. | Y | N |
dateTime | A SimpleDateTime object. | Y | N |
dateTime | A JavaScript Number. It sets the value of the object using the Number value as milliseconds past January 1, 1970, 00:00:00. | Y | N |
Return:
Type | Description |
---|
Void | This method does not return a value. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | setValue |
---|
linenumbers | true |
---|
|
const startDateTime = new SimpleDateTime('2019-01-01 08:00:00');
startDateTime.setValue('2020-01-01 12:00:00');
ss.info(startDateTime.getValue());
//Info: 2020-01-01 12:00:00 |
subtract(first, second)
This method returns the amount of time between two SimpleDateTime values. Also, it can subtract the amount of time from the current SimpleDateTime objectobject.
Note |
---|
Displaying of the final value using the getDisplayValue() method returns it considering the current user' timezone, unlike the getValue() method. It returns data only in UTC timezone. |
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
first | SimpleDateTime Object | Y | N | first | SimpleTime Object | Y | N |
first | Number (milliseconds) | Y | N |
second | SimpleDateTime Object | N | NULL | second | SimpleTime Object | N | NULL |
second | Number (milliseconds) | N | NULL |
Return:
Type |
---|
SimpleDuration object |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | subtract #1 |
---|
linenumbers | true |
---|
|
const plannedDateTimestartDatetime = new SimpleDateTime(current.actual_end_datetime); // '2019-11-08 20:00:00');
const actualDateTimeendDatetime = new SimpleDateTime(current.planned_end_datetime); // '2019-11-08 20:06:28'
if (actualDateTime.after(plannedDateTime)) {
const duraction = actualDateTime.subtract(plannedDateTime, actualDateTime); // 388
if (duraction.getDurationSeconds() > 300) { // more than 5 minutes
ss.eventQueue('notify.change_manager', current, current.assigned_user.getValue('manager'));
}
} |
Same example without using of the subtract:);
const diffDuration = new SimpleDateTime().subtract(startDatetime, endDatetime);
ss.info(diffDuration.getDurationSeconds());
// Info: 388 |
Same example without using of the subtract:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
linenumbers | true |
---|
|
const startDatetime = new SimpleDateTime('2019-11-08 20:00:00');
const endDatetime = new SimpleDateTime('2019-11-08 20:06:28');
const diffSeconds = endDatetime.getNumericValue() - startDatetime.getNumericValue();
ss.info(diffSeconds);
// Info: 388 |
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
linenumbers | true |
---|
title | subtract #2 |
---|
linenumbers | true |
---|
|
const datetimeconst plannedDateTime = new SimpleDateTime(current.actual_end_datetime); // '2019-11-08 20:00:00'
const actualDateTime = new SimpleDateTime(current.planned_end_datetime); // '2019-11-08 20:06:28'
if (actualDateTime.after(plannedDateTime)) {
const duraction = plannedDateTime.getNumericValue() - actualDateTime.getNumericValue(); // 388
if (duraction > 300) { // more than 5 minutes
ss.eventQueue('notify.change_manager', current, current.assigned_user.getValue('manager'));
}
}'2020-08-28 09:00:00');
datetime.subtract(3600);
ss.info(datetime.getValue());
//Info: 2020-08-28 08:00:00 |
Same example without using of the subtract:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | subtract #2 |
---|
linenumbers | true |
---|
|
const datetime = new SimpleDateTime('2020-08-28 09:00:00');
datetime.addSeconds(-3600);
ss.info(datetime.getValue());
//Info: 2020-08-28 08:00:00 |