microsoft.public.exchange.development
[Top] [All Lists]

Re: Unique Id and appointments

Subject: Re: Unique Id and appointments
From: "Dmitry Streblechenko"
Date: Thu, 19 Oct 2006 10:19:22 -0700
Newsgroups: microsoft.public.exchange.development
Correct, older versions of Outlook do not create the global ids until the 
appointment is sent to another attendee.
Nothing however prevents you from creating and setting your own appointment 
id - Outlook will use an existing value if it is present.
Also note that if you are working with an Exchnage server only, it *always* 
generates IDs for the appointments as soon as they are created.

Dmitry Streblechenko (MVP)
http://www.dimastr.com/
OutlookSpy  - Outlook, CDO
and MAPI Developer Tool

"tormork" <tormork@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message 
news:2B850512-5838-4D4F-A82D-FF5ACD18F36A@xxxxxxxxxxxxxxxx
> Thanks for the reply, but it does not quite solve my problem.
>
> I assume you mean the Global Object ID mentioned in kb899919, but kb899919
> also states that: "Therefore, these earlier versions of Outlook do not
> generate a Global Object ID for unsent meetings or for appointments that 
> have
> no recipients." (earlier beeing outlook 2003 without service pack and 
> earlier)
>
> In my experience a majority of appointments do not have recipients, and
> therefore I do not have the Global Object ID. I have always assumed that
> recipients only exist in appointment where other people are invited, this
> might be wrong. If a use creates a new appointment is he then a Recipient?
>
> To make thins more complicated the program must be able to run with exc 
> 2000
> and 2003 as well as all versions of Outlook and WebOutlook. There are 
> about
> 20K users with the synchronization in different companies(about 200 
> Exchange
> Servers), so I have no realistic possiblility of "forcing" them to 
> upgrade.
>
> The only problem I have run into is deletion of recurring appointments in
> WebOutlook, all other senarios seem to work without problem. So the 
> problem
> can problably be solved by some other mechanism.
>
> The unique identifier has annoyed me quite a lot, it does seem like a 
> simple
> thing to assign a unique identifyer to a record and keep it unique.
> Especially the change in the Outlook service pack was scary, because it 
> seems
> that the Exchange has to copies of the same appointment with the same 
> unique
> Id at the same time, this should in my humble opinion Never happen(Well a
> unique Id which used to be unique prior to the service pack)
>
>
> "Dmitry Streblechenko" wrote:
>
>> The KB article that describes the chnages in 2003 SP2, also mentions the
>> real appointment id, which does stay the same:
>>                                 support.microsoft.com/kb/899919">http://support.microsoft.com/kb/899919
>> Use the following property instead:
>>                                 schemas.microsoft.com/mapi/id/{6ED8DA90-450B-101B-98DA-00AA003F1305}/00030102">http://schemas.microsoft.com/mapi/id/{6ED8DA90-450B-101B-98DA-00AA003F1305}/00030102
>>
>> Dmitry Streblechenko (MVP)
>>                                 www.dimastr.com/">http://www.dimastr.com/
>> OutlookSpy  - Outlook, CDO
>> and MAPI Developer Tool
>>
>> "tormork" <tormork@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
>> news:AD35B513-1D00-4F18-BDB5-0586FC8CD344@xxxxxxxxxxxxxxxx
>> >I do not get the idea behind ids an appointments.
>> >
>> > I have a synchronous create and delete event which I use for 
>> > synchronizing
>> > Exchange Calendendars to another system.
>> >
>> > In Exchange 2000 and Exchange 2003 it has been quite simple to use
>> > urn:schemas:calendar:uid as a unique identifier.
>> >
>> > However Outlook 2003 sp 2 ended this. When a meeting invitation i 
>> > accepted
>> > in outl. 2003 sp2 a new copy of the appointment is made, with the same
>> > urn:schemas:calendar:uid as the original, then the original is deleted.
>> > There
>> > are now to appointments with the same id and only one of them is 
>> > deleted.
>> >
>> > Obviously a synchronization that runs in an synchornous Event sink will
>> > fail
>> > here becase it is reported "wrongly" that an appointment is deleted. 
>> > This
>> > was
>> > somewhat difficult to get around and required overhead, which I was not
>> > willing to use, so I started using the
>> >                                 schemas.microsoft.com/exchange/permanenturl">http://schemas.microsoft.com/exchange/permanenturl which obviously(and
>> > according to documentation) should be unique. This seem to work ok, but
>> > now
>> > it seems that the                                 schemas.microsoft.com/exchange/permanenturl">http://schemas.microsoft.com/exchange/permanenturl of
>> > recurring appointments  changes before the delete event sink is called 
>> > and
>> > hence my synchronization does not detect the appointment as a 
>> > synchronized
>> > one.
>> >
>> > The only possible way seem to use on set of logic for WebOutlook and a
>> > seperate one for Outlook 2003 sp2+, but it does not seem to be a 
>> > logical
>> > thing to do. Also it seem complicated at best(if possible).
>> >
>> > So does anyone have some idea of how an Outlook appointment can be 
>> > uniquly
>> > identified in an event sink?
>>
>>
>> 



<Prev in Thread] Current Thread [Next in Thread>
Privacy Policy