3.16 Appointment

Provides appointment information and actions. A subtype of Message.

3.16.1 Properties

The following table lists properties along with their access and descriptions.

Property

Access

Description

Accepted

R/O

Boolean. TRUE if this appointment has been accepted.

AlarmProgram

R/W

String. The name of the program to execute when the AlarmTime has arrived.

AlarmReminderMinutes

R/W

Long. The number of minutes before the alarm rings. This property can be set even if the AlarmSet property is FALSE.

AlarmSet

R/W

Boolean. TRUE if an alarm was set for this appointment.

AlarmTime

R/W

Date. The time at which the AlarmProgram is to execute.

AllDay

R/W

Boolean. An appointment that lasts all day, so no start time is necessary. AllDay can be read on any type of appointment. It can be set on draft or personal appointments only.

An AllDay appointment starts at midnight of the first day and ends at midnight of the next day. For example, the properties show up in the Object API StartDate as 23-June-2012 at 12:00:00 a.m. and in the EndDate as 24-June-2012 at 12:00:00 a.m.

Archived

R/W

Boolean. TRUE if this message has been archived.

Autodate

R/O

Boolean. TRUE if this appointment has an auto-date.

AutoDateKey

R/O

String. An ID that can be used to match all occurrences of this appointment. If this appointment is not part of a recurring series, this property returns an error.

AutodateMessages

R/O

MessageList. The list of auto-dated items. This list includes the current appointment.

BusySearchResult

R/O

BusySearchResult. The busy search results for a draft appointment. Returns nothing if StartBusySearch has never been called, or if this is a draft appointment (BoxType = egwDraft).

BusyType

R/W

Enum (TimeBlockConstants). The type of time block this appointment represents.

Categories

R/O

Categories Collection. The collection of Category objects on this Mail, Appointment, Document Reference, Note, Phone Message, Task, or AddressBookEntry.

ChecklistCompleted

R/W

Boolean. TRUE if the item is part of the Checklist folder Messages collection or a Task item AND the item has been marked Completed. FALSE otherwise.

ChecklistCompletedDate

R/W

Date. The date this item was marked completed.

ChecklistDueDate

R/W

Date. The date this item should be Completed. Returns an error if the Message item is not a Task or is not part of the Checklist folder Messages collection.

ChecklistPercentComplete

R/W

Integer. Between 0 and 100 percent, how complete the checklist item is. If this value is set to a number outside the 0 to 100 range, an error is returned. If the value is set to 100, the item will also be marked complete.

ChecklistShowOnCalendarDate

R/W

Date. The date this item should appear on the calendar task list.

CommonMessageID

R/O

String. The ID of the message, regardless of its location. For example, an email will have the same CommonMessageID for both Sent and Received.

DelayedDeliveryDate

R/W

Date. When the Message.Send() method is called, the message is not delivered until the specified Date. This property can be used only on a Draft Message.

Delegated

R/O

Boolean. TRUE if this appointment has been delegated.

DeliveredDate

R/O

Date. The date and time this message item was delivered to the account.

DraftAutoDates

R/O

DraftAutoDates collection. The collection contains additional Dates which the Appointment, Note, or Task is created on.

Duration

R/W

Double. The duration, in days, of the appointment. For example, 0.5 = 12 hours, 1/24 = 1 hour, etc. Gives accuracy to microseconds.

EndDate

R/W

Date. The date and time when the appointment will end.

Forwarded

R/O

Boolean. TRUE if this item has been forwarded to another user. Otherwise, FALSE.

MessageProperty

R/O

String. Based on the MessagePropertiesConstant passed in, a different string is returned.

NotifywhenAccepted

R/W

Enum (NotifyMessageConstants) for more information. Specifies the type of notification to send when this appointment has been accepted.

NotifyWhenDeclined

R/W

Enum (NotifyMessageConstants) for more information. Specifies the type of notification to send when this appointment has been declined.

OnCalendar

R/W

Boolean. TRUE if this appointment should appear on a calendar display.

Personal

R/O

Boolean. TRUE if this appointment is a personal appointment.

PersonalSubject

R/W

String. A text string to be shown by the GroupWise Windows client as the Subject text. This text appears only for the current user. The normal subject or their own Personal Subject text appears for other users.

Place

R/W

String. The location of this appointment.

Replied

R/O

