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