18

I have a need to allow for a user to download an event that has multiple meeting dates. To do this I have created a memorystream to be downloaded which produces a .ics file. For example:

BEGIN:VCALENDAR
PRODID:-//Company//Product//EN
VERSION:2.0
METHOD:PUBLISH
BEGIN:VEVENT
SUMMARY:Subject of Event
LOCATION:Location of Event
UID:1227559810-8527e2c-20847@domain.com
DESCRIPTION:Some description
DTEND:20081101T200000Z
DTSTART:20081101T200000Z
PRIORITY:3
END:VEVENT
BEGIN:VEVENT
  ...
END:VEVENT
END:VCALENDAR

If I only include one VEVENT in this file it will save it to my existing Outlook calendar. However, when I have multiple VEVENTs it wants to open it as a new calendar and files it under "Other Calendars".

Is there a way (without using File - Import from within Outlook) to specify that the calendar should be imported automatically into the existing calendar when opened?

UPDATE: To clarify, each VEVENT is related to a single "Appointment". However there may or may not be a recurring pattern.

-Mike

mwilkes
  • 665
  • 1
  • 6
  • 14
  • Is it the same appointment, with a recurrence pattern or are the appointments not related to each other? – Tomalak Dec 02 '08 at 15:48
  • It is the same appointment...unfortunately there may or may not be a recurring pattern. For instance it meets on Tuesday this week and Wednesday the next week, etc.. – mwilkes Dec 02 '08 at 15:52
  • I suppose the "VBEGIN" is a typo? – Tomalak Dec 02 '08 at 15:57
  • I believe the property `X-MS-OLK-FORCEINSPECTOROPEN:TRUE` is meant to fix this problem "when I have multiple VEVENTs it wants to open it as a new calendar and files it under "Other Calendars"" – matt b Apr 25 '12 at 19:05
  • 1
    @mattb that way my outlook 2013 ignores the other events importing only the first one – masciugo May 26 '17 at 13:12

7 Answers7

4

I don't think this will work. Outlook is limited in importing those "open" specs. I had a similar problem trying to import a vCard file with multiple contacts. I ended up splitting the file and writing a script in Outlook to import all the files in a directory.

jwmiller5
  • 2,584
  • 1
  • 15
  • 34
  • 1
    Yes, I was thinking the same thing. Multiple events work for a subscribed .ics calendar, though. – Tomalak Dec 03 '08 at 14:19
  • @Bellu Try opening the ics from Outlook Web Access. According to this post it works in OWA, not in Outlook. https://answers.microsoft.com/en-us/msoffice/forum/all/outlook-desktop-client-not-opening-multiple-events/2b4dc0e3-250c-427f-91ca-690b52b8eee6 – jwmiller5 Nov 20 '20 at 14:22
4

This is possible, using an Internet Calendar (like from Google). Outlook 2007 has the capabilities to subscribe to an Internet Calendar (under Account Settings) and Outlook 2003 has an open-source plug-in available. You could create an accessible feed that is "read-only". The format is like

BEGIN:VCALENDAR  
PRODID:-//XYZ Corp//My Product//EN  
VERSION:2.0  
CALSCALE:GREGORIAN  
METHOD:PUBLISH  
X-WR-CALNAME:My Calendar  
X-WR-TIMEZONE:(GMT-05:00) Eastern Time (US & Canada)  
BEGIN:VEVENT  
DTSTART:20061021T100000Z  
DTEND:20061021T130000Z  
DTSTAMP:20090211T175526Z  
UID:5f98dfd5-ac72-4ae1-b3c2-799a4e7c91f9  
CLASS:PUBLIC  
CREATED:20071104T183833Z  
DESCRIPTION: My description text.  
LAST-MODIFIED:20071104T183833Z  
LOCATION: 123 Anywhere Street\; Anyplace, NJ 12345\; US  
SEQUENCE:0  
STATUS:CONFIRMED  
SUMMARY: My summary text.  
TRANSP:OPAQUE  
END:VEVENT  
BEGIN:VEVENT  
DTSTART:20061101T170000Z  
DTEND:20061101T180000Z  
DTSTAMP:20090211T175526Z  
UID:6eaef015-eb90-4e94-8e6c-0003b928969a  
CLASS:PUBLIC  
CREATED:20071104T183833Z  
DESCRIPTION: My description for number 2.  
LAST-MODIFIED:20071104T183833Z  
LOCATION: 123 Anywhere Street\; Anyplace, NJ 12345\; US  
SEQUENCE:0  
STATUS:CONFIRMED  
SUMMARY: My summary for #2.  
TRANSP:OPAQUE  
END:VEVENT  
END:VCALENDAR
Antti29
  • 2,953
  • 12
  • 34
  • 36