Boolean. TRUE if the item has been replied to. Otherwise, FALSE.

Sharer

R/O

Address. The user who added this message to a shared folder. If this message was not added to a shared folder, this will be the same as the Sender property.

ShowOnChecklist

R/W

Boolean. TRUE if the item is part of the Checklist folder Messages collection. FALSE otherwise.

Size

R/O

Returns the size of the attachments and message body. If there are no attachments, only the size of the message body is returned.

StartDate

R/W

Date. The date and time the appointment will start. For more information about the format of this property, see Remarks.

3.16.2 Methods

Accept([String Comment], [Boolean AllInstances])

Accepts this appointment.

  • Comment is the text you would like to send in reply as you accept the appointment.

  • AllInstances is used for auto-date appointments. If AllInstances is set to TRUE, this method will accept all instances of the auto-dated appointment. Passing a value for AllInstances for an appointment that is not auto-dated is legal but ignored. If AllInstances is omitted, FALSE is assumed.

Appointment Delegate([Boolean AllInstances])

AllInstances is used for auto-date appointments. If AllInstances is set to TRUE, this method will delegate all instances of the auto-dated appointment. Passing a value for AllInstances for an appointment that is not auto-dated is legal but ignored.

BusySearchResult StartBusySearch([Date StartDate], [Long Range])

Starts a busy search on appointment recipients. StartDate is the starting date of the search; the time is ignored. When omitted, the appointment start date is used. Range is the number of days to search (must be greater than or equal to 7). Omitted parameters use the user’s Busy Search preference settings. Any previous BusySearchResult object for this appointment is terminated and a new one created and returned.

Decline([String Comment], [Boolean AllInstances])

Declines this appointment. Comment is the text you would like to send in reply as you decline the appointment. AllInstances is used for auto-date appointments. If AllInstances is set to TRUE, this method will decline all instances of the auto-dated appointment. Passing a value for AllInstances for an appointment that is not auto-dated is legal but ignored. If AllInstances is omitted, FALSE is assumed.

Double GetDateAdjustment(String Timezone)

Returns a time zone adjustment value for the appointment. This adjustment value varies over a range of (-0.5 to 0.5 days). Most appointments return zero for this value. The return value from this method can be added directly to the StartDate and EndDate properties to account for time-zone-neutral appointments.

LocalDelete()

Deletes this message only from the currently connected post office database. No synchronization will take place between the master database and a remote database.

RemoveChecklistDueDate()

Removes the Checklist Due Date from the Message item. Returns an error if the item is not on the Checklist.

RetractAppointment([Boolean vSendCancelMessage])

Requests appointment retraction from recipient mailboxes. The appointment’s BoxType must be egwOutgoing. If the optional variant parameter vSendCancelMessage is set to VARIANT_FALSE, no cancellation message is sent to the recipients. If vSendCancelMessages is set to VARIANT_TRUE or the parameter is missing (that is, the VariantType is set to VT_ERROR or VT_EMPTY), a cancellation message is sent to all recipients.

3.16.3 Remarks

When an Appointment object is refreshed, it recursively refreshes its BusySearchResult object. It also updates the Message objects that are returned by its AutodateMessages property, but it does not recursively refresh the Message objects themselves.

StartDate

If StartDate is changed, EndDate is automatically adjusted to preserve the Duration. If EndDate is changed, Duration is automatically adjusted to preserve the StartDate. If Duration is changed, EndDate is automatically adjusted to preserve the StartDate.

The date is in the same format as Microsoft's Date structure (VT_DATE) and is represented as a double-precision number, where midnight on January 1, 1900 and January 2, 1900 is 2.0 and 3.0, respectively.

For more information on the Date structure, see Data Type Conversions and the VT_DATE description as part of VARIANT and VARIANTARG.

Visual Basic. For the StartDate property, you can use a date similar to the following examples:

10/29/2012 11:30:00 AM
2012/10/29 11:30:00 AM
#2012/10/29 11:30:00 AM#

You can also use military time (24-hour clock) and skip the a.m. and p.m. designation.

C++. For the StartDate property, you can fill a C SYSTEMTIME structure for your desired date. Then call the C SystemTimeToVariantTime function, which takes as input a pointer to your newly created SYSTEMTIME structure. The function returns a pointer to the DATE structure that can be used for the StartDate property.