A Microsoft Outlook email forum. Outlook Banter

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » Outlook Banter forum » Microsoft Outlook Email Newsgroups » Outlook and VBA
Site Map Home Register Authors List Search Today's Posts Mark Forums Read Web Partners

Monitoring for changes



 
 
Thread Tools Search this Thread Display Modes
  #1  
Old April 18th 06, 02:23 PM posted to microsoft.public.outlook.program_vba
Simon Woods
external usenet poster
 
Posts: 10
Default Monitoring for changes

Hi

[Using Outlook 2003 (SP2)]

I want to write a little program which monitors a particular public journal
and logs date, time, old/new value, who is making the change (and
potentially other information) each time an item changes. Is there anything
in the object model to help me or do I need to do most of it myself.

Ideally, I'd like Outlook to tell me (by raising an event) just before an
item is edited so I can capture the various data I need.

Thanks

Simon


  #2  
Old April 18th 06, 03:39 PM posted to microsoft.public.outlook.program_vba
Ken Slovak - [MVP - Outlook]
external usenet poster
 
Posts: 5,848
Default Monitoring for changes

You can handle the ItemChange and ItemAdd events of the Items collection of
that folder. When an item is saved or added in that collection you will fire
those events. You can also monitor for items being opened (NewInspector
event of the Inspectors collection) and handle the Write event to get
changes before the save is made. That won't work with in-cell editing in a
folder view however.

--
Ken Slovak
[MVP - Outlook]
http://www.slovaktech.com
Author: Absolute Beginner's Guide to Microsoft Office Outlook 2003
Reminder Manager, Extended Reminders, Attachment Options
http://www.slovaktech.com/products.htm


"Simon Woods" wrote in message
...
Hi

[Using Outlook 2003 (SP2)]

I want to write a little program which monitors a particular public
journal and logs date, time, old/new value, who is making the change (and
potentially other information) each time an item changes. Is there
anything in the object model to help me or do I need to do most of it
myself.

Ideally, I'd like Outlook to tell me (by raising an event) just before an
item is edited so I can capture the various data I need.

Thanks

Simon



  #3  
Old April 18th 06, 04:12 PM posted to microsoft.public.outlook.program_vba
Simon Woods
external usenet poster
 
Posts: 10
Default Monitoring for changes

Thanks Ken.

I must admit that I found an example of yours elsewhere which has been very
helpful.

There's still a couple of questions

1) Our company uses Exchange Server and I'm working remotely and
synchronising a task-type journal. Obviously the unread flag gets unset when
someone in the office changes a journal item and that gets reflected to me
when I synchronise. Am I able to work out who made the changes if I look
through the unread messages after synchronising?

2) Also is there an "AfterSynchronisation" type event whether it is of the
Outlook object or the specific folder I'm monitoring?

Thanks again

Simon



Ken Slovak - [MVP - Outlook] wrote:
You can handle the ItemChange and ItemAdd events of the Items
collection of that folder. When an item is saved or added in that
collection you will fire those events. You can also monitor for items
being opened (NewInspector event of the Inspectors collection) and
handle the Write event to get changes before the save is made. That
won't work with in-cell editing in a folder view however.


"Simon Woods" wrote in message
...
Hi

[Using Outlook 2003 (SP2)]

I want to write a little program which monitors a particular public
journal and logs date, time, old/new value, who is making the change
(and potentially other information) each time an item changes. Is
there anything in the object model to help me or do I need to do
most of it myself.

Ideally, I'd like Outlook to tell me (by raising an event) just
before an item is edited so I can capture the various data I need.

Thanks

Simon



  #4  
Old April 18th 06, 05:19 PM posted to microsoft.public.outlook.program_vba
Ken Slovak - [MVP - Outlook]
external usenet poster
 
Posts: 5,848
Default Monitoring for changes

You can always check an item for PR_LAST_MODIFIER_NAME, unfortunately that's
not in the Outlook object model. So you'd have to use CDO 1.21 or Extended
MAPI or Redemption (www.dimastr.com/redemption) to get at that property.
That has the name of the last user who modified an item.

LastModificationTime tells you when an item was last modified.

There's no such event. You can handle synch end on an application wide basis
but only if your code has initiated the synch (send/receive), not if the
user has done so in the UI or on automatic synchs.

--
Ken Slovak
[MVP - Outlook]
http://www.slovaktech.com
Author: Absolute Beginner's Guide to Microsoft Office Outlook 2003
Reminder Manager, Extended Reminders, Attachment Options
http://www.slovaktech.com/products.htm


"Simon Woods" wrote in message
...
Thanks Ken.

I must admit that I found an example of yours elsewhere which has been
very helpful.

There's still a couple of questions

1) Our company uses Exchange Server and I'm working remotely and
synchronising a task-type journal. Obviously the unread flag gets unset
when someone in the office changes a journal item and that gets reflected
to me when I synchronise. Am I able to work out who made the changes if I
look through the unread messages after synchronising?

2) Also is there an "AfterSynchronisation" type event whether it is of the
Outlook object or the specific folder I'm monitoring?

Thanks again

Simon


  #5  
Old April 18th 06, 04:43 PM posted to microsoft.public.outlook.program_vba
Simon Woods
external usenet poster
 
Posts: 10
Default Monitoring for changes