Michael DeLorenzo
  • 1,110
  • 2
  • 12
  • 25
2

Make sure you are using a unique UID for every VEVENT. If you use the same UID for every VEVENT you would see exactly the behavior you are describing since only unique UID's are processed and added to the calendar.

HTH.

1

this is an example of three FIFA 2010 matches on outlook, I'm guessing that this is what you are looking for...

BEGIN:VCALENDAR

PRODID:-//Microsoft Corporation//Outlook 12.0 MIMEDIR//EN

VERSION:2.0

METHOD:PUBLISH

X-CALSTART:20100611T140000Z

X-CALEND:20100711T201500Z

X-WR-RELCALID:{0000002E-5A22-AA75-713B-5C3715764495}

X-WR-CALNAME: World Cup Football Complete Match Schedule 2010 South Africa

BEGIN:VEVENT

CATEGORIES:World Cup Football Complete Match Schedule 2010 South Africa

CLASS:PUBLIC

CREATED:20100608T231102Z

DESCRIPTION:Group A\nFollow MarkThisDate on Twitter

    markthisdate 

DTEND:20100611T154500Z

DTSTAMP:20100513T100200Z

DTSTART:20100611T140000Z

LAST-MODIFIED:20100608T231102Z

LOCATION:Johannesburg 

PRIORITY:5

SEQUENCE:0

SUMMARY:South Africa - Mexico

TRANSP:TRANSPARENT

UID:005ef5a170ab453276aad021756e5fde@markthisdate.com

X-MICROSOFT-CDO-BUSYSTATUS:FREE

X-MICROSOFT-CDO-IMPORTANCE:1

END:VEVENT

BEGIN:VEVENT

CATEGORIES:World Cup Football Complete Match Schedule 2010 South Africa

CLASS:PUBLIC

CREATED:20100608T231102Z

DESCRIPTION:Group A\nFollow MarkThisDate on Twitter

    markthisdate 

DTEND:20100611T201500Z

DTSTAMP:20100513T100200Z

DTSTART:20100611T183000Z

LAST-MODIFIED:20100608T231102Z

LOCATION:Cape Town 

PRIORITY:5

SEQUENCE:0

SUMMARY:Uruguay - France

TRANSP:TRANSPARENT

UID:9660590c514358c5bceed9e75bed0222@markthisdate.com

X-MICROSOFT-CDO-BUSYSTATUS:FREE

X-MICROSOFT-CDO-IMPORTANCE:1

END:VEVENT

BEGIN:VEVENT

CATEGORIES:World Cup Football Complete Match Schedule 2010 South Africa

CLASS:PUBLIC

CREATED:20100608T231102Z

DESCRIPTION:Group B\nFollow MarkThisDate on Twitter

    markthisdate 

DTEND:20100612T131500Z

DTSTAMP:20100513T100200Z

DTSTART:20100612T113000Z

LAST-MODIFIED:20100608T231102Z

LOCATION:Nelson Mandela Bay/Port Elizabeth 

PRIORITY:5

SEQUENCE:0

SUMMARY:Korea Republic - Greece

TRANSP:TRANSPARENT

UID:5a9eaca2435fb52e1c95ddb786f82efa@markthisdate.com

X-MICROSOFT-CDO-BUSYSTATUS:FREE

