GroupWise Appointments: Messages.Find or FindMessages?
Articles and Tips: tip
01 Feb 2002
There are two methods to locate appointments in your GroupWise calendar with the ObjectAPI:
Don't assume that both approaches return the same result set. The term
will return all appointments, while
returns only appointments that have been accepted, and
returns empty results. So you see, the FindMessages() method ignores appointments that haven't been accepted.
Here is some background information on this subject from our GroupWise engineering team (thanks to David):
The Calendar folder is a special folder. The GroupWise client and the ObjectAPI treat the Calendar folder as a Query Folder--reading all Appointments, Tasks, and Notes in the system.
The only items actually stored in the Calendar folder are Accepted Appointments, Personal Appointments, Accepted Tasks, Personal Tasks, Accepted Notes, or Personal Notes. Function call Calendar.Messages.Find accesses the Calendar folders messages collection (running the Query underneath to find all appropriate items), returns that Messages (Query) results, then applies a FIND to the results of the Calendar folder query.
During a FindMessages call, the ObjectAPI reads items that actually exist in the database (not ones that would be found by a Calendar folder query), then applies the filter to those items. In this case, the Calendar query is not run, but every item that claims to belong to the Calendar folder is read, then the filter is applied to any items that are returned.
Accepted Appointments are moved to the Calendar folder, and will be found; however, UnAccepted Appointments still belong to the Mailbox folder, and will not be found.
* Originally published in Novell AppNotes
The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.