|
|
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?
>>
>>
>>
|
|