.... also

Get I get a folder by name. I've got a recursive routine which is recursing
through my off-public folders in my favorites folder. The call

OutlookNameSpace.GetDefaultFolder

doesn't seem to offer me the top level a way into my favourites. Is there an
alternative way?

Thanks

Simon


  #6  
Old April 18th 06, 04:47 PM posted to microsoft.public.outlook.program_vba
Simon Woods
external usenet poster
 
Posts: 10
Default Monitoring for changes

Simon Woods wrote:
... also

Get I get a folder by name. I've got a recursive routine which is
recursing through my off-public folders in my favorites folder. The
call
OutlookNameSpace.GetDefaultFolder

doesn't seem to offer me the top level a way into my favourites. Is
there an alternative way?


OK I've sorted this one ...

OutlookNameSpace.Folders(2) is my top level Public folder

Thanks

Simon


  #7  
Old April 18th 06, 05:15 PM posted to microsoft.public.outlook.program_vba
Ken Slovak - [MVP - Outlook]
external usenet poster
 
Posts: 5,848
Default Monitoring for changes

Always check the store name after getting it like that or iterate the entire
Folders collection until you find the public folders. You can't depend on a
constant index value.

--
Ken Slovak
[MVP - Outlook]
http://www.slovaktech.com
Author: Absolute Beginner's Guide to Microsoft Office Outlook 2003
Reminder Manager, Extended Reminders, Attachment Options
http://www.slovaktech.com/products.htm


"Simon Woods" wrote in message
...
Simon Woods wrote:
... also

Get I get a folder by name. I've got a recursive routine which is
recursing through my off-public folders in my favorites folder. The
call
OutlookNameSpace.GetDefaultFolder

doesn't seem to offer me the top level a way into my favourites. Is
there an alternative way?


OK I've sorted this one ...

OutlookNameSpace.Folders(2) is my top level Public folder

Thanks

Simon


  #8  
Old April 18th 06, 05:37 PM posted to microsoft.public.outlook.program_vba
Simon Woods
external usenet poster
 
Posts: 10
Default Monitoring for changes

Thanks again Ken


Ken Slovak - [MVP - Outlook] wrote:
Always check the store name after getting it like that or iterate the
entire Folders collection until you find the public folders. You
can't depend on a constant index value.


"Simon Woods" wrote in message
...
Simon Woods wrote:
... also

Get I get a folder by name. I've got a recursive routine which is
recursing through my off-public folders in my favorites folder. The
call
OutlookNameSpace.GetDefaultFolder

doesn't seem to offer me the top level a way into my favourites. Is
there an alternative way?


OK I've sorted this one ...

OutlookNameSpace.Folders(2) is my top level Public folder

Thanks

Simon



  #9  
Old April 19th 06, 10:15 AM posted to microsoft.public.outlook.program_vba
Simon Woods
external usenet poster
 
Posts: 10
Default Monitoring for changes

Ken Slovak - [MVP - Outlook] wrote:
You can handle the ItemChange and ItemAdd events of the Items
collection of that folder. When an item is saved or added in that
collection you will fire those events. You can also monitor for items
being opened (NewInspector event of the Inspectors collection) and
handle the Write event to get changes before the save is made. That
won't work with in-cell editing in a folder view however.


Ken ... can I trouble you again ...

You say that I can use the Write event to get changes before the save is
made. I've got the event hooked up and firing okay. I've got the item which
is about to be written so have the new value. I don't understand how you
were thinking I'd get the current existing value of the item.

I know I'm being a bit slow here.

Thanks

Simon


  #10  
Old April 19th 06, 04:05 PM posted to microsoft.public.outlook.program_vba
Ken Slovak - [MVP - Outlook]
external usenet poster
 
Posts: 5,848
Default Monitoring for changes

You have to cache the original value of the property or properties you are
interested in. Even if you handle Item.PropertyChange or
Item.CustomPropertyChange you'd only get the name of the property that was
changed and reading its value would return the new value, not the original
value.

--
Ken Slovak
[MVP - Outlook]
http://www.slovaktech.com
Author: Absolute Beginner's Guide to Microsoft Office Outlook 2003
Reminder Manager, Extended Reminders, Attachment Options
http://www.slovaktech.com/products.htm


"Simon Woods" wrote in message
...
Ken Slovak - [MVP - Outlook] wrote:
You can handle the ItemChange and ItemAdd events of the Items
collection of that folder. When an item is saved or added in that
collection you will fire those events. You can also monitor for items
being opened (NewInspector event of the Inspectors collection) and
handle the Write event to get changes before the save is made. That
won't work with in-cell editing in a folder view however.


Ken ... can I trouble you again ...

You say that I can use the Write event to get changes before the save is
made. I've got the event hooked up and firing okay. I've got the item
which is about to be written so have the new value. I don't understand how
you were thinking I'd get the current existing value of the item.

I know I'm being a bit slow here.

Thanks

Simon


 




Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
MS Outlook and AOL port monitoring FourFunnels Outlook - Installation 1 January 22nd 06 04:01 PM


All times are GMT +1. The time now is 09:15 AM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.Search Engine Friendly URLs by vBSEO 2.4.0
Copyright ©2004-2025 Outlook Banter.
The comments are property of their posters.