- API
 - Business calendars
 - Work schedule
 
- Getting started [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
 - Manage types
 - Global context and isolation
 - Manage apps
 - Batch actions with app items
 - Manage external services
 - Scripts in widgets
 - Web components
 - Access permissions
 - Getting started with processes
 - Getting started with signatures
 - Getting started with file previews
 - Getting started with the organizational chart
 - Getting started with users and groups
 - 
							Getting started with the 
Table data type  - Use cases
 - API
 
Report a mistake
				There is a mistake in the following text:
				
				
				
				Feedback sent successfully
Thank you for your input
Work schedule
Type parameters
T: WorkScheduleType
Hierarchy
Properties
cycle
Working cycle.
A cycle is an ordered list with day settings that is applied in a cycle to calendar days starting from the date it was applied to the working schedule. A weekly cycle is an array of exactly seven items with settings for each day of the week. The item with index
0is Sunday; the item with index1is Monday and so on. Example of settings up the work schedule woth a weekly cycle: schdule " Five-day workweek".const workSchedule: WorkSchedule<'weekly'> = { type: 'weekly', cycle: [] , }; for (let i = 0; i <= 6; i++ ) { const daySettings: CalendarDaySettings = { startAt: new TTime(9, 0, 0, 0), // work days starts at 9:00 endAt: new TTime(18, 0, 0, 0), // work day ends at18:00 breaks: [ // there is one break during the day from 12: 00 to 13:00 { startAt: new TTime(12, 0, 0, 0), endAt: new TTime(13, 0, 0, 0), description: 'Lunch break', }, ]; isWorkingDay: true, // is a working day isHolidayDay: false, // is a non-working day }; switch (i) { // sunday (day off) case 0: daySettings.isWorkingDay = false; daySettings.isHolidayDay = false; daySettings.description = 'Sunday'; break; // monday case 1: daySettings.description = 'Monday'; break; // tuesday case 2: daySettings.description = 'Tuesday'; break; // wednesday case 3: daySettings.description = 'Wednesday'; break; // thursday case 4: daySettings.description = 'Thursday'; break; // friday case 5: daySettings.description = 'Friday'; break; // saturday(day off) case 6: daySettings.isWorkingDay = false; daySettings.isHolidayDay = false; daySettings.description = 'Saturday'; break; default: throw new Error('incorrect day index'); } workSchedule.cycle.push(daySettings); }A custotm cycle can be an array of any number of items. The item with index
0will contain the settings of the day that corresponds to the date that the shedule was applied. Such a cycle can be used, for example, to set up a "24 shift" schedule. Example of the "24 hours and 2 days off" shift. The shift starts at 7:00 a.m. and ends at 6:59 a.m. the next calendar day.const workSchedule: WorkSchedule<'custom'> = { type: 'custom', cycle: [], }; // the shift lasts for 24 hours (with a 30-minute break) and takes up two calendar days workSchedule.cycle.push({ startAt: new TTime(7, 0, 0, 0), // the work day starts at 7:00 endAt: new TTime( 23, 59, 59, 999), // the work day ends at 23:59 breaks: [ // there is one break from 15:00 to 15:30 { startAt: new TTime(15, 0, 0, 0), endAt: new TTime(15, 30, 0, 0), }, ], isWorkingDay: true, /is a working day isHolidayDay: false, // is a non-working day }); workSchedule.cycle.push({ startAt: new TTime(0, 0, 0, 0), // work day starts at 00:00 endAt: new TTime(6, 59, 59, 999) , // work day ends at 06:59 isWorkingDay: true, // is a working day isHolidayDay: false, // is not a bank holiday }); // settings of the day off workSchedule.cycle.push({ startAt: new TTime(0, 0, 0, 0), // day off starts at 00:00 endAt: new TTime(23, 59, 59, 999), // day off ends at 23:59 isWorkingDay: false, // is not a working day isHolidayDay: false, // is not a bank holiday });Optional defaultDaySettings
								  
Standard working day settings.
The field is used to configure the settings of a regular working day. The fiels is created with the following default settings:
{ startAt: new TTime(9, 0, 0, 0), // Working day starts at 9:00 endAt: new TTime(18, 0, 0, 0), // Working day ends at 18:00 breaks: [ // During the working day there is one break from 12:00 to 13:00 { startAt: new TTime(12, 0, 0, 0), endAt: new TTime(13, 30, 0, 0), }, ], isWorkingDay: true, // This is a work day isHolidayDay: false, // This is not a non-working day }Note: The field is always filled in. This field is a non- required one for reverse compatibility.
type
Type of work schedule:
weekly— weekly,custom— custom.Properties