Sending and deleting meeting invitation via Outlook

G

Guest

I was able to create meeting and send out invitations for them via Access,
but for some reason when the invitee responds it gave me a message saying the
meeting is not on the calendar and that it might've been deleted. On my
calendar it also shows that no one had responded to the meeting. I'm
thinking that I'm missing some kind of argument to link the actual meeting
and the invitation? Any ideas?
Here's the code that I use:

Set olApp = CreateObject("Outlook.Application")
Set olNS = olApp.GetNamespace("MAPI")
Set olfolder = olNS.GetDefaultFolder(olFolderInbox)
Set olApptItem = olfolder.Items.Add("IPM.Appointment")


strBodyText = "This is a test please accept the invitation"

'strSubject = "Review Submission ID " & _
' [SubmissionID] & " Due on " & [Due Date]

With olApptItem
.MeetingStatus = olMeeting
.Recipients.Add ("Smith, John ")
.Subject = strSubject
.Start = [Response Due Date]
.Body = strBodyText
.AllDayEvent = True
.ReminderSet = True
.ReminderMinutesBeforeStart = 10080 '1 day reminder = 1440, 1 week = 10080
.Save
.Send
End With
 
G

GeoffG

Try changing "Inbox" to "Outbox" on the following code line:

'Set olFolder = olns.GetDefaultFolder(olFolderInbox)
Set olFolder = olns.GetDefaultFolder(olFolderOutbox)

Does that then put the appointment into your Outlook calendar when you send?

Geoff
 
G

Guest

Hi Geoff,
Thanks for the reply. I changed to to olFolderCalendar and so that part
is working, now I just need to find out how to delete the meeting and send
out meeting cancelation notices. I was able to delete the meeting, but no
notice gets sent out, so everybody else still thinks the meeting is on.
Here's my code:

Set olApp = CreateObject("Outlook.Application")
Set olNS = olApp.GetNamespace("MAPI")
Set olfolder = olNS.GetDefaultFolder(olFolderCalendar)
Set olApptItems = olNS.GetDefaultFolder _
(olFolderCalendar).Items

strSearch = "Test Meeting"
MsgBox olApptItems.Find("[Subject] = """ & strSearch & """")

Set olCurrAppt = olApptItems.Find("[Subject] = """ & strSearch & """")
FindAppt:
While TypeName(olCurrAppt) <> "Nothing"
olCurrAppt.MeetingStatus = olMeetingCanceled ' cancels the meeting
olCurrAppt.Send ' sends an updated notice, but doesn't say meeting
canceled
olCurrAppt.Delete
Set olCurrAppt = olApptItems.FindNext
Wend
Set olApptItems = Nothing
Set olCurrAppt = Nothing
Set olfolder = Nothing
Set olNS = Nothing
Set olApp = Nothing


GeoffG said:
Try changing "Inbox" to "Outbox" on the following code line:

'Set olFolder = olns.GetDefaultFolder(olFolderInbox)
Set olFolder = olns.GetDefaultFolder(olFolderOutbox)

Does that then put the appointment into your Outlook calendar when you send?

Geoff


dbornt said:
I was able to create meeting and send out invitations for them via Access,
but for some reason when the invitee responds it gave me a message saying
the
meeting is not on the calendar and that it might've been deleted. On my
calendar it also shows that no one had responded to the meeting. I'm
thinking that I'm missing some kind of argument to link the actual meeting
and the invitation? Any ideas?
Here's the code that I use:

Set olApp = CreateObject("Outlook.Application")
Set olNS = olApp.GetNamespace("MAPI")
Set olfolder = olNS.GetDefaultFolder(olFolderInbox)
Set olApptItem = olfolder.Items.Add("IPM.Appointment")


strBodyText = "This is a test please accept the invitation"

strSubject = "Test Meeting"

With olApptItem
.MeetingStatus = olMeeting
.Recipients.Add ("Smith, John ")
.Subject = strSubject
.Start = [Response Due Date]
.Body = strBodyText
.AllDayEvent = True
.ReminderSet = True
.ReminderMinutesBeforeStart = 10080 '1 day reminder = 1440, 1 week =
10080
.Save
.Send
End With
 
G

GeoffG

I thought it might be the Calendar folder - but suggested the Outbox because
of the use of "Send".

As to your follow-up question, you'll get an authoritative answer if you
post to an Outlook newsgroup or to www.outlook.com. (especially if you get
an answer from Sue Mosher or Ken Slovak). I noticed a similar question on
Sue's website (www.outlook.com) from a guy who said that, when he sent
meeting cancellations programmatically, they don't look the same when
they're received as when they're sent from the user-interface. Given that,
when you delete a MeetingItem at the user-interface, you get options like
"send cancellation and delete meeting", I would have thought that the Delete
method for an AppointmentItem associated with a MeetingItem would have had
arguments that would have allowed for the various Delete/Send choices. But I
can't find that they do. However, I don't know the Outlook object model that
well.

If you get a result, please post back here. I'd be interested to know.

Geoff



dbornt said:
Hi Geoff,
Thanks for the reply. I changed to to olFolderCalendar and so that part
is working, now I just need to find out how to delete the meeting and send
out meeting cancelation notices. I was able to delete the meeting, but no
notice gets sent out, so everybody else still thinks the meeting is on.
Here's my code:

Set olApp = CreateObject("Outlook.Application")
Set olNS = olApp.GetNamespace("MAPI")
Set olfolder = olNS.GetDefaultFolder(olFolderCalendar)
Set olApptItems = olNS.GetDefaultFolder _
(olFolderCalendar).Items

strSearch = "Test Meeting"
MsgBox olApptItems.Find("[Subject] = """ & strSearch & """")

Set olCurrAppt = olApptItems.Find("[Subject] = """ & strSearch & """")
FindAppt:
While TypeName(olCurrAppt) <> "Nothing"
olCurrAppt.MeetingStatus = olMeetingCanceled ' cancels the meeting
olCurrAppt.Send ' sends an updated notice, but doesn't say meeting
canceled
olCurrAppt.Delete
Set olCurrAppt = olApptItems.FindNext
Wend
Set olApptItems = Nothing
Set olCurrAppt = Nothing
Set olfolder = Nothing
Set olNS = Nothing
Set olApp = Nothing


GeoffG said:
Try changing "Inbox" to "Outbox" on the following code line:

'Set olFolder = olns.GetDefaultFolder(olFolderInbox)
Set olFolder = olns.GetDefaultFolder(olFolderOutbox)

Does that then put the appointment into your Outlook calendar when you
send?

Geoff


dbornt said:
I was able to create meeting and send out invitations for them via
Access,
but for some reason when the invitee responds it gave me a message
saying
the
meeting is not on the calendar and that it might've been deleted. On
my
calendar it also shows that no one had responded to the meeting. I'm
thinking that I'm missing some kind of argument to link the actual
meeting
and the invitation? Any ideas?
Here's the code that I use:

Set olApp = CreateObject("Outlook.Application")
Set olNS = olApp.GetNamespace("MAPI")
Set olfolder = olNS.GetDefaultFolder(olFolderInbox)
Set olApptItem = olfolder.Items.Add("IPM.Appointment")


strBodyText = "This is a test please accept the invitation"

strSubject = "Test Meeting"

With olApptItem
.MeetingStatus = olMeeting
.Recipients.Add ("Smith, John ")
.Subject = strSubject
.Start = [Response Due Date]
.Body = strBodyText
.AllDayEvent = True
.ReminderSet = True
.ReminderMinutesBeforeStart = 10080 '1 day reminder = 1440, 1 week =
10080
.Save
.Send
End With
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top