Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
This server class provides methods to operate with the SimpleSchedule objects, for example, getting a schedule name, determining if the current time matches with working time, and returning the difference between two time values.
SimpleSchedule(id, timezoneTitle)
his method instantiates a new SimpleSchedule object.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|---|---|---|
id | String | Y | N |
timezoneTitle | String | N | 'UTC' |
Example:
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
const schedule = new SimpleSchedule('157165292607666710', 'UTC'); |
duration(startDateTime, endDateTime)
This method determines the number of seconds in the schedule between two datetime Datetime values, based on the schedule time zone or, if not specified, the session time zone.
Note |
---|
Passed dateTime values should be in the schedule. To verify it, use the isInSchedule(datetime) method. |
Parameter(s):
Name | Type | Mandatory | Default Value |
---|---|---|---|
startDateTime | SimpleDateTime | Y | N |
endDateTime | SimpleDateTime | Y | N |
Return:
Type | Description |
---|---|
SimpleDuration | The difference between the two time values. |
Example:
Code Block | ||||
---|---|---|---|---|
| ||||
const startDatetime = new SimpleDateTime('2022-01-25 08:00:00'); const endDatetime = new SimpleDateTime('2022-01-29 08:00:00'); const schedule = new SimpleSchedule('161050499417811121'); // sys_schedule.sys_id const duration = schedule.duration(startDatetime, endDatetime); ss.info(duration.getValue()); // Info: 1970-01-02 08:00:00 |
getName()
This method returns the name of the defined schedule.
Return:
Type | Description |
---|---|
String | A schedule name. |
Example:
Code Block | ||||
---|---|---|---|---|
| ||||
const schedule = new SimpleSchedule('157165292607666710'); ss.info(schedule.getName()); // Info: 8x5 excluding Russian Holidays |
isInSchedule(datetime)
This method verifies whether the current schedule includes the given datetime or they do not match.
Info |
---|
Excluded schedule segments also return 'true' within checking by this method. |
Parameter(s):
Name | Type | Mandatory | Default Value |
---|---|---|---|
datetime | SimpleDateTime | Y | N |
Return:
Type | Description |
---|---|
Boolean | This method returns 'true' if the specified datetime is in schedule; otherwise, it returns 'false'. |
Example:
Code Block | ||||
---|---|---|---|---|
| ||||
const nowDatetime = new SimpleDateTime(); const schedule = new SimpleSchedule('157165292607666710'); // sys_schedule.sys_id ss.info(schedule.isInSchedule(nowDatetime)); // Info: false |
isValid()
The method verifies if the specified SimpleSchedule object is valid.
Info |
---|
The object is considered as invalid when:
In both cases above, the isValid() method returns 'false'. |
Return:
Type | Description |
---|---|
Boolean | This method returns 'true' if the schedule is valid; otherwise, it returns 'false'. |
Example:
Code Block | ||||
---|---|---|---|---|
| ||||
const schedule = new SimpleSchedule('157165292607666710'); // sys_schedule.sys_id ss.info(schedule.isValid()); // Info: true |
isWorkingTime(datetime)
This method checks whether a provided date and time is a working time or not.
Info |
---|
Excluded schedule segments also return 'true' within checking by this method. |
Parameter(s):
Name | Type | Mandatory | Default Value |
---|---|---|---|
datetime | SimpleDateTime | Y | N |
Return:
Type | Description |
---|---|
Boolean | This method returns 'true' if the provided date and time is a working time; otherwise, it returns 'false'. |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
const schedule = new SimpleSchedule('157165292607666710'); // sys_schedule.sys_id const firstDatetime = new SimpleDateTime('2020-12-15 05:59:59'); const secondDatetime = new SimpleDateTime('2020-12-15 06:00:00'); ss.info(schedule.isWorkingTime(firstDatetime)); // Info: false ss.info(schedule.isWorkingTime(secondDatetime)); // Info: true |
load(sysId, timezoneTitle)
This method initializes a schedule specified with the sys_id.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|---|---|---|
sysId | String | Y | N |
timezoneTitle | String (empty string by default) | N | '' |
Return:
Type | Description |
---|---|
Void | This method does not return a value. |
Example:
Code Block | ||||
---|---|---|---|---|
| ||||
const schedule = new SimpleSchedule(); schedule.load('157165292607666710'); // sys_schedule.sys_id |
setTimeZone(timezoneTitle)
Use this method to define which time zone to applied apply to the current schedule.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|---|---|---|
timezoneTitle | String | Y | N |
Return:
Type | Description |
---|---|
Void | This method does not return a value. |
Example:
Code Block | ||||
---|---|---|---|---|
| ||||
const schedule = new SimpleSchedule('157165292607666710'); // sys_schedule.sys_id schedule.setTimeZone('US/Central'); |
whenNext(datetime, timezoneTitle)
This method returns the number of seconds left until the next schedule element starts.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|---|---|---|
datetime | SimpleDateTime | Y | N |
timezoneTitle | String | N | '' |
Return:
Type | Description |
---|---|
SimpleDuration | The SimpleDuration object. |
Example:
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
const startDatetime = new SimpleDateTime(); const schedule = new SimpleSchedule('161050499417811121'); // sys_schedule.sys_id ss.info('Seconds Left: ' + schedule.whenNext(startDatetime).getDurationSeconds()); // Info: Seconds Left: 6052 |
whenWillExpire(startDateTime, finalWorkingSeconds)
This method determines the time after working seconds value specified in the finalWorkingSeconds parameter passes.
Note |
---|
Please note Note that finalWorkingSeconds parameter does not support negative values. |
Parameter(s):
Name | Type | Mandatory | Default Value |
---|---|---|---|
startDate | SimpleDateTime | Y | N |
finalWorkingSeconds | Integer | Y | N |
Return:
Type | Description |
---|---|
SimpleDateTime object or 'null' | This method returns the SimpleDateTime object. |
Note |
---|
If the SimpleSchedule class object is not valid (the isValid() method returns 'false' for this object), then the whenWillExpire() method returns 'null' for it. |
Example:
Code Block | ||||
---|---|---|---|---|
| ||||
const startDatetime = new SimpleDateTime('2022-01-23 08:00:00'); const finalWorkingSeconds = 5 * 8 * 3600; // duration of 5 eight-hour days in seconds const schedule = new SimpleSchedule('161050499417811121'); // sys_schedule.sys_id ss.info(schedule.whenWillExpire(startDatetime, finalWorkingSeconds).getValue()); // Info: 2022-01-28 18:30:00 |
Table of Contents | ||||
---|---|---|---|---|
|