Options
All
  • Public
  • Public/Protected
  • All
Menu

RecurrencePattern

Quick code snippet to obtain JavaScript date from Gregorian calendar:

new Date(-11644473600000 + startDate * 1000 * 60);
new Date(-11644473600000 + endDate * 1000 * 60);
see

[MS-OXOCAL]: RecurrencePattern Structure | Microsoft Learn

Hierarchy

  • RecurrencePattern

Index

Properties

calendarType: CalendarType

An integer that specifies the type of calendar that is used.

The acceptable values for the calendar type are listed in the following table.

Name Value Meaning
Default 0x0000 The default value for the calendar type is Gregorian. If the value of the PatternType field is HjMonth, HjMonthNth, or HjMonthEnd and the value of the CalendarType field is Default, this recurrence uses the Hijri calendar.
CAL_GREGORIAN 0x0001 Gregorian (localized) calendar
CAL_GREGORIAN_US 0x0002 Gregorian (U.S.) calendar
CAL_JAPAN 0x0003 Japanese Emperor era calendar
CAL_TAIWAN 0x0004 Taiwan calendar
CAL_KOREA 0x0005 Korean Tangun era calendar
CAL_HIJRI 0x0006 Hijri (Arabic Lunar) calendar
CAL_THAI 0x0007 Thai calendar
CAL_HEBREW 0x0008 Hebrew lunar calendar
CAL_GREGORIAN_ME_FRENCH 0x0009 Gregorian Middle East French calendar
CAL_GREGORIAN_ARABIC 0x000A Gregorian Arabic calendar
CAL_GREGORIAN_XLIT_ENGLISH 0x000B Gregorian transliterated English calendar
CAL_GREGORIAN_XLIT_FRENCH 0x000C Gregorian transliterated French calendar
CAL_LUNAR_JAPANESE 0x000E Japanese lunar calendar
CAL_CHINESE_LUNAR 0x000F Chinese lunar calendar
CAL_SAKA 0x0010 Saka era calendar
CAL_LUNAR_ETO_CHN 0x0011 Lunar ETO Chinese calendar
CAL_LUNAR_ETO_KOR 0x0012 Lunar ETO Korean calendar
CAL_LUNAR_ROKUYOU 0x0013 Lunar Rokuyou calendar
CAL_LUNAR_KOREAN 0x0014 Korean lunar calendar
CAL_UMALQURA 0x0017 Um Al Qura calendar
deletedInstanceDates: number[]

An array of dates, each of which is the original instance date of either a deleted instance or a modified instance for this recurrence.

The number of dates contained in this array is specified by the DeletedInstanceCount field.

Each date is stored as the number of minutes between midnight, January 1, 1601, and midnight of the specified day, in the time zone specified by the PidLidTimeZoneStruct property (section 2.2.1.39).

The dates are ordered from earliest to latest.

endDate: number

An integer that specifies the ending date for the recurrence.

The value is the number of minutes between midnight, January 1, 1601, and midnight of the date of the last occurrence.

When the value of the endType field is 0x00002022 (end after n occurrences), this value is calculated based on the number of occurrences

If the recurrence does not have an end date, the value of the endDate field MUST be set to 0x5AE980DF.

endType: EndType

An integer that specifies the ending type for the recurrence.

This field MUST be set to one of the values listed in the following table.

Recurrence range type Value
End after date 0x00002021
End after N occurrences 0x00002022
Never end SHOULD be 0x00002023 but can be 0xFFFFFFFF
firstDOW: number

An integer that specifies the day on which the calendar week begins.

The default value is Sunday (0x00000000).

This field MUST be set to one of the values listed in the following table.

Day Value
Sunday 0x00000000
Monday 0x00000001
Tuesday 0x00000002
Wednesday 0x00000003
Thursday 0x00000004
Friday 0x00000005
Saturday 0x00000006
firstDateTime: number

An integer that specifies the first ever day, week, or month of a recurring series, dating back to a reference date, which is January 1, 1601, for a Gregorian calendar.

The value and its meaning depend on the value of the RecurFrequency field. The value of the FirstDateTime field is used to determine the valid dates of a recurring series, as specified in section 2.2.1.44.1.2.

modifiedInstanceDates: number[]

An array of dates, each of which is the date of a modified instance.

The number of dates contained in this array is specified by the ModifiedInstanceCount field.

Each date is stored as the number of minutes between midnight, January 1, 1601, and midnight of the specified day, in the time zone specified by the PidLidTimeZoneStruct property (section 2.2.1.39).

The dates are ordered from earliest to latest.

occurrenceCount: number

An integer that specifies the number of occurrences in a recurrence.

patternType: PatternType

An integer that specifies the type of recurrence pattern.

The valid recurrence pattern types are listed in the following table.

Name Value Meaning
Day 0x0000 The event has a daily recurrence.
Week 0x0001 The event has a weekly recurrence.
Month 0x0002 The event has a monthly recurrence.
MonthEnd 0x0004 The event has a month-end recurrence.
MonthNth 0x0003 The event has an every nth month pattern.
HjMonth 0x000A The event has a monthly recurrence in the Hijri calendar. For this value in the PatternType field, the value of the CalendarType field SHOULD be set to 0x0000.
HjMonthNth 0x000B The event has an every nth month pattern in the Hijri calendar. For this value in the PatternType field, the value of the CalendarType field MUST be set to 0x0000.
HjMonthEnd 0x000C The event has a month end recurrence in the Hijri calendar. For this value in the PatternType field, the value of the CalendarType field MUST be set to 0x0000.
patternTypeMonth?: PatternTypeMonth
patternTypeMonthNth?: PatternTypeMonthNth
patternTypeWeek?: PatternTypeWeek
period: number

An integer that specifies the interval at which the meeting pattern specified in PatternTypeSpecific field repeats. The period value MUST be between 1 and the maximum recurrence interval, which is 999 days for daily recurrences, 99 weeks for weekly recurrences, and 99 months for monthly recurrences.

The following table lists the values for this field based on the recurrence frequency, which is specified in the recurFrequency field.

Frequency Value
Daily recurrence The period is stored as the minutes in whole number of days. For example, to define a recurrence that occurs every two days, the period field is set to 0x00000B40, which equals 2880 minutes, or two days.
Weekly recurrence The period is stored in weeks. For example, if the period field is set to 0x00000002, the meeting occurs every two weeks.
Monthly or yearly recurrence The period is stored in months. If the recurrence is a yearly recurrence, The period field MUST be set to 12.
recurFrequency: RecurFrequency

An integer that specifies the frequency of the recurring series.

Valid values are listed in the following table.

RecurFrequency Value
Daily 0x200A
Weekly 0x200B
Monthly 0x200C
Yearly 0x200D
slidingFlag: number

This field is only used for scheduling tasks; otherwise the value MUST be zero (0). For more details about sliding tasks, see [MS-OXOTASK] section 3.1.4.6.2.

startDate: number

An integer that specifies the date of the first occurrence.

The value is the number of minutes between midnight, January 1, 1601, and midnight of the date of the first occurrence.

Generated using TypeDoc