DOCUMENT:Q161298 15-SEP-1997 [vbwin] TITLE :HOWTO: Extract Appointment Information from Schedule Plus 7.0 PRODUCT :Microsoft Visual Basic for Windows PROD/VER:WINDOWS:5.0 OPER/SYS:WINDOWS KEYWORDS:vb5all vb5howto VBKBCtrl VBKBInt VBKBOLE VBKBStd GnrlVb kbprg ====================================================================== --------------------------------------------------------------------- The information in this article applies to: - Microsoft Visual Basic Professional and Enterprise Editions for Windows, version 5.0 --------------------------------------------------------------------- SUMMARY ======= The OLE Scheduling Library exposes an object model for Microsoft Schedule Plus 7.0 that can be manipulated by the VBA language. This object model allows programmers to gain access to appointment information. This article provides a code sample of how to extract appointment information between two given dates from Schedule Plus. MORE INFORMATION ================ 1. Start a new Standard EXE project. Form1 is added by default. 2. Place a CommandButton on Form1. 3. Add the following code to the General Declarations section of Form1: Option Explicit Private Sub Command1_Click() GetAppointments "06/03/96", "08/03/96" 'dd/mm/yy format End Sub Sub GetAppointments(sStartdate As String, sEndDate As String) Dim objSchdPlus As Object Dim gobjappt As Object Dim objappt As Object Dim objitem As Object Dim obatt As Object Screen.MousePointer = vbHourglass Set objSchdPlus = CreateObject("SchedulePlus.Application") objSchdPlus.Logon Set gobjappt = objSchdPlus.ScheduleSelected Print objSchdPlus.UserName Set objappt = gobjappt.singleappointments Set objitem = objappt.Item() Print objappt.Rows While Not objappt.IsEndOfTable Set objitem = objappt.Item() If CDate(objitem.start) >= _ CDate(Format$(sStartdate, "dd/mm/yy") & " 00:00:00") And _ CDate(objitem.end) _ <= CDate(Format$(sEndDate, "dd/mm/yy") & " 23:59:59") Then Print "Starts " & objitem.start & "---" & "Ends "; Print objitem.end Print "Appointment := " & objitem.Text End If objappt.Skip Wend Screen.MousePointer = vbArrow MsgBox "Done" End Sub 4. Press the F5 key to run the project. When you click on the button, the appointments that fall into the date range specified will be printed on the form. REFERENCES ========== OLE Scheduling is documented in the Microsoft Schedule+ Programmer's Guide found under Microsoft Exchange Server in the BackOffice SDK on the Microsoft Developer Network (MSDN). The Mastering Series for Exchange Development, also available from Microsoft, has extensive Visual Basic code samples and explanations relating to OLE Scheduling. ====================================================================== Keywords : vb5all vb5howto VBKBCtrl VBKBInt VBKBOLE VBKBStd GnrlVb kbprg Technology : kbole Version : WINDOWS:5.0 Platform : WINDOWS Issue type : kbhowto ============================================================================= THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 1997.