PRB: Problems Responding to Schedule+ 1.0 Meeting Requests

ID: Q182857

The information in this article applies to:

SYMPTOMS

When you use the MeetingItem.Respond method of the Collaboration Data Objects (CDO) object model for Schedule+ 1.0 Meeting Requests, the following may occur:

CAUSE

The Respond method was designed to create an appropriate Meeting Response object for Outlook and Schedule+ 7.0 meeting requests.

RESOLUTION

For Schedule+ 1.0 meeting requests, you should follow these steps after calling the Respond method:

1. Set the PR_OWNER_APPT_ID property of the response object to match that

   of the Meeting Request. (This is what allows Schedule+ 1.0 to recognize
   it within the originating appointment.)

2. Set the PR_RCVD_REPRESENTING_ENTRYID and PR_RCVD_REPRESENTING_NAME
   properties to match PR_SENT_REPRESENTING_* properties of meeting request
   in order to prevent "You are not this person's assistant" message.

MORE INFORMATION

If you will be receiving Meeting Requests from both Schedule+ 1.0 and Outlook/Schedule+ 7.0, then you will want to implement logic to handle both types of requests.

Below is sample code for handling both cases:

   'This code assumes you already have the following variables:
   '    oMtg: MeetingItem with MeetingType = MeetingRequest
   '    Resp: Boolean indicating whether to accept the meeting.
   '    oMtgResp: Message Object that represents Meeting Response.

   If Resp Then  'Accept Meeting

     Set oMtgResp = oMtg.Respond(CdoResponseAccepted)

     ' Note: One customer reported that testing
     '     oMtg.Sender.DisplayType = "Remote(6)"
     ' was more accurate on his system.
     If oMtg.Sender.Type = "MS" Then  ' MSMail User
        ' Copy PR_OWNER_APPT_ID
        oMtgResp.Fields(&H00620003).Value = _
              oMtg.Fields(&H00620003).Value

        ' Copy PR_SENT_REPRESENTING_* properties to
        '   PR_RCVD_REPRESENTING_* properties
        oMtgResp.Fields.Add &H00430102, _
              oMtg.Fields(&H00410102).Value
        oMtgResp.Fields.Add &H0044001E, _
              oMtg.Fields(&H0042001E).Value
     End If

     oMtgResp.Text = "Meeting Accepted."

   Else

     Set oMtgResp = oMtg.Respond(CdoResponseDeclined)

     If oMtg.Sender.Type = "MS" Then

        ' Copy PR_OWNER_APPT_ID
        oMtgResp.Fields(&H00620003).Value = _
              oMtg.Fields(&H00620003).Value

        ' Copy PR_SENT_REPRESENTING_* properties to
        '   PR_RCVD_REPRESENTING_* properties.
        oMtgResp.Fields.Add &H00430102, _
              oMtg.Fields(&H00410102).Value
        oMtgResp.Fields.Add &H0044001E, _
              oMtg.Fields(&H0042001E).Value
     End If

     oMtgResp.Text = "Meeting Declined."

   End If

   oMtgResp.Send

Keywords          : kberrmsg kbCDO120 kbGrpMsg 
Version           : WINDOWS:1.2
Platform          : WINDOWS
Issue type        : kbprb

Last Reviewed: April 8, 1999