CDOEX: How To Add Recurrence to a Single Appointment
The following CDOEX code will add indefinite weekly recurrence to an individual appointment…
public CDO.Appointment AddRecurrence(CDO.Appointment oAppt, CDO.CdoDayOfWeek day, int instances, CDO.CdoFrequency freq) { CDO.IRecurrencePattern iRPattern; // Create the RecurrencePattern object. iRPattern = oAppt.RecurrencePatterns.Add("Add"); iRPattern.DaysOfWeek.Add((int)day); iRPattern.Frequency = freq; if (instances != -1) { iRPattern.Instances = instances; } if ((int)freq > 3) { // Convert CDO.CdoFrequency value to recurtype: // recurtype: 0-Single, 1-Daily, 2-Weekly, 3-Monthly and 4-Yearly int recurtype = (int)freq - 3; oAppt.Fields["https://schemas.microsoft.com/mapi/recurtype"].Value = recurtype; oAppt.Fields.Update(); } // Save the appointment to the organizer's calendar. oAppt.DataSource.Save(); Debug.WriteLine("AddRecurrence: Organizer appointment saved.");
return oAppt; } |
Notes
If the value instances passed in is -1 then the property will not be set and the recurrence pattern added would be indefinite.
If the frequency is daily, weekly, monthly, or yearly then you should also set the “https://schemas.microsoft.com/mapi/recurtype” property so that Outlook will display this appointment with the proper recurrence pattern in the “Active Appointments” calendar view.
Comments
- Anonymous
March 09, 2006
CDOEX Samples Index
 
Listed below are links to my CDOEX samples.  If you have questions... - Anonymous
March 09, 2006
In an effort to provide samples in a organized and repeatable manner, I have created a format for adding...