如何在Ical Outlook日历中创建重复事件时排除特定日期

时间:2015-09-04 06:43:08

标签: outlook icalendar recurring vcalendar

我想在Outlook中创建一个重复的Ical事件,我已经使用了RRule,请参阅下面的

RRULE; BYDAY = SU; WKST = MO:FREQ = MONTHLY; INTERVAL = 1; UNTIL = 20151204T110000

所以上面将每月04日举行一次活动,直到2015年12月

现在在Outlook日历中,我不想在10月4日创建活动。

比如说这是9月到12月的第4次重复活动,但我不想在10月份停止活动。

如何实现这一目标?我们可以在制作周期性事件/我们需要在RRULE中添加的任何其他值时排除任何日期吗?

非常感谢您的帮助。请参阅下面的.ics文件

BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 9.0 MIMEDIR//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH

BEGIN:VEVENT
DTSTART:20150904T100000
DTEND:20151204T110000
DTSTAMP:20150904T012650Z
RRULE;BYDAY=SU;WKST=MO:FREQ=MONTHLY;INTERVAL=1;UNTIL=20151204T110000 
UID:77744@dev.local
Location:AP Test
DESCRIPTION:Test,\n\nThank you for making an appointment with us. You are confirmed for the following appointment:\n\n\nDate: Friday, December 4, 2015\nTime: 10:00am to 11:00am \nWith: AP Test\n\n\n
LAST-MODIFIED:20150904T012650Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:AP Test - test service
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR

2 个答案:

答案 0 :(得分:0)

您希望为要排除的每个日期使用EXDATE属性。见http://tools.ietf.org/html/rfc5545#section-3.8.5.1

答案 1 :(得分:0)

我使用下面的代码来修复它:

BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 9.0 MIMEDIR//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH

BEGIN:VEVENT
DTSTART:20150909T120000
DTSTAMP:20150909T020511Z
RRULE;BYDAY=SU;WKST=MO:FREQ=DAILY;INTERVAL=1;UNTIL=20150914T130000
EXDATE:20150912T120000, 20150913T120000
UID:77882@vchidura.dev.local
Location:Test
DESCRIPTION:Test,\n\nThank you for making an appointment with us. You are confirmed for the following appointment:\n
LAST-MODIFIED:20150909T020511Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY: test service
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR

以下链接解释得很好..

http://www.tutorialsbag.com/2015/09/ical-recurring-appointment-with-rrule.html

相关问题