X-MICROSOFT-CDO-IMPORTANCE:1

END:VEVENT

END:VCALENDAR
Kev
  • 118,037
  • 53
  • 300
  • 385
  • I am interested in checking this method. Looks like you can get more examples at markthisdate.com (which is where the source of this example seems to come from) although I'm not sure if it will work on Outlook or not (on a Mac right now) – cwd Feb 18 '13 at 20:26
  • No it's not because it doesn't import into the current calendar. – jcaruso Jan 24 '17 at 16:09
1

Make sure you have "X-MS-OLK-FORCEINSPECTOROPEN:TRUE" in the VCALENDAR part of your file. This allows an ICS file with multiple VEVENTs to import into your default calendar in Outlook. No new calendar created.

miked
  • 21
  • 2
  • Tested this and it doesn't appear to work fully, at least in O365 Outlook. It prompts to add only the *first* VEVENT in the file - any others are no added to the main calendar. – Leniency Jan 03 '20 at 00:06
  • X-MS-OLK-FORCEINSPECTOROPEN:TRUE only effects the outlook calendar the event is added to. If you are only processing the first VEVENT, the there is another issue with your ICS file. Issues relatred witrh the UID or start times/dates so the system can match the VEVENTS. – miked Jan 08 '20 at 13:38
1

This should be possible :/ the following works with google, and loads fine into entourage. Outlook seems to have some issues though, will keep looking.

NOTE - this does import correctly into outlook when you use file>import etc, it's only double clicking that causes it to only load the first event.

BEGIN:VCALENDAR
PRODID:-//Google Inc//Google Calendar 70.9054//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-WR-CALNAME:Insert something
X-WR-TIMEZONE:Insert something
X-WR-CALDESC:

BEGIN:VEVENT
DTSTART:20110909T180000Z
DTEND:20110909T200000Z
DTSTAMP:20110722T004312Z
UID:et53m4on1ii70en7uuv1thjr58@google.com
CREATED:20110721T105553Z
DESCRIPTION:
LAST-MODIFIED:20110721T105554Z
LOCATION:Insert something
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:Insert something
TRANSP:OPAQUE
BEGIN:VALARM
ACTION:DISPLAY
DESCRIPTION:This is an event reminder
TRIGGER:-P0DT0H10M0S
END:VALARM
END:VEVENT

BEGIN:VEVENT
DTSTART:20110909T083000Z
DTEND:20110909T103000Z
DTSTAMP:20110722T004312Z
UID:e5fhdjff6vakjftnl3l9vjs64k@google.com
CREATED:20110721T105410Z
DESCRIPTION:
LAST-MODIFIED:20110721T111008Z
LOCATION:Auckland
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:Insert something
TRANSP:OPAQUE
BEGIN:VALARM
ACTION:DISPLAY
DESCRIPTION:Insert something
TRIGGER:-P0DT0H10M0S
END:VALARM
END:VEVENT

END:VCALENDAR
nzcoops
  • 9,132
  • 8
  • 41
  • 52
0

This works: Take the ICS file, drag & drop on the calendar button in Outlook (bottom left corner on mine). That adds multiple entries to the default calendar, without any prompting when an ICS file contains multiple vevents. Updates & deletes of multiples are my next challenge.

Double clicking the same file has very different results: Creates a new calendar, and the busy indicator is ignored. The drag & drop that I described keeps the busy indicator intact like it is in the ICS file

X-MS-OLK-FORCEINSPECTOROPEN:TRUE opened the 1st entry so it could be approved & added. Subsequent vevents are ignored.

X-MS-OLK-FORCEINSPECTOROPEN:FALSE or removing the line entirely had the same results on Outlook 365 for me.

Also, when double clicking an ICS file with multiple vevents, this is what I saw: Outlook is not entirely compatible because a new calendar gets created named "untitled". The mail app that comes with Windows 10 is compatible & all entries are added to the calendar properly (might be because the Win 10 mail app only has 1 calendar? I don't know- I'm writing for Outlook only)

JRrelyea
  • 139
  • 1
  • 4